Package: ccinput
Computational Chemistry Input Generatorccinputis an application to generate input files for computational chemistry software.Example usage:$ ccinput gaussian opt M062X -bs def2tzvp -f ethanol.xyz -n 8 --mem 32G
%chk=calc.chk
%nproc=8
%mem=32000MB
#p opt M062X/Def2TZVP

File created by ccinput

0 1
C   -1.31970000  -0.64380000   0.00000000
H   -0.96310000  -1.65260000   0.00000000
H   -0.96310000  -0.13940000  -0.87370000
H   -2.38970000  -0.64380000   0.00000000
C   -0.80640000   0.08220000   1.25740000
H   -1.16150000   1.09160000   1.25640000
H   -1.16470000  -0.42110000   2.13110000
O    0.62360000   0.07990000   1.25870000
H    0.94410000   0.53240000   2.04240000

$ ccinput orca sp DLPNO-CCSDT -bs cc-pVTZ -f *.xyz -o .inp -n 32 --mem 250GB --parse_name
*** No C auxiliary basis set specified, using cc-pVTZ ***
*** No C auxiliary basis set specified, using cc-pVTZ ***
*** No C auxiliary basis set specified, using cc-pVTZ ***
*** No C auxiliary basis set specified, using cc-pVTZ ***
Input file written to carbo_cation.inp
Input file written to CH4.inp
Input file written to ethanol.inp
Input file written to H2.inp

$ cat H2.inp
!SP DLPNO-CCSD(T) cc-pVTZ cc-pVTZ/C
*xyz 0 1
H   -1.43860000  -0.26820000   0.00000000
H   -2.03860000  -0.26820000   0.00000000
*
%MaxCore 7812
%pal
nprocs 32
end

$ cat carbo_cation.inp
!SP DLPNO-CCSD(T) cc-pVTZ cc-pVTZ/C
*xyz 1 1
C   -2.90770000   1.66310000   0.00000000
H   -2.55100000   2.16750000   0.87370000
H   -3.97770000   1.66310000   0.00000000
H   -2.55100000   2.16750000  -0.87370000
*
%MaxCore 7812
%pal
nprocs 32
endccinputcan also be used as python library:>>> from ccinput.wrapper import gen_input
>>> inp = gen_input(software="orca", type="ts", method="PBEh-3c", file="ethanol.xyz", nproc=16, solvent="ethanol", solvation_model="SMD")
*** No solvation radii specified; using default radii ***
>>> print(inp)
!OPTTS PBEh-3c
*xyz 0 1
C   -1.31970000  -0.64380000   0.00000000
H   -0.96310000  -1.65260000   0.00000000
H   -0.96310000  -0.13940000  -0.87370000
H   -2.38970000  -0.64380000   0.00000000
C   -0.80640000   0.08220000   1.25740000
H   -1.16150000   1.09160000   1.25640000
H   -1.16470000  -0.42110000   2.13110000
O    0.62360000   0.07990000   1.25870000
H    0.94410000   0.53240000   2.04240000
*
%pal
nprocs 16
end
%cpcm
smd true
SMDsolvent "ethanol"
end
>>>InstallationFrom PyPIpip install ccinputFrom GithubYou can install the bleeding-edge version ofccinputfrom Github:pip install git+https://github.com/cyllab/ccinputUsageccinputsupports a wide range of options, including different solvation radii, density fitting and multiple basis sets. As of now, Gaussian 16, ORCA 5 and xtb are supported, and more packages will be added in the future.From the command lineSimply use theccinputcommand with the desired parameters:usage: ccinput [-h] [--basis_set BASIS_SET] [--solvent SOLVENT] [--solvation_model SOLVATION_MODEL] 
               [--solvation_radii SOLVATION_RADII] [--custom_solvation_radii CUSTOM_SOLVATION_RADII] 
               [--specifications SPECIFICATIONS] [--density_fitting DENSITY_FITTING] [--custom_basis_sets CUSTOM_BASIS_SETS] 
               [--xyz XYZ] [--file FILE [FILE ...]] [--output OUTPUT] [--constraints CONSTRAINTS] [--freeze ATOM [ATOM ...]] 
               [--scan ATOM [ATOM ...]] [--from FROM] [--to TO] [--nsteps NSTEPS] [--step STEP] [--nproc NPROC] [--mem MEM] 
               [--charge CHARGE] [--mult MULT] [--parse_name] [--trust_me] [--d3 | --d3bj] [--name NAME] 
               [--aux_name AUX_NAME] [--header HEADER] [--save SAVE] [--preset [PRESET]] [--driver {none,ORCA,pysis}] 
               [--version] [--fragments FRAGMENTS]
               [software] [type] [method]More detailed information about each option can be obtained with theccinput -hcommand.As Python libraryThe functiongen_inputreturns input files as a single strings with the correct whitespace.>>> from ccinput.wrapper import gen_input
>>> inp = gen_input(...)The input can also be directly written to a file usingwrite_input.>>> from ccinput.wrapper import write_input
>>> write_input(filename, ...)See thedocumentationfor all options.Contributors@RaphaelRobidas: xtb, Gaussian, ORCA and Pysisyphus support@zarkoivkovicc: NWChem support and Counterpoise calculation in Gaussian@lauragranmar: Basic Psi4 support@berquist: Basic QChem supportContributingWe welcome all contributions to the project. This includes:Support for new packages (even if rudimentary)Support for new features of supported packagesCorrection or improvement of static data (like DFT functionals or basis sets)Planned tasks are listed in theroadmap. This can be a good place to start when looking to contribute, although do not limit yourself to what is listed there. The contribution guidelines are detailed in CONTRIBUTING.md.