Skip to content

QCSchema

qcmanybody.models.v1.BsseEnum

Bases: str, Enum

Available basis-set superposition error (BSSE) treatments.

qcmanybody.models.v1.ManyBodyKeywords

Bases: ProtoModel

The many-body-specific keywords for user control.

ManyBodyKeywords

key type required description default
schema_name typing.Literal['qcschema_manybodykeywords'] False qcschema_manybodykeywords
schema_version typing.Literal[1] False The version number of schema_name to which this model conforms. 1
bsse_type False Requested BSSE treatments. First in list determines which interaction or total energy/gradient/Hessian returned. []
embedding_charges typing.List[float] False Atom-centered point charges to be used on molecule fragments whose basis sets are not included in the computation. Keys: 1-based index of fragment. Values: list of atom charges for that fragment. At present, QCManyBody will only accept non-None values of this keyword if environment variable QCMANYBODY_EMBEDDING_CHARGES is set. None
return_total_data False When True, returns the total data (energy/gradient/Hessian) of the system, otherwise returns interaction data. Default is False for energies, True for gradients and Hessians. Note that the calculation of counterpoise corrected total energies implies the calculation of the energies of monomers in the monomer basis, hence specifying return_total_data = True may carry out more computations than return_total_data = False. For gradients and Hessians, return_total_data = False is rarely useful. None
levels False Dictionary of different levels of theory for different levels of expansion. Note that the primary method_string is not used when this keyword is given. supersystem computes all higher order n-body effects up to the number of fragments; this higher-order correction uses the nocp basis, regardless of bsse_type. A method fills in for any lower unlisted nbody levels. Note that if both this and max_nbody are provided, they must be consistent. Examples: SUPERSYSTEM definition suspect* {1: 'ccsd(t)', 2: 'mp2', 'supersystem': 'scf'} * {2: 'ccsd(t)/cc-pvdz', 3: 'mp2'} * Now invalid: {1: 2, 2: 'ccsd(t)/cc-pvdz', 3: 'mp2'} None
max_nbody False Maximum number of bodies to include in the many-body treatment. Possible: max_nbody <= nfragments. Default: max_nbody = nfragments. None
supersystem_ie_only False Target the supersystem total/interaction energy (IE) data over the many-body expansion (MBE) analysis, thereby omitting intermediate-body calculations. When False (default), compute each n-body level in the MBE up through max_nbody. When True (only allowed for max_nbody = nfragments ), only compute enough for the overall interaction/total energy: max_nbody-body and 1-body. When True, properties INTERACTION {driver} THROUGH {max_nbody}-BODY will always be available; TOTAL {driver} THROUGH {max_nbody}-BODY will be available depending on return_total_data ; and {max_nbody}-BODY CONTRIBUTION TO {driver} won't be available (except for dimers). This keyword produces no savings for a two-fragment molecule. But for the interaction energy of a three-fragment molecule, for example, 2-body subsystems can be skipped with supersystem_ie_only=True. Do not use with vmfc in bsse_type as it cannot produce savings. False

qcmanybody.models.v1.ManyBodySpecification

Bases: ProtoModel

Combining the what (ManyBodyKeywords) with the how (AtomicSpecification).

convert_v

convert_v(target_version: int) -> Union['qcmanybody.models.v1.ManyBodySpecification', 'qcmanybody.models.v2.ManyBodySpecification']

Convert to instance of particular QCSchema version.

Source code in qcmanybody/models/v1/manybody_input_pydv1.py
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
def convert_v(
    self, target_version: int, /
) -> Union["qcmanybody.models.v1.ManyBodySpecification", "qcmanybody.models.v2.ManyBodySpecification"]:
    """Convert to instance of particular QCSchema version."""
    from qcelemental.models.v1.basemodels import check_convertible_version

    import qcmanybody as qcmb

    if check_convertible_version(target_version, error="ManyBodySpecification") == "self":
        return self

    dself = self.dict()
    if target_version == 2:
        dself.pop("schema_name")
        dself.pop("schema_version")

        dself["keywords"].pop("schema_name")
        dself["keywords"].pop("schema_version")

        try:
            dself["specification"].pop("schema_name")
            dself["specification"].pop("schema_version")
        except KeyError:
            for spec in dself["specification"].values():
                spec.pop("schema_name")
                spec.pop("schema_version")

        self_vN = qcmb.models.v2.ManyBodySpecification(**dself)
    else:
        assert False, target_version

    return self_vN

ManyBodySpecification

