Part 1:
basis = BasisSet(
[Basis(def2-svp, ['all', '!Ru']),
Basis('sdd', 'tm')],
[ECP("sdd", 'tm')])
for Gaussian files gives,
C H N O 0
6-31g*
****
Ru 0
sdd
****
Ru 0
sdd
and for ORCA files gives,
%basis
newGTO Ru "sdd" end
newECP Ru "sdd" end
end
This works for the Gaussian job, but ORCA will error out with Error: Pure ECPs not allowed in GTO definition
The ORCA job will work with
! b3lyp 6-31G*
%basis
newECP Ru "sdd" end
newGTO Ru "def2-svp" end
end
or with
! b3lyp def2-svp
%basis
newECP Ru "sdd" end
end
Part 2
basis = BasisSet(
[Basis(def2-svp, AnyNonTransitionMetal),
Basis('lanl2dz', 'tm')],
[ECP("lanl2dz", 'tm')])
gives an error
File ~/anaconda3/envs/python/lib/python3.10/site-packages/AaronTools/theory/basis.py:149, in Basis.__init__(self, name, elements, aux_type, user_defined, oniom_layer, atoms)
146 ele = ele.lstrip("!")
147 not_any = True
--> 149 if ele.lower() == "all":
150 if not_any:
151 not_anys.append(AnyTransitionMetal())
AttributeError: type object 'AnyNonTransitionMetal' has no attribute 'lower'
The same problem arrises for AnyTransitionMetal
Part 3 (not important to me, but thought it would be worth reporting)
basis = BasisSet(
[Basis(def2-svp, ['all', '!Ru']),
Basis('lanl2dz', 'tm')],
[ECP("lanl2dz", 'tm')])
for Gaussian files gives,
C H N O 0
6-31g*
****
Ru 0
lanl2dz
****
Ru 0
lanl2dz
and the orca file gives
%basis
newGTO Ru "lanl2dz" end
newECP Ru "lanl2dz" end
end
This works for the Gaussian file, but fails for ORCA with Unknown ECP requested! Please consult the manual for available ECPs
.
The ORCA job will run with,
%basis
newGTO Ru "lanl2dz" end
newECP Ru "HayWadt" end
end