Ejemplo n.º 1
0
""" elstruct.writer._mrcc2018 parameters
"""
from elstruct import Option
from elstruct import option

MRCC2018_OPTION_EVAL_DCT = {
    option.name(Option.Scf.MAXITER_):
    lambda osp: 'scfmaxit={}'.format(*option.values(osp)),
    option.name(Option.Opt.MAXITER_):
    lambda osp: 'optmaxit'.format(*option.values(osp)),
}
OPTION_NAMES = tuple(sorted(MRCC2018_OPTION_EVAL_DCT.keys()))
Ejemplo n.º 2
0

class MultiReference():
    """ _ """
    CASSCF = 'casscf'
    CASPT2 = 'rs2'
    CASPT2I = 'rs2'
    CASPT2C = 'rs2c'
    MRCI_Q = 'mrci'


OPTION_EVAL_DCT = {
    option.name(elstruct.par.Option.Mol.NOSYMM_):
    'nosym',
    option.name(Option.Scf.MAXITER_):
    lambda osp: 'maxit={}'.format(*option.values(osp)),
    option.name(Option.Scf.DIIS_):
    lambda osp: ('iptyp=diis' if option.values(osp)[0] else 'iptyp=none'),
    option.name(Option.Casscf.OCC_):
    lambda osp: 'occ,{}'.format(*option.values(osp)),
    option.name(Option.Casscf.CLOSED_):
    lambda osp: 'closed,{}'.format(*option.values(osp)),
    option.name(Option.Casscf.WFN_):
    lambda osp: 'wf,{},{},{},{};state,{}'.format(*option.values(osp)),
    option.name(Option.MRCorr.SHIFT_):
    lambda osp: 'shift={}'.format(*option.values(osp)),
    option.name(Option.Opt.MAXITER_):
    lambda osp: 'maxit={}'.format(*option.values(osp)),
    option.name(Option.Corr.ALL_ELEC_):
    lambda osp: '\n core,0',
}
Ejemplo n.º 3
0
from elstruct import Option
from elstruct import option
import elstruct.par


REF_DCT = {
    elstruct.par.Reference.RHF: 'rhf',
    elstruct.par.Reference.UHF: 'uhf',
    elstruct.par.Reference.ROHF: 'rohf'
}


OPTION_EVAL_DCT = {
    option.name(Option.Scf.MAXITER_):
    lambda osp: 'MaxCycle={}'.format(*option.values(osp)),
    option.name(Option.Scf.DIIS_):
    lambda osp: ('DIIS' if option.values(osp)[0] else 'NoDIIS'),
    option.name(Option.Scf.Guess.CORE):
    lambda osp: 'Core',
    option.name(Option.Scf.Guess.HUCKEL):
    lambda osp: 'Mix',
    option.name(Option.Scf.Guess.MIX):
    lambda osp: 'Huckel',
    option.name(Option.Opt.MAXITER_):
    lambda osp: 'MaxCycle={}'.format(*option.values(osp)),
    # don't do this -- it breaks z-matrix reading
    # option.name(Option.Opt.Coord.CARTESIAN):
    # lambda osp: 'Cartesian',
    option.name(Option.Opt.Coord.ZMATRIX):
    lambda osp: 'Z-matrix',
Ejemplo n.º 4
0
""" elstruct.writer._cfour2 parameters
"""

from elstruct import Option
from elstruct import option
from elstruct.par import Reference

REF_DCT = {Reference.RHF: 'rhf', Reference.UHF: 'uhf'}

OPTION_EVAL_DCT = {
    option.name(Option.Scf.MAXITER_):
    lambda osp: 'SCF_MAXCYC={}'.format(*option.values(osp)),
    option.name(Option.Opt.MAXITER_):
    lambda osp: 'GEO_MAXCYC={}'.format(*option.values(osp)),
}