key type required description default
schema_name typing.Literal['qcschema_manybodyspecification'] False qcschema_manybodyspecification
schema_version typing.Literal[1] False The version number of schema_name to which this model conforms. 1
keywords True The many-body-specific keywords for user control. None
protocols False Protocols regarding the manipulation of a ManyBody output data. ManyBodyProtocols(component_results=)
driver True The computation driver; i.e., energy, gradient, hessian. None
specification True ??? TODO expand to cbs, fd None
extras typing.Any False Additional information to bundle with the computation. Use for schema development and scratch space. {}

qcmanybody.models.v1.ManyBodyInput

Bases: ProtoModel

Combining the what and how (ManyBodySpecification) with the who (Molecule).

convert_v

convert_v(target_version: int) -> Union['qcmanybody.models.v1.ManyBodyInput', 'qcmanybody.models.v2.ManyBodyInput']

Convert to instance of particular QCSchema version.

Source code in qcmanybody/models/v1/manybody_input_pydv1.py
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
def convert_v(
    self, target_version: int, /
) -> Union["qcmanybody.models.v1.ManyBodyInput", "qcmanybody.models.v2.ManyBodyInput"]:
    """Convert to instance of particular QCSchema version."""
    from qcelemental.models.v1.basemodels import check_convertible_version

    import qcmanybody as qcmb

    if check_convertible_version(target_version, error="ManyBodyInput") == "self":
        return self

    dself = self.dict()
    if target_version == 2:
        dself.pop("schema_name")  # changed in v2
        dself.pop("schema_version")  # changed in v2

        # remove harmless empty extras field that v2 won't accept. if populated, pydantic will catch it.
        if not dself.get("extras", True):
            dself.pop("extras")

        dself["molecule"] = self.molecule.convert_v(target_version)
        dself["specification"] = self.specification.convert_v(target_version)

        self_vN = qcmb.models.v2.ManyBodyInput(**dself)
    else:
        assert False, target_version

    return self_vN

ManyBodyInput

key type required description default
schema_name typing.Literal['qcschema_manybodyinput'] False qcschema_manybodyinput
schema_version typing.Literal[1] False The version number of schema_name to which this model conforms. 1
specification True ??? None
molecule True Target molecule for many-body expansion (MBE) or interaction energy (IE) analysis. None
extras typing.Any False Additional information to bundle with the computation. Use for schema development and scratch space. {}

Note

The properties model is generated dynamically based on a constant MAX_NBODY. To not overload the docs table, this is set to 5, which covers full calculations on tetramers. In practice this isn't a problem for larger clusters because cp_corrected_total_energy_through_12_body, for example, is allowed dynamically for a model instance. Nevertheless, to use a larger ManyBodyKeywords.max_nbody, reset this value outside the interpreter.

python -c "import qcmanybody as qcmb;print(qcmb.models.MAX_NBODY)"
#> 5
export QCMANYBODY_MAX_NBODY=9  # explicitly enumerates octamer properties
python -c "import qcmanybody as qcmb;print(qcmb.models.MAX_NBODY)"
#> 9

qcmanybody.models.v1.ManyBodyResultProperties module-attribute

ManyBodyResultProperties = ProtoModelSkipDefaults

ManyBodyResultProperties

