%module NonbondedSimpleFullSystemForce %{ #include "OneAtomPair.h" #include "OneAtomPairTwo.h" #include "../topology/PeriodicBoundaryConditions.h" #include "../topology/VacuumBoundaryConditions.h" #include "../topology/UniversalSwitchingFunction.h" #include "../topology/C2SwitchingFunction.h" #include "../topology/C1SwitchingFunction.h" #include "../topology/ComplementSwitchingFunction.h" #include "../topology/CutoffSwitchingFunction.h" #include "../topology/ShiftSwitchingFunction.h" #include "../topology/CnSwitchingFunction.h" #include "../topology/CmpCnCnSwitchingFunction.h" #include "CoulombForce.h" #include "CoulombForceDiElec.h" #include "LennardJonesForce.h" #include "MagneticDipoleForce.h" #include "GravitationForce.h" #include "NonbondedSimpleFullSystemForce.h" %} %include "std_vector.i" %template() std::vector; %include "../base/Real.h" %include "../base/Proxy.h" %include "../base/Vector3D.h" %include "../base/AbstractEnumType.h" %include "../base/simpleTypes.h" %include "../base/ConstraintValueType.h" %include "../base/ValueType.h" %include "../base/Value.h" %include "../base/Parameter.h" %include "../base/Vector3DBlock.h" %include "../base/MakeableDefinition.h" %include "../base/Makeable.h" %include "Force.h" %include "SystemForce.h" %include "NonbondedSimpleFullSystemForce.h" // NonbondedSimpleFullSystemForce CoulombForce %template(NSFSF_P_U_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_P_C1_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_P_CC1_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::CoulombForce> >; %template(NSFSF_P_CC2_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::CoulombForce> >; %template(NSFSF_P_CCO_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::CoulombForce> >; %template(NSFSF_P_CS_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::CoulombForce> >; // NonbondedSimpleFullSystemForce LennardJonesForce %template(NSFSF_P_U_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_P_C1_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_P_CC1_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::LennardJonesForce> >; %template(NSFSF_P_CC2_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::LennardJonesForce> >; %template(NSFSF_P_CCO_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::LennardJonesForce> >; %template(NSFSF_P_CS_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::LennardJonesForce> >; // NonbondedSimpleFullSystemForce LennardJonesForce CoulombForce %template(NSFSF_P_U_L_U_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo >; %template(NSFSF_P_CC2_L_CC1_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo,ProtoMol::LennardJonesForce,ProtoMol::ComplementSwitchingFunction,ProtoMol::CoulombForce> >; // MagneticDipole %template(NSFSF_P_U_M) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_P_CC1_M) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::MagneticDipoleForce> >; // GravitationForce %template(NSFSF_P_U_G) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; ///VACUUM // NonbondedSimpleFullSystemForce CoulombForce %template(NSFSF_V_U_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_V_C1_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_V_CC1_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::CoulombForce> >; %template(NSFSF_V_CC2_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::CoulombForce> >; %template(NSFSF_V_CCO_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::CoulombForce> >; %template(NSFSF_V_CS_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::CoulombForce> >; // NonbondedSimpleFullSystemForce LennardJonesForce %template(NSFSF_V_U_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_V_C1_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_V_CC1_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::LennardJonesForce> >; %template(NSFSF_V_CC2_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::LennardJonesForce> >; %template(NSFSF_V_CCO_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::LennardJonesForce> >; %template(NSFSF_V_CS_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::LennardJonesForce> >; // DIELEC %template(NSFSF_V_U_CDE) ProtoMol::NonbondedSimpleFullSystemForce >; %template(NSFSF_V_C1_CDE) ProtoMol::NonbondedSimpleFullSystemForce >; %template(NSFSF_V_CC1_CDE) ProtoMol::NonbondedSimpleFullSystemForce,ProtoMol::CoulombForceDiElec> >; %template(NSFSF_V_CC2_CDE) ProtoMol::NonbondedSimpleFullSystemForce,ProtoMol::CoulombForceDiElec> >; %template(NSFSF_V_CCN_CDE) ProtoMol::NonbondedSimpleFullSystemForce,ProtoMol::CoulombForceDiElec> >; %template(NSFSF_V_CC_CDE) ProtoMol::NonbondedSimpleFullSystemForce,ProtoMol::CoulombForceDiElec> >; %template(NSFSF_V_CS_CDE) ProtoMol::NonbondedSimpleFullSystemForce,ProtoMol::CoulombForceDiElec> >; // NonbondedSimpleFullSystemForce LennardJonesForce CoulombForce %template(NSFSF_V_U_L_U_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo >; %template(NSFSF_V_CC2_L_CC1_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo,ProtoMol::LennardJonesForce,ProtoMol::ComplementSwitchingFunction,ProtoMol::CoulombForce> >; // MagneticDipole %template(NSFSF_V_U_M) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_V_CC1_M) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::MagneticDipoleForce> >; // GravitationForce %template(NSFSF_V_U_G) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; // Cn Switching Functions %template(NSFSF_P_CCN_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::CoulombForce> >; %template(NSFSF_P_CN_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_P_CCN_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::LennardJonesForce> >; %template(NSFSF_P_CCN_L_CC1_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo,ProtoMol::LennardJonesForce,ProtoMol::ComplementSwitchingFunction,ProtoMol::CoulombForce> >; %template(NSFSF_P_CN_L_U_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo >; %template(NSFSF_V_CCN_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::CoulombForce> >; %template(NSFSF_V_CN_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair >; %template(NSFSF_V_CCN_L) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPair,ProtoMol::LennardJonesForce> >; %template(NSFSF_V_CCN_L_CC1_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo,ProtoMol::LennardJonesForce,ProtoMol::ComplementSwitchingFunction,ProtoMol::CoulombForce> >; %template(NSFSF_V_CN_L_U_C) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo >; // DIELEC %template(NSFSF_V_U_L_U_CDE) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo >; %template(NSFSF_V_CC2_L_CC1_CDE) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo,ProtoMol::LennardJonesForce,ProtoMol::ComplementSwitchingFunction,ProtoMol::CoulombForceDiElec> >; %template(NSFSF_V_CCN_L_CC1_CDE) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo,ProtoMol::LennardJonesForce,ProtoMol::ComplementSwitchingFunction,ProtoMol::CoulombForceDiElec> >; %template(NSFSF_V_C2_L_S_CDE) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo >; %template(NSFSF_V_CN_L_S_CDE) ProtoMol::NonbondedSimpleFullSystemForce< ProtoMol::OneAtomPairTwo >;