Пример #1
0
        total_free_energy.thermodynamic_state = ProtocolPath(
            "thermodynamic_state", "global")

        calculation_schema.workflow_schema = WorkflowSchema()

        calculation_schema.workflow_schema.protocol_schemas = [
            *(protocol.schema for protocol in attach_pull_protocols),
            *(protocol.schema for protocol in release_protocols),
            symmetry_correction.schema,
            orientation_free_energy.schema,
            total_free_energy.schema,
        ]
        calculation_schema.workflow_schema.protocol_replicators = [
            orientation_replicator,
            *attach_pull_replicators,
            release_replicator,
        ]

        # Define where the final value comes from.
        calculation_schema.workflow_schema.final_value_source = ProtocolPath(
            "result", total_free_energy.id)

        return calculation_schema


register_calculation_schema(
    HostGuestBindingAffinity,
    SimulationLayer,
    HostGuestBindingAffinity.default_paprika_schema,
)
Пример #2
0
                                                     total_iterations.id)

        conditional_group.add_protocols(total_iterations, run_yank)

        # Define the full workflow schema.
        schema = WorkflowSchema()

        schema.protocol_schemas = [
            build_full_coordinates.schema,
            assign_full_parameters.schema,
            energy_minimisation.schema,
            equilibration_simulation.schema,
            filter_solvent.schema,
            filter_solute.schema,
            build_vacuum_coordinates.schema,
            assign_vacuum_parameters.schema,
            conditional_group.schema,
        ]

        schema.final_value_source = ProtocolPath("estimated_free_energy",
                                                 conditional_group.id,
                                                 run_yank.id)

        calculation_schema.workflow_schema = schema
        return calculation_schema


# Register the properties via the plugin system.
register_calculation_schema(SolvationFreeEnergy, SimulationLayer,
                            SolvationFreeEnergy.default_simulation_schema)
Пример #3
0
        schema.protocol_replicators = [
            full_data_replicator,
            component_replicator,
            component_data_replicator,
            gradient_replicator,
        ]

        schema.gradients_sources = [ProtocolPath("result", combine_gradients.id)]
        schema.final_value_source = ProtocolPath("result", calculate_excess_volume.id)

        calculation_schema.workflow_schema = schema
        return calculation_schema


# Register the properties via the plugin system.
register_calculation_schema(Density, SimulationLayer, Density.default_simulation_schema)
register_calculation_schema(
    Density, ReweightingLayer, Density.default_reweighting_schema
)
register_calculation_schema(
    ExcessMolarVolume,
    SimulationLayer,
    ExcessMolarVolume.default_simulation_schema,
)
register_calculation_schema(
    ExcessMolarVolume,
    ReweightingLayer,
    ExcessMolarVolume.default_reweighting_schema,
)
Пример #4
0
            *(x.schema for x in gas_protocols if x is not None),
            divide_by_liquid_molecules.schema,
            energy_of_vaporization.schema,
            ideal_volume.schema,
            enthalpy_of_vaporization.schema,
        ]
        schema.protocol_replicators = [liquid_replicator, gas_replicator]
        schema.final_value_source = ProtocolPath("result", enthalpy_of_vaporization.id)

        calculation_schema.workflow_schema = schema
        return calculation_schema


# Register the properties via the plugin system.
register_calculation_schema(
    EnthalpyOfMixing, SimulationLayer, EnthalpyOfMixing.default_simulation_schema
)
register_calculation_schema(
    EnthalpyOfMixing, ReweightingLayer, EnthalpyOfMixing.default_reweighting_schema
)
register_calculation_schema(
    EnthalpyOfVaporization,
    SimulationLayer,
    EnthalpyOfVaporization.default_simulation_schema,
)
register_calculation_schema(
    EnthalpyOfVaporization,
    ReweightingLayer,
    EnthalpyOfVaporization.default_reweighting_schema,
)
Пример #5
0
        protocols.reweight_observable.volumes = ProtocolPath(
            "output_observables", protocols.decorrelate_observable.id
        )
        protocols.reweight_observable.thermodynamic_state = ProtocolPath(
            "thermodynamic_state", "global"
        )

        schema = WorkflowSchema()
        schema.protocol_schemas = [
            *(x.schema for x in protocols),
            compute_dipoles.schema,
            join_dipoles.schema,
            decorrelate_dipoles.schema,
        ]
        schema.protocol_replicators = [data_replicator]
        schema.final_value_source = ProtocolPath(
            "value", protocols.reweight_observable.id
        )

        calculation_schema.workflow_schema = schema
        return calculation_schema


# Register the properties via the plugin system.
register_calculation_schema(
    DielectricConstant, SimulationLayer, DielectricConstant.default_simulation_schema
)
register_calculation_schema(
    DielectricConstant, ReweightingLayer, DielectricConstant.default_reweighting_schema
)