key type required description default
schema_name typing.Literal['qcschema_manybodyproperties'] False qcschema_manybodyproperties
schema_version typing.Literal[1] False The version number of schema_name to which this model conforms. 1
calcinfo_nmc False The number of model chemistries applied to n-body levels of the computation. None
calcinfo_nfr False The number of fragments in the molecule for the computation. None
calcinfo_natom False The number of atoms in the computation. None
calcinfo_nmbe False The number of real/ghost molecule patterns for the computation. None
nuclear_repulsion_energy False The nuclear repulsion energy. None
return_energy False The interaction energy of the requested method: IE or total (depending on return_total_data) with cp/nocp/vmfc treatment (dep. on first of bsse_type). Always available. Identical to :attr:~qcelemental.models.ManyBodyResult.return_result for :attr:~qcelemental.models.AtomicInput.driver\ =\ :attr:~qcelemental.models.DriverEnum.energy computations. None
return_gradient False The interaction gradient of the requested method: IE or total (depending on return_total_data) with cp/nocp/vmfc treatment (dep. on first of bsse_type). Available when driver is g/h. Identical to :attr:~qcelemental.models.ManyBodyResult.return_result for :attr:~qcelemental.models.AtomicInput.driver\ =\ :attr:~qcelemental.models.DriverEnum.gradient computations. None
return_hessian False The interaction Hessian of the requested method: IE or total (depending on return_total_data) with cp/nocp/vmfc treatment (dep. on first of bsse_type). Available when driver is h. Identical to :attr:~qcelemental.models.ManyBodyResult.return_result for :attr:~qcelemental.models.AtomicInput.driver\ =\ :attr:~qcelemental.models.DriverEnum.hessian computations. None
cp_corrected_total_energy_through_1_body False MBE sum of subsystems of 1-body or fewer (cumulative); summed are total energies w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=1. None
cp_corrected_total_energy_through_2_body False MBE sum of subsystems of 2-body or fewer (cumulative); summed are total energies w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=2. None
cp_corrected_total_energy_through_3_body False MBE sum of subsystems of 3-body or fewer (cumulative); summed are total energies w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=3. None
cp_corrected_total_energy_through_4_body False MBE sum of subsystems of 4-body or fewer (cumulative); summed are total energies w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=4. None
cp_corrected_total_energy False Best available total energy with cp treatment: cp_corrected_total_energy_through_{max_nbody}_body. Available when cp in bsse_type & rtd=T. None
cp_corrected_interaction_energy_through_1_body False 1-body total data less 1-body total data for cumulative IE; inputs are total energies with cp treatment. Available when when cp in bsse_type & max_nbody>=1. The 1-body quantity is zero by definition. None
cp_corrected_interaction_energy_through_2_body False 2-body total data less 1-body total data for cumulative IE; inputs are total energies with cp treatment. Available when when cp in bsse_type & max_nbody>=2. The 1-body quantity is zero by definition. None
cp_corrected_interaction_energy_through_3_body False 3-body total data less 1-body total data for cumulative IE; inputs are total energies with cp treatment. Available when when cp in bsse_type & max_nbody>=3. The 1-body quantity is zero by definition. None
cp_corrected_interaction_energy_through_4_body False 4-body total data less 1-body total data for cumulative IE; inputs are total energies with cp treatment. Available when when cp in bsse_type & max_nbody>=4. The 1-body quantity is zero by definition. None
cp_corrected_interaction_energy False Best available interaction energy with cp treatment: cp_corrected_interaction_energy_through_{max_nbody}_body. Available when cp in bsse_type. None
cp_corrected_2_body_contribution_to_energy False 2-body total data less (2-1)-body data for partial IE; inputs are total energies w/ cp treat. Available when cp in bsse_type & max_nbody>=2. None
cp_corrected_3_body_contribution_to_energy False 3-body total data less (3-1)-body data for partial IE; inputs are total energies w/ cp treat. Available when cp in bsse_type & max_nbody>=3. None
cp_corrected_4_body_contribution_to_energy False 4-body total data less (4-1)-body data for partial IE; inputs are total energies w/ cp treat. Available when cp in bsse_type & max_nbody>=4. None
nocp_corrected_total_energy_through_1_body False MBE sum of subsystems of 1-body or fewer (cumulative); summed are total energies without cp treatment. Available when nocp in bsse_type & max_nbody>=1. None
nocp_corrected_total_energy_through_2_body False MBE sum of subsystems of 2-body or fewer (cumulative); summed are total energies without cp treatment. Available when nocp in bsse_type & max_nbody>=2. None
nocp_corrected_total_energy_through_3_body False MBE sum of subsystems of 3-body or fewer (cumulative); summed are total energies without cp treatment. Available when nocp in bsse_type & max_nbody>=3. None
nocp_corrected_total_energy_through_4_body False MBE sum of subsystems of 4-body or fewer (cumulative); summed are total energies without cp treatment. Available when nocp in bsse_type & max_nbody>=4. None
nocp_corrected_total_energy False Best available total energy without cp treatment: nocp_corrected_total_energy_through_{max_nbody}_body. Available when nocp in bsse_type. None
nocp_corrected_interaction_energy_through_1_body False 1-body total data less 1-body total data for cumulative IE; inputs are total energies without cp treatment. Available when when nocp in bsse_type & max_nbody>=1. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_energy_through_2_body False 2-body total data less 1-body total data for cumulative IE; inputs are total energies without cp treatment. Available when when nocp in bsse_type & max_nbody>=2. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_energy_through_3_body False 3-body total data less 1-body total data for cumulative IE; inputs are total energies without cp treatment. Available when when nocp in bsse_type & max_nbody>=3. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_energy_through_4_body False 4-body total data less 1-body total data for cumulative IE; inputs are total energies without cp treatment. Available when when nocp in bsse_type & max_nbody>=4. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_energy False Best available interaction energy without cp treatment: nocp_corrected_interaction_energy_through_{max_nbody}_body. Available when nocp in bsse_type. None
nocp_corrected_2_body_contribution_to_energy False 2-body total data less (2-1)-body data for partial IE; inputs are total energies w/o cp treatment. Available when nocp in bsse_type & max_nbody>=2. None
nocp_corrected_3_body_contribution_to_energy False 3-body total data less (3-1)-body data for partial IE; inputs are total energies w/o cp treatment. Available when nocp in bsse_type & max_nbody>=3. None
nocp_corrected_4_body_contribution_to_energy False 4-body total data less (4-1)-body data for partial IE; inputs are total energies w/o cp treatment. Available when nocp in bsse_type & max_nbody>=4. None
vmfc_corrected_total_energy_through_1_body False MBE sum of subsystems of 1-body or fewer (cumulative); summed are total energies with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=1. None
vmfc_corrected_total_energy_through_2_body False MBE sum of subsystems of 2-body or fewer (cumulative); summed are total energies with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=2. None
vmfc_corrected_total_energy_through_3_body False MBE sum of subsystems of 3-body or fewer (cumulative); summed are total energies with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=3. None
vmfc_corrected_total_energy_through_4_body False MBE sum of subsystems of 4-body or fewer (cumulative); summed are total energies with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=4. None
vmfc_corrected_total_energy False Best available total energy with vmfc treatment: vmfc_corrected_total_energy_through_{max_nbody}_body. Available when vmfc in bsse_type. None
vmfc_corrected_interaction_energy_through_1_body False 1-body total data less 1-body total data for cumulative IE; inputs are total energies w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=1. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_energy_through_2_body False 2-body total data less 1-body total data for cumulative IE; inputs are total energies w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=2. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_energy_through_3_body False 3-body total data less 1-body total data for cumulative IE; inputs are total energies w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=3. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_energy_through_4_body False 4-body total data less 1-body total data for cumulative IE; inputs are total energies w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=4. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_energy False Best available interaction energy with vmfc treatment: vmfc_corrected_interaction_energy_through_{max_nbody}_body. Available when vmfc in bsse_type. None
vmfc_corrected_2_body_contribution_to_energy False 2-body total data less (2-1)-body total data for partial IE; inputs are total energies w/ vmfc treatment. Available when vmfc in bsse_type & max_nbody>=2. None
vmfc_corrected_3_body_contribution_to_energy False 3-body total data less (3-1)-body total data for partial IE; inputs are total energies w/ vmfc treatment. Available when vmfc in bsse_type & max_nbody>=3. None
vmfc_corrected_4_body_contribution_to_energy False 4-body total data less (4-1)-body total data for partial IE; inputs are total energies w/ vmfc treatment. Available when vmfc in bsse_type & max_nbody>=4. None
cp_corrected_total_gradient_through_1_body False MBE sum of subsystems of 1-body or fewer (cumulative); summed are total gradients w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=1 & driver is g/h. None
cp_corrected_total_gradient_through_2_body False MBE sum of subsystems of 2-body or fewer (cumulative); summed are total gradients w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=2 & driver is g/h. None
cp_corrected_total_gradient_through_3_body False MBE sum of subsystems of 3-body or fewer (cumulative); summed are total gradients w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=3 & driver is g/h. None
cp_corrected_total_gradient_through_4_body False MBE sum of subsystems of 4-body or fewer (cumulative); summed are total gradients w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=4 & driver is g/h. None
cp_corrected_total_gradient False Best available total gradient with cp treatment: cp_corrected_total_gradient_through_{max_nbody}_body. Available when cp in bsse_type & rtd=T & driver is g/h. None
cp_corrected_interaction_gradient_through_1_body False 1-body total data less 1-body total data for cumulative IE; inputs are total gradients with cp treatment. Available when when cp in bsse_type & max_nbody>=1 & driver is g/h. The 1-body quantity is zero by definition. None
cp_corrected_interaction_gradient_through_2_body False 2-body total data less 1-body total data for cumulative IE; inputs are total gradients with cp treatment. Available when when cp in bsse_type & max_nbody>=2 & driver is g/h. The 1-body quantity is zero by definition. None
cp_corrected_interaction_gradient_through_3_body False 3-body total data less 1-body total data for cumulative IE; inputs are total gradients with cp treatment. Available when when cp in bsse_type & max_nbody>=3 & driver is g/h. The 1-body quantity is zero by definition. None
cp_corrected_interaction_gradient_through_4_body False 4-body total data less 1-body total data for cumulative IE; inputs are total gradients with cp treatment. Available when when cp in bsse_type & max_nbody>=4 & driver is g/h. The 1-body quantity is zero by definition. None
cp_corrected_interaction_gradient False Best available interaction gradient with cp treatment: cp_corrected_interaction_gradient_through_{max_nbody}_body. Available when cp in bsse_type & driver is g/h. None
cp_corrected_2_body_contribution_to_gradient False 2-body total data less (2-1)-body data for partial IE; inputs are total gradients w/ cp treat. Available when cp in bsse_type & max_nbody>=2 & driver is g/h. None
cp_corrected_3_body_contribution_to_gradient False 3-body total data less (3-1)-body data for partial IE; inputs are total gradients w/ cp treat. Available when cp in bsse_type & max_nbody>=3 & driver is g/h. None
cp_corrected_4_body_contribution_to_gradient False 4-body total data less (4-1)-body data for partial IE; inputs are total gradients w/ cp treat. Available when cp in bsse_type & max_nbody>=4 & driver is g/h. None
nocp_corrected_total_gradient_through_1_body False MBE sum of subsystems of 1-body or fewer (cumulative); summed are total gradients without cp treatment. Available when nocp in bsse_type & max_nbody>=1 & driver is g/h. None
nocp_corrected_total_gradient_through_2_body False MBE sum of subsystems of 2-body or fewer (cumulative); summed are total gradients without cp treatment. Available when nocp in bsse_type & max_nbody>=2 & driver is g/h. None
nocp_corrected_total_gradient_through_3_body False MBE sum of subsystems of 3-body or fewer (cumulative); summed are total gradients without cp treatment. Available when nocp in bsse_type & max_nbody>=3 & driver is g/h. None
nocp_corrected_total_gradient_through_4_body False MBE sum of subsystems of 4-body or fewer (cumulative); summed are total gradients without cp treatment. Available when nocp in bsse_type & max_nbody>=4 & driver is g/h. None
nocp_corrected_total_gradient False Best available total gradient without cp treatment: nocp_corrected_total_gradient_through_{max_nbody}_body. Available when nocp in bsse_type & driver is g/h. None
nocp_corrected_interaction_gradient_through_1_body False 1-body total data less 1-body total data for cumulative IE; inputs are total gradients without cp treatment. Available when when nocp in bsse_type & max_nbody>=1 & driver is g/h. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_gradient_through_2_body False 2-body total data less 1-body total data for cumulative IE; inputs are total gradients without cp treatment. Available when when nocp in bsse_type & max_nbody>=2 & driver is g/h. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_gradient_through_3_body False 3-body total data less 1-body total data for cumulative IE; inputs are total gradients without cp treatment. Available when when nocp in bsse_type & max_nbody>=3 & driver is g/h. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_gradient_through_4_body False 4-body total data less 1-body total data for cumulative IE; inputs are total gradients without cp treatment. Available when when nocp in bsse_type & max_nbody>=4 & driver is g/h. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_gradient False Best available interaction gradient without cp treatment: nocp_corrected_interaction_gradient_through_{max_nbody}_body. Available when nocp in bsse_type & driver is g/h. None
nocp_corrected_2_body_contribution_to_gradient False 2-body total data less (2-1)-body data for partial IE; inputs are total gradients w/o cp treatment. Available when nocp in bsse_type & max_nbody>=2 & driver is g/h. None
nocp_corrected_3_body_contribution_to_gradient False 3-body total data less (3-1)-body data for partial IE; inputs are total gradients w/o cp treatment. Available when nocp in bsse_type & max_nbody>=3 & driver is g/h. None
nocp_corrected_4_body_contribution_to_gradient False 4-body total data less (4-1)-body data for partial IE; inputs are total gradients w/o cp treatment. Available when nocp in bsse_type & max_nbody>=4 & driver is g/h. None
vmfc_corrected_total_gradient_through_1_body False MBE sum of subsystems of 1-body or fewer (cumulative); summed are total gradients with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=1 & driver is g/h. None
vmfc_corrected_total_gradient_through_2_body False MBE sum of subsystems of 2-body or fewer (cumulative); summed are total gradients with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=2 & driver is g/h. None
vmfc_corrected_total_gradient_through_3_body False MBE sum of subsystems of 3-body or fewer (cumulative); summed are total gradients with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=3 & driver is g/h. None
vmfc_corrected_total_gradient_through_4_body False MBE sum of subsystems of 4-body or fewer (cumulative); summed are total gradients with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=4 & driver is g/h. None
vmfc_corrected_total_gradient False Best available total gradient with vmfc treatment: vmfc_corrected_total_gradient_through_{max_nbody}_body. Available when vmfc in bsse_type & driver is g/h. None
vmfc_corrected_interaction_gradient_through_1_body False 1-body total data less 1-body total data for cumulative IE; inputs are total gradients w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=1 & driver is g/h. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_gradient_through_2_body False 2-body total data less 1-body total data for cumulative IE; inputs are total gradients w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=2 & driver is g/h. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_gradient_through_3_body False 3-body total data less 1-body total data for cumulative IE; inputs are total gradients w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=3 & driver is g/h. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_gradient_through_4_body False 4-body total data less 1-body total data for cumulative IE; inputs are total gradients w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=4 & driver is g/h. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_gradient False Best available interaction gradient with vmfc treatment: vmfc_corrected_interaction_gradient_through_{max_nbody}_body. Available when vmfc in bsse_type & driver is g/h. None
vmfc_corrected_2_body_contribution_to_gradient False 2-body total data less (2-1)-body total data for partial IE; inputs are total gradients w/ vmfc treatment. Available when vmfc in bsse_type & max_nbody>=2 & driver is g/h. None
vmfc_corrected_3_body_contribution_to_gradient False 3-body total data less (3-1)-body total data for partial IE; inputs are total gradients w/ vmfc treatment. Available when vmfc in bsse_type & max_nbody>=3 & driver is g/h. None
vmfc_corrected_4_body_contribution_to_gradient False 4-body total data less (4-1)-body total data for partial IE; inputs are total gradients w/ vmfc treatment. Available when vmfc in bsse_type & max_nbody>=4 & driver is g/h. None
cp_corrected_total_hessian_through_1_body False MBE sum of subsystems of 1-body or fewer (cumulative); summed are total Hessians w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=1 & driver is h. None
cp_corrected_total_hessian_through_2_body False MBE sum of subsystems of 2-body or fewer (cumulative); summed are total Hessians w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=2 & driver is h. None
cp_corrected_total_hessian_through_3_body False MBE sum of subsystems of 3-body or fewer (cumulative); summed are total Hessians w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=3 & driver is h. None
cp_corrected_total_hessian_through_4_body False MBE sum of subsystems of 4-body or fewer (cumulative); summed are total Hessians w/ cp treatment. Available when cp in bsse_type & rtd=T & max_nbody>=4 & driver is h. None
cp_corrected_total_hessian False Best available total Hessian with cp treatment: cp_corrected_total_hessian_through_{max_nbody}_body. Available when cp in bsse_type & rtd=T & driver is h. None
cp_corrected_interaction_hessian_through_1_body False 1-body total data less 1-body total data for cumulative IE; inputs are total Hessians with cp treatment. Available when when cp in bsse_type & max_nbody>=1 & driver is h. The 1-body quantity is zero by definition. None
cp_corrected_interaction_hessian_through_2_body False 2-body total data less 1-body total data for cumulative IE; inputs are total Hessians with cp treatment. Available when when cp in bsse_type & max_nbody>=2 & driver is h. The 1-body quantity is zero by definition. None
cp_corrected_interaction_hessian_through_3_body False 3-body total data less 1-body total data for cumulative IE; inputs are total Hessians with cp treatment. Available when when cp in bsse_type & max_nbody>=3 & driver is h. The 1-body quantity is zero by definition. None
cp_corrected_interaction_hessian_through_4_body False 4-body total data less 1-body total data for cumulative IE; inputs are total Hessians with cp treatment. Available when when cp in bsse_type & max_nbody>=4 & driver is h. The 1-body quantity is zero by definition. None
cp_corrected_interaction_hessian False Best available interaction Hessian with cp treatment: cp_corrected_interaction_hessian_through_{max_nbody}_body. Available when cp in bsse_type & driver is h. None
cp_corrected_2_body_contribution_to_hessian False 2-body total data less (2-1)-body data for partial IE; inputs are total Hessians w/ cp treat. Available when cp in bsse_type & max_nbody>=2 & driver is h. None
cp_corrected_3_body_contribution_to_hessian False 3-body total data less (3-1)-body data for partial IE; inputs are total Hessians w/ cp treat. Available when cp in bsse_type & max_nbody>=3 & driver is h. None
cp_corrected_4_body_contribution_to_hessian False 4-body total data less (4-1)-body data for partial IE; inputs are total Hessians w/ cp treat. Available when cp in bsse_type & max_nbody>=4 & driver is h. None
nocp_corrected_total_hessian_through_1_body False MBE sum of subsystems of 1-body or fewer (cumulative); summed are total Hessians without cp treatment. Available when nocp in bsse_type & max_nbody>=1 & driver is h. None
nocp_corrected_total_hessian_through_2_body False MBE sum of subsystems of 2-body or fewer (cumulative); summed are total Hessians without cp treatment. Available when nocp in bsse_type & max_nbody>=2 & driver is h. None
nocp_corrected_total_hessian_through_3_body False MBE sum of subsystems of 3-body or fewer (cumulative); summed are total Hessians without cp treatment. Available when nocp in bsse_type & max_nbody>=3 & driver is h. None
nocp_corrected_total_hessian_through_4_body False MBE sum of subsystems of 4-body or fewer (cumulative); summed are total Hessians without cp treatment. Available when nocp in bsse_type & max_nbody>=4 & driver is h. None
nocp_corrected_total_hessian False Best available total Hessian without cp treatment: nocp_corrected_total_hessian_through_{max_nbody}_body. Available when nocp in bsse_type & driver is h. None
nocp_corrected_interaction_hessian_through_1_body False 1-body total data less 1-body total data for cumulative IE; inputs are total Hessians without cp treatment. Available when when nocp in bsse_type & max_nbody>=1 & driver is h. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_hessian_through_2_body False 2-body total data less 1-body total data for cumulative IE; inputs are total Hessians without cp treatment. Available when when nocp in bsse_type & max_nbody>=2 & driver is h. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_hessian_through_3_body False 3-body total data less 1-body total data for cumulative IE; inputs are total Hessians without cp treatment. Available when when nocp in bsse_type & max_nbody>=3 & driver is h. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_hessian_through_4_body False 4-body total data less 1-body total data for cumulative IE; inputs are total Hessians without cp treatment. Available when when nocp in bsse_type & max_nbody>=4 & driver is h. The 1-body quantity is zero by definition. None
nocp_corrected_interaction_hessian False Best available interaction Hessian without cp treatment: nocp_corrected_interaction_hessian_through_{max_nbody}_body. Available when nocp in bsse_type & driver is h. None
nocp_corrected_2_body_contribution_to_hessian False 2-body total data less (2-1)-body data for partial IE; inputs are total Hessians w/o cp treatment. Available when nocp in bsse_type & max_nbody>=2 & driver is h. None
nocp_corrected_3_body_contribution_to_hessian False 3-body total data less (3-1)-body data for partial IE; inputs are total Hessians w/o cp treatment. Available when nocp in bsse_type & max_nbody>=3 & driver is h. None
nocp_corrected_4_body_contribution_to_hessian False 4-body total data less (4-1)-body data for partial IE; inputs are total Hessians w/o cp treatment. Available when nocp in bsse_type & max_nbody>=4 & driver is h. None
vmfc_corrected_total_hessian_through_1_body False MBE sum of subsystems of 1-body or fewer (cumulative); summed are total Hessians with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=1 & driver is h. None
vmfc_corrected_total_hessian_through_2_body False MBE sum of subsystems of 2-body or fewer (cumulative); summed are total Hessians with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=2 & driver is h. None
vmfc_corrected_total_hessian_through_3_body False MBE sum of subsystems of 3-body or fewer (cumulative); summed are total Hessians with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=3 & driver is h. None
vmfc_corrected_total_hessian_through_4_body False MBE sum of subsystems of 4-body or fewer (cumulative); summed are total Hessians with vmfc treatment. Available when vmfc in bsse_type & max_nbody>=4 & driver is h. None
vmfc_corrected_total_hessian False Best available total Hessian with vmfc treatment: vmfc_corrected_total_hessian_through_{max_nbody}_body. Available when vmfc in bsse_type & driver is h. None
vmfc_corrected_interaction_hessian_through_1_body False 1-body total data less 1-body total data for cumulative IE; inputs are total Hessians w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=1 & driver is h. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_hessian_through_2_body False 2-body total data less 1-body total data for cumulative IE; inputs are total Hessians w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=2 & driver is h. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_hessian_through_3_body False 3-body total data less 1-body total data for cumulative IE; inputs are total Hessians w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=3 & driver is h. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_hessian_through_4_body False 4-body total data less 1-body total data for cumulative IE; inputs are total Hessians w/ vmfc treatment. Available when when vmfc in bsse_type & max_nbody>=4 & driver is h. The 1-body quantity is zero by definition. None
vmfc_corrected_interaction_hessian False Best available interaction Hessian with vmfc treatment: vmfc_corrected_interaction_hessian_through_{max_nbody}_body. Available when vmfc in bsse_type & driver is h. None
vmfc_corrected_2_body_contribution_to_hessian False 2-body total data less (2-1)-body total data for partial IE; inputs are total Hessians w/ vmfc treatment. Available when vmfc in bsse_type & max_nbody>=2 & driver is h. None
vmfc_corrected_3_body_contribution_to_hessian False 3-body total data less (3-1)-body total data for partial IE; inputs are total Hessians w/ vmfc treatment. Available when vmfc in bsse_type & max_nbody>=3 & driver is h. None
vmfc_corrected_4_body_contribution_to_hessian False 4-body total data less (4-1)-body total data for partial IE; inputs are total Hessians w/ vmfc treatment. Available when vmfc in bsse_type & max_nbody>=4 & driver is h. None

