Open
Description
For ORCA inputs using "Gaussian's B3LYP", automatically include "NoCosx" keyword to more closely match Gaussian results (ORCA uses RIJCOSX by default).
Similarly, add option to do "ORCA's 6-31G*" that requests Gaussian use 6-31G(d) with 5d/7f rather than the default 6d/10f, and similar for other Pople-style basis sets.
Metadata
Metadata
Assignees
Labels
Type
Projects
Milestone
Relationships
Development
No branches or pull requests
Activity
ajs99778 commentedon Feb 26, 2023
The B3LYP one should be straightforward. The
Method.get_orca()
will basically just have to be changed to return a dictionary like what we do with xtb, andTheory.get_orca_X()
will need to be changed accordingly.For the basis set, maybe it would be better/more general to just make an option for pure vs Cartesian (possibly for individual shells). Of course, we would throw an error if you request Cartesian for ORCA and things like that.
ajs99778 commentedon Feb 27, 2023
the method half of this is done
swheele2 commentedon Feb 27, 2023
Thanks Tony.
ajs99778 commentedon Mar 13, 2023
I've added
angular_momentum_type
toBasisSet
. It should be either "pure" or "cartesian" to invoke the relevant keywords. The default is to not specify anything. There is no option for this on the makeInput cls at the moment.I don't think it's worth doing pure/cartesian by angular momentum type, which I suggested. Q-Chem and Gaussian allow it, but it seems pretty niche to want something like pure G shells but Cartesian everywhere D, F, and H. At that point, the users might want to learn how to set those things themselves.
swheele2 commentedon Mar 13, 2023
joegair commentedon Mar 30, 2023
I see the updates to the basis.py to specify the angular momentum type, but it is not working as I expected. I'm not I'm not seeing 5D 7F in the route card when I use the following code. (I'm also not seeing the warning when I try to use "cartesian" in ORCA.
The resulting route card is
#n m062x/6-311+G** SP Integral=(grid=UltraFine) scrf=(SMD,solvent=water)
ajs99778 commentedon Mar 30, 2023
This is a bug. When you create a
Theory
, it will create a copy of theBasisSet
. When that happens, theangular_momentum_type
reverts to the default (do not specify). Currently, you need to doTo get the warning after this bug is patched, you will to include
return_warnings=True
ingeom.write
ajs99778 commentedon Mar 30, 2023
this should be fixed now
joegair commentedon Mar 31, 2023
Thank you! Everything is working as expected now.
joegair commentedon Mar 31, 2023
For what it is worth, I would prefer to have warnings on as the default. The warnings are a really nice feature and I didn't realize they were available based on the documentation alone.