@@ -106,16 +106,30 @@ def setup_calc(atoms, settings):
106
106
107
107
)
108
108
elif is_cider and (not is_jax ):
109
- # TODO grid level settings
110
- from ciderpress .dft .ri_cider import setup_cider_calc
111
- import joblib
112
- mlfunc_filename = settings ['cider' ].pop ('mlfunc_filename' )
113
- calc = setup_cider_calc (
114
- mol ,
115
- joblib .load (mlfunc_filename ),
116
- spinpol = settings ['control' ]['spinpol' ],
117
- ** (settings ['cider' ]),
118
- )
109
+ if 'use_new_scf' in settings ['cider' ]:
110
+ use_new = settings ['cider' ].pop ('use_new_scf' )
111
+ else :
112
+ use_new = False
113
+ if use_new :
114
+ from ciderpress .pyscf .dft import make_cider_calc
115
+ calc = dft .UKS (mol ) if settings ['control' ]['spinpol' ] else dft .RKS (mol )
116
+ mlfunc_filename = settings ['cider' ].pop ('mlfunc_filename' )
117
+ calc = make_cider_calc (
118
+ calc ,
119
+ mlfunc_filename ,
120
+ ** (settings ['cider' ])
121
+ )
122
+ else :
123
+ # TODO grid level settings
124
+ from ciderpress .dft .ri_cider import setup_cider_calc
125
+ import joblib
126
+ mlfunc_filename = settings ['cider' ].pop ('mlfunc_filename' )
127
+ calc = setup_cider_calc (
128
+ mol ,
129
+ joblib .load (mlfunc_filename ),
130
+ spinpol = settings ['control' ]['spinpol' ],
131
+ ** (settings ['cider' ]),
132
+ )
119
133
elif (not is_cider ) and is_jax :
120
134
from ciderpress .dft .jax_ks import setup_jax_exx_calc
121
135
calc = setup_jax_exx_calc (
0 commit comments