qcmanybody.models.v1.ManyBodyResult

Bases: SuccessfulResultBase

convert_v

convert_v(target_version: int) -> Union['qcmanybody.models.v1.ManyBodyResult', 'qcmanybody.models.v2.ManyBodyResult']

Convert to instance of particular QCSchema version.

Parameters:

Name Type Description Default
target_version int

The version to convert to.

required

Returns:

Type Description
ManyBodyResult

Returns self (not a copy) if target_version already satisfied. Returns a new ManyBodyResult of target_version otherwise.

Source code in qcmanybody/models/v1/manybody_output_pydv1.py
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
def convert_v(
    self,
    target_version: int,
) -> Union["qcmanybody.models.v1.ManyBodyResult", "qcmanybody.models.v2.ManyBodyResult"]:
    """Convert to instance of particular QCSchema version.

    Parameters
    ----------
    target_version
        The version to convert to.

    Returns
    -------
    ManyBodyResult
        Returns self (not a copy) if ``target_version`` already satisfied.
        Returns a new ManyBodyResult of ``target_version`` otherwise.

    """
    from qcelemental.models.v1.basemodels import check_convertible_version

    import qcmanybody as qcmb

    if check_convertible_version(target_version, error="ManyBodyResult") == "self":
        return self

    dself = self.dict()
    if target_version == 2:
        dself.pop("schema_name")  # changed in v2
        dself.pop("schema_version")  # changed in v2

        # for input_data, work from model, not dict, to use convert_v
        dself["input_data"] = self.input_data.convert_v(target_version).model_dump()

        dself["molecule"] = self.input_data.molecule.convert_v(target_version)

        dself["cluster_properties"] = dself.pop("component_properties")
        dself["cluster_results"] = {
            k: atres.convert_v(target_version) for k, atres in self.component_results.items()
        }
        dself.pop("component_results")

        self_vN = qcmb.models.v2.ManyBodyResult(**dself)
    else:
        assert False, target_version

    return self_vN

ManyBodyResult

key type required description default
input_data True None
success True A boolean indicator that the operation succeeded or failed. Allows programmatic assessment of all results regardless of if they failed or succeeded by checking result.success. None
stdout False The primary logging output of the program, whether natively standard output or a file. Presence vs. absence (or null-ness?) configurable by protocol. None
stderr False The standard error of the program execution. None
schema_name typing.Literal['qcschema_manybodyresult'] False qcschema_manybodyresult
schema_version typing.Literal[1] False The version number of schema_name to which this model conforms. 1
id False The optional ID for the object. None
extras typing.Any False Additional information to bundle with the object. Use for schema development and scratch space. {}
provenance True Provenance information. None
properties True None None
component_properties True The key results for each subsystem species computed. Keys contain modelchem, real and ghost information (e.g., '["(auto)", [2], [1, 2, 3]]'). Values are total e/g/H/property results. Array values, if present, are sized and shaped for the full supersystem. None
component_results False Detailed results {}
return_result typing.Union[float, qcelemental.models.types.Array, typing.Dict[str, typing.Any]] True The primary return specified by the :attr:~qcelemental.models.AtomicInput.driver field. Scalar if energy; array if gradient or hessian; dictionary with property keys if properties. None