hillclimber 0.1.6__cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- hillclimber/__init__.py +41 -0
- hillclimber/actions.py +53 -0
- hillclimber/analysis.py +590 -0
- hillclimber/biases.py +293 -0
- hillclimber/calc.py +22 -0
- hillclimber/cvs.py +1070 -0
- hillclimber/interfaces.py +133 -0
- hillclimber/metadynamics.py +416 -0
- hillclimber/nodes.py +6 -0
- hillclimber/opes.py +359 -0
- hillclimber/pycv.py +362 -0
- hillclimber/selectors.py +230 -0
- hillclimber/virtual_atoms.py +341 -0
- hillclimber-0.1.6.dist-info/METADATA +325 -0
- hillclimber-0.1.6.dist-info/RECORD +475 -0
- hillclimber-0.1.6.dist-info/WHEEL +6 -0
- hillclimber-0.1.6.dist-info/entry_points.txt +8 -0
- hillclimber-0.1.6.dist-info/licenses/LICENSE +165 -0
- hillclimber-0.1.6.dist-info/sboms/auditwheel.cdx.json +1 -0
- hillclimber.libs/libgomp-a49a47f9.so.1.0.0 +0 -0
- plumed/__init__.py +104 -0
- plumed/_lib/bin/plumed +0 -0
- plumed/_lib/bin/plumed-config +9 -0
- plumed/_lib/bin/plumed-patch +9 -0
- plumed/_lib/include/plumed/adjmat/AdjacencyMatrixBase.h +659 -0
- plumed/_lib/include/plumed/adjmat/ContactMatrix.h +59 -0
- plumed/_lib/include/plumed/asmjit/arch.h +228 -0
- plumed/_lib/include/plumed/asmjit/arm.h +43 -0
- plumed/_lib/include/plumed/asmjit/asmjit.h +69 -0
- plumed/_lib/include/plumed/asmjit/asmjit_apibegin.h +143 -0
- plumed/_lib/include/plumed/asmjit/asmjit_apiend.h +93 -0
- plumed/_lib/include/plumed/asmjit/asmjit_build.h +971 -0
- plumed/_lib/include/plumed/asmjit/assembler.h +183 -0
- plumed/_lib/include/plumed/asmjit/base.h +56 -0
- plumed/_lib/include/plumed/asmjit/codebuilder.h +944 -0
- plumed/_lib/include/plumed/asmjit/codecompiler.h +767 -0
- plumed/_lib/include/plumed/asmjit/codeemitter.h +528 -0
- plumed/_lib/include/plumed/asmjit/codeholder.h +777 -0
- plumed/_lib/include/plumed/asmjit/constpool.h +286 -0
- plumed/_lib/include/plumed/asmjit/cpuinfo.h +402 -0
- plumed/_lib/include/plumed/asmjit/func.h +1327 -0
- plumed/_lib/include/plumed/asmjit/globals.h +370 -0
- plumed/_lib/include/plumed/asmjit/inst.h +137 -0
- plumed/_lib/include/plumed/asmjit/logging.h +317 -0
- plumed/_lib/include/plumed/asmjit/misc_p.h +103 -0
- plumed/_lib/include/plumed/asmjit/moved_string.h +318 -0
- plumed/_lib/include/plumed/asmjit/operand.h +1599 -0
- plumed/_lib/include/plumed/asmjit/osutils.h +207 -0
- plumed/_lib/include/plumed/asmjit/regalloc_p.h +597 -0
- plumed/_lib/include/plumed/asmjit/runtime.h +227 -0
- plumed/_lib/include/plumed/asmjit/simdtypes.h +1104 -0
- plumed/_lib/include/plumed/asmjit/utils.h +1387 -0
- plumed/_lib/include/plumed/asmjit/vmem.h +183 -0
- plumed/_lib/include/plumed/asmjit/x86.h +45 -0
- plumed/_lib/include/plumed/asmjit/x86assembler.h +125 -0
- plumed/_lib/include/plumed/asmjit/x86builder.h +117 -0
- plumed/_lib/include/plumed/asmjit/x86compiler.h +322 -0
- plumed/_lib/include/plumed/asmjit/x86emitter.h +5149 -0
- plumed/_lib/include/plumed/asmjit/x86globals.h +535 -0
- plumed/_lib/include/plumed/asmjit/x86inst.h +2547 -0
- plumed/_lib/include/plumed/asmjit/x86instimpl_p.h +74 -0
- plumed/_lib/include/plumed/asmjit/x86internal_p.h +108 -0
- plumed/_lib/include/plumed/asmjit/x86logging_p.h +92 -0
- plumed/_lib/include/plumed/asmjit/x86misc.h +417 -0
- plumed/_lib/include/plumed/asmjit/x86operand.h +1133 -0
- plumed/_lib/include/plumed/asmjit/x86regalloc_p.h +734 -0
- plumed/_lib/include/plumed/asmjit/zone.h +1157 -0
- plumed/_lib/include/plumed/bias/Bias.h +82 -0
- plumed/_lib/include/plumed/bias/ReweightBase.h +58 -0
- plumed/_lib/include/plumed/blas/blas.h +253 -0
- plumed/_lib/include/plumed/blas/def_external.h +61 -0
- plumed/_lib/include/plumed/blas/def_internal.h +97 -0
- plumed/_lib/include/plumed/blas/real.h +49 -0
- plumed/_lib/include/plumed/cltools/CLTool.h +32 -0
- plumed/_lib/include/plumed/clusters/ClusteringBase.h +70 -0
- plumed/_lib/include/plumed/colvar/Colvar.h +32 -0
- plumed/_lib/include/plumed/colvar/ColvarInput.h +68 -0
- plumed/_lib/include/plumed/colvar/ColvarShortcut.h +81 -0
- plumed/_lib/include/plumed/colvar/CoordinationBase.h +52 -0
- plumed/_lib/include/plumed/colvar/MultiColvarTemplate.h +333 -0
- plumed/_lib/include/plumed/colvar/PathMSDBase.h +101 -0
- plumed/_lib/include/plumed/colvar/RMSDVector.h +78 -0
- plumed/_lib/include/plumed/config/Config.h +118 -0
- plumed/_lib/include/plumed/config/version.h +9 -0
- plumed/_lib/include/plumed/contour/ContourFindingObject.h +87 -0
- plumed/_lib/include/plumed/contour/DistanceFromContourBase.h +82 -0
- plumed/_lib/include/plumed/contour/FindContour.h +67 -0
- plumed/_lib/include/plumed/core/Action.h +540 -0
- plumed/_lib/include/plumed/core/ActionAnyorder.h +48 -0
- plumed/_lib/include/plumed/core/ActionAtomistic.h +343 -0
- plumed/_lib/include/plumed/core/ActionForInterface.h +99 -0
- plumed/_lib/include/plumed/core/ActionPilot.h +57 -0
- plumed/_lib/include/plumed/core/ActionRegister.h +124 -0
- plumed/_lib/include/plumed/core/ActionSet.h +163 -0
- plumed/_lib/include/plumed/core/ActionSetup.h +48 -0
- plumed/_lib/include/plumed/core/ActionShortcut.h +73 -0
- plumed/_lib/include/plumed/core/ActionToGetData.h +59 -0
- plumed/_lib/include/plumed/core/ActionToPutData.h +101 -0
- plumed/_lib/include/plumed/core/ActionWithArguments.h +140 -0
- plumed/_lib/include/plumed/core/ActionWithMatrix.h +87 -0
- plumed/_lib/include/plumed/core/ActionWithValue.h +258 -0
- plumed/_lib/include/plumed/core/ActionWithVector.h +94 -0
- plumed/_lib/include/plumed/core/ActionWithVirtualAtom.h +123 -0
- plumed/_lib/include/plumed/core/CLTool.h +177 -0
- plumed/_lib/include/plumed/core/CLToolMain.h +102 -0
- plumed/_lib/include/plumed/core/CLToolRegister.h +108 -0
- plumed/_lib/include/plumed/core/Colvar.h +115 -0
- plumed/_lib/include/plumed/core/DataPassingObject.h +94 -0
- plumed/_lib/include/plumed/core/DataPassingTools.h +54 -0
- plumed/_lib/include/plumed/core/DomainDecomposition.h +120 -0
- plumed/_lib/include/plumed/core/ExchangePatterns.h +47 -0
- plumed/_lib/include/plumed/core/FlexibleBin.h +63 -0
- plumed/_lib/include/plumed/core/GREX.h +61 -0
- plumed/_lib/include/plumed/core/GenericMolInfo.h +89 -0
- plumed/_lib/include/plumed/core/Group.h +41 -0
- plumed/_lib/include/plumed/core/ModuleMap.h +30 -0
- plumed/_lib/include/plumed/core/ParallelTaskManager.h +1023 -0
- plumed/_lib/include/plumed/core/PbcAction.h +61 -0
- plumed/_lib/include/plumed/core/PlumedMain.h +632 -0
- plumed/_lib/include/plumed/core/PlumedMainInitializer.h +118 -0
- plumed/_lib/include/plumed/core/RegisterBase.h +340 -0
- plumed/_lib/include/plumed/core/TargetDist.h +48 -0
- plumed/_lib/include/plumed/core/Value.h +547 -0
- plumed/_lib/include/plumed/core/WithCmd.h +93 -0
- plumed/_lib/include/plumed/dimred/SMACOF.h +55 -0
- plumed/_lib/include/plumed/drr/DRR.h +383 -0
- plumed/_lib/include/plumed/drr/colvar_UIestimator.h +777 -0
- plumed/_lib/include/plumed/fisst/legendre_rule_fast.h +44 -0
- plumed/_lib/include/plumed/function/Custom.h +54 -0
- plumed/_lib/include/plumed/function/Function.h +85 -0
- plumed/_lib/include/plumed/function/FunctionOfMatrix.h +368 -0
- plumed/_lib/include/plumed/function/FunctionOfScalar.h +135 -0
- plumed/_lib/include/plumed/function/FunctionOfVector.h +296 -0
- plumed/_lib/include/plumed/function/FunctionSetup.h +180 -0
- plumed/_lib/include/plumed/function/FunctionShortcut.h +130 -0
- plumed/_lib/include/plumed/function/FunctionWithSingleArgument.h +165 -0
- plumed/_lib/include/plumed/gridtools/ActionWithGrid.h +43 -0
- plumed/_lib/include/plumed/gridtools/EvaluateGridFunction.h +99 -0
- plumed/_lib/include/plumed/gridtools/FunctionOfGrid.h +295 -0
- plumed/_lib/include/plumed/gridtools/GridCoordinatesObject.h +179 -0
- plumed/_lib/include/plumed/gridtools/GridSearch.h +135 -0
- plumed/_lib/include/plumed/gridtools/Interpolator.h +45 -0
- plumed/_lib/include/plumed/gridtools/KDE.h +455 -0
- plumed/_lib/include/plumed/gridtools/RDF.h +40 -0
- plumed/_lib/include/plumed/gridtools/SumOfKernels.h +219 -0
- plumed/_lib/include/plumed/isdb/MetainferenceBase.h +398 -0
- plumed/_lib/include/plumed/lapack/def_external.h +207 -0
- plumed/_lib/include/plumed/lapack/def_internal.h +388 -0
- plumed/_lib/include/plumed/lapack/lapack.h +899 -0
- plumed/_lib/include/plumed/lapack/lapack_limits.h +79 -0
- plumed/_lib/include/plumed/lapack/real.h +50 -0
- plumed/_lib/include/plumed/lepton/CompiledExpression.h +164 -0
- plumed/_lib/include/plumed/lepton/CustomFunction.h +143 -0
- plumed/_lib/include/plumed/lepton/Exception.h +93 -0
- plumed/_lib/include/plumed/lepton/ExpressionProgram.h +137 -0
- plumed/_lib/include/plumed/lepton/ExpressionTreeNode.h +145 -0
- plumed/_lib/include/plumed/lepton/Lepton.h +85 -0
- plumed/_lib/include/plumed/lepton/MSVC_erfc.h +123 -0
- plumed/_lib/include/plumed/lepton/Operation.h +1302 -0
- plumed/_lib/include/plumed/lepton/ParsedExpression.h +165 -0
- plumed/_lib/include/plumed/lepton/Parser.h +111 -0
- plumed/_lib/include/plumed/lepton/windowsIncludes.h +73 -0
- plumed/_lib/include/plumed/mapping/Path.h +44 -0
- plumed/_lib/include/plumed/mapping/PathProjectionCalculator.h +57 -0
- plumed/_lib/include/plumed/matrixtools/MatrixOperationBase.h +54 -0
- plumed/_lib/include/plumed/matrixtools/MatrixTimesMatrix.h +309 -0
- plumed/_lib/include/plumed/matrixtools/MatrixTimesVectorBase.h +365 -0
- plumed/_lib/include/plumed/matrixtools/OuterProduct.h +238 -0
- plumed/_lib/include/plumed/maze/Core.h +65 -0
- plumed/_lib/include/plumed/maze/Loss.h +86 -0
- plumed/_lib/include/plumed/maze/Member.h +66 -0
- plumed/_lib/include/plumed/maze/Memetic.h +799 -0
- plumed/_lib/include/plumed/maze/Optimizer.h +357 -0
- plumed/_lib/include/plumed/maze/Random_MT.h +156 -0
- plumed/_lib/include/plumed/maze/Tools.h +183 -0
- plumed/_lib/include/plumed/metatomic/vesin.h +188 -0
- plumed/_lib/include/plumed/molfile/Gromacs.h +2013 -0
- plumed/_lib/include/plumed/molfile/endianswap.h +217 -0
- plumed/_lib/include/plumed/molfile/fastio.h +683 -0
- plumed/_lib/include/plumed/molfile/largefiles.h +78 -0
- plumed/_lib/include/plumed/molfile/libmolfile_plugin.h +77 -0
- plumed/_lib/include/plumed/molfile/molfile_plugin.h +1034 -0
- plumed/_lib/include/plumed/molfile/periodic_table.h +248 -0
- plumed/_lib/include/plumed/molfile/readpdb.h +447 -0
- plumed/_lib/include/plumed/molfile/vmdplugin.h +236 -0
- plumed/_lib/include/plumed/multicolvar/MultiColvarShortcuts.h +45 -0
- plumed/_lib/include/plumed/opes/ExpansionCVs.h +79 -0
- plumed/_lib/include/plumed/sasa/Sasa.h +32 -0
- plumed/_lib/include/plumed/secondarystructure/SecondaryStructureBase.h +372 -0
- plumed/_lib/include/plumed/setup/ActionSetup.h +25 -0
- plumed/_lib/include/plumed/small_vector/small_vector.h +6114 -0
- plumed/_lib/include/plumed/symfunc/CoordinationNumbers.h +41 -0
- plumed/_lib/include/plumed/tools/Angle.h +52 -0
- plumed/_lib/include/plumed/tools/AtomDistribution.h +138 -0
- plumed/_lib/include/plumed/tools/AtomNumber.h +152 -0
- plumed/_lib/include/plumed/tools/BiasRepresentation.h +106 -0
- plumed/_lib/include/plumed/tools/BitmaskEnum.h +167 -0
- plumed/_lib/include/plumed/tools/Brent1DRootSearch.h +159 -0
- plumed/_lib/include/plumed/tools/CheckInRange.h +44 -0
- plumed/_lib/include/plumed/tools/Citations.h +74 -0
- plumed/_lib/include/plumed/tools/ColvarOutput.h +118 -0
- plumed/_lib/include/plumed/tools/Communicator.h +316 -0
- plumed/_lib/include/plumed/tools/ConjugateGradient.h +80 -0
- plumed/_lib/include/plumed/tools/DLLoader.h +79 -0
- plumed/_lib/include/plumed/tools/ERMSD.h +73 -0
- plumed/_lib/include/plumed/tools/Exception.h +406 -0
- plumed/_lib/include/plumed/tools/File.h +28 -0
- plumed/_lib/include/plumed/tools/FileBase.h +153 -0
- plumed/_lib/include/plumed/tools/FileTools.h +37 -0
- plumed/_lib/include/plumed/tools/ForwardDecl.h +54 -0
- plumed/_lib/include/plumed/tools/Grid.h +638 -0
- plumed/_lib/include/plumed/tools/HistogramBead.h +136 -0
- plumed/_lib/include/plumed/tools/IFile.h +117 -0
- plumed/_lib/include/plumed/tools/KernelFunctions.h +113 -0
- plumed/_lib/include/plumed/tools/Keywords.h +380 -0
- plumed/_lib/include/plumed/tools/LatticeReduction.h +66 -0
- plumed/_lib/include/plumed/tools/LeptonCall.h +64 -0
- plumed/_lib/include/plumed/tools/LinkCells.h +126 -0
- plumed/_lib/include/plumed/tools/Log.h +41 -0
- plumed/_lib/include/plumed/tools/LoopUnroller.h +163 -0
- plumed/_lib/include/plumed/tools/Matrix.h +721 -0
- plumed/_lib/include/plumed/tools/MatrixSquareBracketsAccess.h +138 -0
- plumed/_lib/include/plumed/tools/MergeVectorTools.h +153 -0
- plumed/_lib/include/plumed/tools/Minimise1DBrent.h +244 -0
- plumed/_lib/include/plumed/tools/MinimiseBase.h +120 -0
- plumed/_lib/include/plumed/tools/MolDataClass.h +51 -0
- plumed/_lib/include/plumed/tools/NeighborList.h +112 -0
- plumed/_lib/include/plumed/tools/OFile.h +286 -0
- plumed/_lib/include/plumed/tools/OpenACC.h +180 -0
- plumed/_lib/include/plumed/tools/OpenMP.h +75 -0
- plumed/_lib/include/plumed/tools/PDB.h +154 -0
- plumed/_lib/include/plumed/tools/Pbc.h +139 -0
- plumed/_lib/include/plumed/tools/PlumedHandle.h +105 -0
- plumed/_lib/include/plumed/tools/RMSD.h +493 -0
- plumed/_lib/include/plumed/tools/Random.h +80 -0
- plumed/_lib/include/plumed/tools/RootFindingBase.h +79 -0
- plumed/_lib/include/plumed/tools/Stopwatch.h +475 -0
- plumed/_lib/include/plumed/tools/Subprocess.h +142 -0
- plumed/_lib/include/plumed/tools/SwitchingFunction.h +208 -0
- plumed/_lib/include/plumed/tools/Tensor.h +724 -0
- plumed/_lib/include/plumed/tools/TokenizedLine.h +123 -0
- plumed/_lib/include/plumed/tools/Tools.h +638 -0
- plumed/_lib/include/plumed/tools/Torsion.h +55 -0
- plumed/_lib/include/plumed/tools/TrajectoryParser.h +118 -0
- plumed/_lib/include/plumed/tools/Tree.h +61 -0
- plumed/_lib/include/plumed/tools/TypesafePtr.h +463 -0
- plumed/_lib/include/plumed/tools/Units.h +167 -0
- plumed/_lib/include/plumed/tools/Vector.h +433 -0
- plumed/_lib/include/plumed/tools/View.h +296 -0
- plumed/_lib/include/plumed/tools/View2D.h +100 -0
- plumed/_lib/include/plumed/tools/h36.h +39 -0
- plumed/_lib/include/plumed/vatom/ActionWithVirtualAtom.h +32 -0
- plumed/_lib/include/plumed/ves/BasisFunctions.h +380 -0
- plumed/_lib/include/plumed/ves/CoeffsBase.h +310 -0
- plumed/_lib/include/plumed/ves/CoeffsMatrix.h +220 -0
- plumed/_lib/include/plumed/ves/CoeffsVector.h +251 -0
- plumed/_lib/include/plumed/ves/FermiSwitchingFunction.h +74 -0
- plumed/_lib/include/plumed/ves/GridIntegrationWeights.h +50 -0
- plumed/_lib/include/plumed/ves/GridLinearInterpolation.h +81 -0
- plumed/_lib/include/plumed/ves/GridProjWeights.h +61 -0
- plumed/_lib/include/plumed/ves/LinearBasisSetExpansion.h +303 -0
- plumed/_lib/include/plumed/ves/Optimizer.h +444 -0
- plumed/_lib/include/plumed/ves/TargetDistModifer.h +53 -0
- plumed/_lib/include/plumed/ves/TargetDistribution.h +266 -0
- plumed/_lib/include/plumed/ves/VesBias.h +545 -0
- plumed/_lib/include/plumed/ves/VesTools.h +142 -0
- plumed/_lib/include/plumed/ves/WaveletGrid.h +75 -0
- plumed/_lib/include/plumed/volumes/ActionVolume.h +268 -0
- plumed/_lib/include/plumed/volumes/VolumeShortcut.h +147 -0
- plumed/_lib/include/plumed/wrapper/Plumed.h +5025 -0
- plumed/_lib/include/plumed/xdrfile/xdrfile.h +663 -0
- plumed/_lib/include/plumed/xdrfile/xdrfile_trr.h +89 -0
- plumed/_lib/include/plumed/xdrfile/xdrfile_xtc.h +90 -0
- plumed/_lib/lib/PythonCVInterface.so +0 -0
- plumed/_lib/lib/libplumed.a +0 -0
- plumed/_lib/lib/libplumed.so +0 -0
- plumed/_lib/lib/libplumedKernel.so +0 -0
- plumed/_lib/lib/libplumedWrapper.a +0 -0
- plumed/_lib/lib/pkgconfig/plumed.pc +13 -0
- plumed/_lib/lib/pkgconfig/plumedInternals.pc +13 -0
- plumed/_lib/lib/pkgconfig/plumedWrapper.pc +13 -0
- plumed/_lib/lib/plumed/fortran/plumed.f90 +879 -0
- plumed/_lib/lib/plumed/fortran/plumed_f08.f90 +2625 -0
- plumed/_lib/lib/plumed/modulefile +69 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.config +43 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/CMakeLists.txt +543 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/CMakeLists.txt.preplumed +540 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdlib/expanded.cpp +1628 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdlib/expanded.cpp.preplumed +1590 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdlib/expanded.h +103 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdlib/expanded.h.preplumed +99 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdlib/sim_util.cpp +2527 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdlib/sim_util.cpp.preplumed +2513 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/legacymdrunoptions.cpp +208 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/legacymdrunoptions.cpp.preplumed +175 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/legacymdrunoptions.h +408 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/legacymdrunoptions.h.preplumed +394 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/md.cpp +2348 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/md.cpp.preplumed +2091 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/minimize.cpp +3573 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/minimize.cpp.preplumed +3495 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/replicaexchange.cpp +1506 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/replicaexchange.cpp.preplumed +1402 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/replicaexchange.h +114 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/replicaexchange.h.preplumed +106 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/rerun.cpp +997 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/rerun.cpp.preplumed +906 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/runner.cpp +2780 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/mdrun/runner.cpp.preplumed +2738 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/modularsimulator/expandedensembleelement.cpp +224 -0
- plumed/_lib/lib/plumed/patches/gromacs-2022.5.diff/src/gromacs/modularsimulator/expandedensembleelement.cpp.preplumed +222 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.config +43 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/CMakeLists.txt +549 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/CMakeLists.txt.preplumed +546 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdlib/expanded.cpp +1632 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdlib/expanded.cpp.preplumed +1594 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdlib/expanded.h +104 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdlib/expanded.h.preplumed +100 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdlib/sim_util.cpp +2624 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdlib/sim_util.cpp.preplumed +2610 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/legacymdrunoptions.cpp +208 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/legacymdrunoptions.cpp.preplumed +175 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/legacymdrunoptions.h +409 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/legacymdrunoptions.h.preplumed +395 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/md.cpp +2419 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/md.cpp.preplumed +2164 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/minimize.cpp +3546 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/minimize.cpp.preplumed +3468 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/replicaexchange.cpp +1513 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/replicaexchange.cpp.preplumed +1409 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/replicaexchange.h +114 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/replicaexchange.h.preplumed +106 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/rerun.cpp +991 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/rerun.cpp.preplumed +900 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/runner.cpp +2895 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/mdrun/runner.cpp.preplumed +2849 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/modularsimulator/expandedensembleelement.cpp +224 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/modularsimulator/expandedensembleelement.cpp.preplumed +222 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/taskassignment/decidegpuusage.cpp +886 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/taskassignment/decidegpuusage.cpp.preplumed +880 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/taskassignment/include/gromacs/taskassignment/decidegpuusage.h +347 -0
- plumed/_lib/lib/plumed/patches/gromacs-2023.5.diff/src/gromacs/taskassignment/include/gromacs/taskassignment/decidegpuusage.h.preplumed +345 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.config +43 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/CMakeLists.txt +575 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/CMakeLists.txt.preplumed +572 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdlib/expanded.cpp +1632 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdlib/expanded.cpp.preplumed +1594 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdlib/expanded.h +104 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdlib/expanded.h.preplumed +100 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdlib/sim_util.cpp +2564 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdlib/sim_util.cpp.preplumed +2550 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/legacymdrunoptions.cpp +208 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/legacymdrunoptions.cpp.preplumed +175 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/legacymdrunoptions.h +410 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/legacymdrunoptions.h.preplumed +396 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/md.cpp +2435 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/md.cpp.preplumed +2187 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/minimize.cpp +3592 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/minimize.cpp.preplumed +3514 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/replicaexchange.cpp +1513 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/replicaexchange.cpp.preplumed +1409 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/replicaexchange.h +114 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/replicaexchange.h.preplumed +106 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/rerun.cpp +958 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/rerun.cpp.preplumed +929 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/runner.cpp +2987 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/mdrun/runner.cpp.preplumed +2941 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/modularsimulator/expandedensembleelement.cpp +224 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/modularsimulator/expandedensembleelement.cpp.preplumed +222 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/taskassignment/decidegpuusage.cpp +904 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/taskassignment/decidegpuusage.cpp.preplumed +898 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/taskassignment/include/gromacs/taskassignment/decidegpuusage.h +353 -0
- plumed/_lib/lib/plumed/patches/gromacs-2024.3.diff/src/gromacs/taskassignment/include/gromacs/taskassignment/decidegpuusage.h.preplumed +351 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.config +39 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/cmake/gmxManagePlumed.cmake +82 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/cmake/gmxManagePlumed.cmake.preplumed +82 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/applied_forces/plumed/plumedMDModule.cpp +162 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/applied_forces/plumed/plumedMDModule.cpp.preplumed +154 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/applied_forces/plumed/plumedOptions.cpp +107 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/applied_forces/plumed/plumedOptions.cpp.preplumed +99 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/applied_forces/plumed/plumedOptions.h +120 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/applied_forces/plumed/plumedOptions.h.preplumed +111 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/applied_forces/plumed/plumedforceprovider.cpp +215 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/applied_forces/plumed/plumedforceprovider.cpp.preplumed +197 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/applied_forces/plumed/plumedforceprovider.h +87 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/applied_forces/plumed/plumedforceprovider.h.preplumed +86 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/mdrun/runner.cpp +2971 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/mdrun/runner.cpp.preplumed +2970 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/mdrunutility/mdmodulesnotifiers.h +430 -0
- plumed/_lib/lib/plumed/patches/gromacs-2025.0.diff/src/gromacs/mdrunutility/mdmodulesnotifiers.h.preplumed +429 -0
- plumed/_lib/lib/plumed/patches/namd-2.12.config +30 -0
- plumed/_lib/lib/plumed/patches/namd-2.12.diff +267 -0
- plumed/_lib/lib/plumed/patches/namd-2.13.config +30 -0
- plumed/_lib/lib/plumed/patches/namd-2.13.diff +267 -0
- plumed/_lib/lib/plumed/patches/namd-2.14.config +30 -0
- plumed/_lib/lib/plumed/patches/namd-2.14.diff +268 -0
- plumed/_lib/lib/plumed/patches/patch.sh +500 -0
- plumed/_lib/lib/plumed/patches/qespresso-5.0.2.config +25 -0
- plumed/_lib/lib/plumed/patches/qespresso-5.0.2.diff/PW/src/forces.f90 +368 -0
- plumed/_lib/lib/plumed/patches/qespresso-5.0.2.diff/PW/src/forces.f90.preplumed +366 -0
- plumed/_lib/lib/plumed/patches/qespresso-5.0.2.diff/PW/src/plugin_forces.f90 +71 -0
- plumed/_lib/lib/plumed/patches/qespresso-5.0.2.diff/PW/src/plugin_forces.f90.preplumed +24 -0
- plumed/_lib/lib/plumed/patches/qespresso-5.0.2.diff/PW/src/plugin_initialization.f90 +62 -0
- plumed/_lib/lib/plumed/patches/qespresso-5.0.2.diff/PW/src/plugin_initialization.f90.preplumed +21 -0
- plumed/_lib/lib/plumed/patches/qespresso-5.0.2.diff/PW/src/pwscf.f90 +189 -0
- plumed/_lib/lib/plumed/patches/qespresso-5.0.2.diff/PW/src/pwscf.f90.preplumed +185 -0
- plumed/_lib/lib/plumed/patches/qespresso-6.2.config +26 -0
- plumed/_lib/lib/plumed/patches/qespresso-6.2.diff/PW/src/forces.f90 +422 -0
- plumed/_lib/lib/plumed/patches/qespresso-6.2.diff/PW/src/forces.f90.preplumed +420 -0
- plumed/_lib/lib/plumed/patches/qespresso-6.2.diff/PW/src/plugin_ext_forces.f90 +70 -0
- plumed/_lib/lib/plumed/patches/qespresso-6.2.diff/PW/src/plugin_ext_forces.f90.preplumed +23 -0
- plumed/_lib/lib/plumed/patches/qespresso-6.2.diff/PW/src/plugin_initialization.f90 +62 -0
- plumed/_lib/lib/plumed/patches/qespresso-6.2.diff/PW/src/plugin_initialization.f90.preplumed +21 -0
- plumed/_lib/lib/plumed/patches/qespresso-6.2.diff/PW/src/run_pwscf.f90 +233 -0
- plumed/_lib/lib/plumed/patches/qespresso-6.2.diff/PW/src/run_pwscf.f90.preplumed +230 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.config +28 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.diff/Modules/Makefile +175 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.diff/Modules/Makefile.preplumed +171 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.diff/PW/src/forces.f90 +486 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.diff/PW/src/forces.f90.preplumed +484 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.diff/PW/src/plugin_ext_forces.f90 +74 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.diff/PW/src/plugin_ext_forces.f90.preplumed +23 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.diff/PW/src/plugin_initialization.f90 +64 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.diff/PW/src/plugin_initialization.f90.preplumed +21 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.diff/PW/src/run_pwscf.f90 +532 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.0.diff/PW/src/run_pwscf.f90.preplumed +518 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.config +28 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.diff/Modules/Makefile +249 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.diff/Modules/Makefile.preplumed +244 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.diff/PW/src/forces.f90 +532 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.diff/PW/src/forces.f90.preplumed +535 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.diff/PW/src/plugin_ext_forces.f90 +74 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.diff/PW/src/plugin_ext_forces.f90.preplumed +23 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.diff/PW/src/plugin_initialization.f90 +64 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.diff/PW/src/plugin_initialization.f90.preplumed +21 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.diff/PW/src/run_pwscf.f90 +569 -0
- plumed/_lib/lib/plumed/patches/qespresso-7.2.diff/PW/src/run_pwscf.f90.preplumed +560 -0
- plumed/_lib/lib/plumed/plumed-config +9 -0
- plumed/_lib/lib/plumed/plumed-mklib +9 -0
- plumed/_lib/lib/plumed/plumed-newcv +9 -0
- plumed/_lib/lib/plumed/plumed-partial_tempering +9 -0
- plumed/_lib/lib/plumed/plumed-patch +9 -0
- plumed/_lib/lib/plumed/plumed-runtime +0 -0
- plumed/_lib/lib/plumed/plumed-selector +9 -0
- plumed/_lib/lib/plumed/plumed-vim2html +9 -0
- plumed/_lib/lib/plumed/scripts/config.sh +126 -0
- plumed/_lib/lib/plumed/scripts/mklib.sh +175 -0
- plumed/_lib/lib/plumed/scripts/newcv.sh +26 -0
- plumed/_lib/lib/plumed/scripts/partial_tempering.sh +319 -0
- plumed/_lib/lib/plumed/scripts/patch.sh +4 -0
- plumed/_lib/lib/plumed/scripts/selector.sh +234 -0
- plumed/_lib/lib/plumed/scripts/vim2html.sh +190 -0
- plumed/_lib/lib/plumed/src/colvar/Template.cpp +116 -0
- plumed/_lib/lib/plumed/src/config/compile_options.sh +3 -0
- plumed/_lib/lib/plumed/src/config/config.txt +179 -0
- plumed/_lib/lib/plumed/src/lib/Plumed.cmake +8 -0
- plumed/_lib/lib/plumed/src/lib/Plumed.cmake.runtime +5 -0
- plumed/_lib/lib/plumed/src/lib/Plumed.cmake.shared +5 -0
- plumed/_lib/lib/plumed/src/lib/Plumed.cmake.static +5 -0
- plumed/_lib/lib/plumed/src/lib/Plumed.inc +8 -0
- plumed/_lib/lib/plumed/src/lib/Plumed.inc.runtime +5 -0
- plumed/_lib/lib/plumed/src/lib/Plumed.inc.shared +5 -0
- plumed/_lib/lib/plumed/src/lib/Plumed.inc.static +5 -0
- plumed/_lib/lib/plumed/vim/scripts.vim +6 -0
- plumed/_plumed_core.cpython-311-aarch64-linux-gnu.so +0 -0
- plumed/_plumed_core.cpython-312-aarch64-linux-gnu.so +0 -0
- plumed/_plumed_core.cpython-313-aarch64-linux-gnu.so +0 -0
- plumed/_plumed_core.cpython-314-aarch64-linux-gnu.so +0 -0
- plumed/_plumed_core.cpython-314t-aarch64-linux-gnu.so +0 -0
- plumedCommunications.cpython-311-aarch64-linux-gnu.so +0 -0
- plumedCommunications.cpython-312-aarch64-linux-gnu.so +0 -0
- plumedCommunications.cpython-313-aarch64-linux-gnu.so +0 -0
- plumedCommunications.cpython-314-aarch64-linux-gnu.so +0 -0
- plumedCommunications.cpython-314t-aarch64-linux-gnu.so +0 -0
- plumedCommunications.pyi +431 -0
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
#! /usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
MANUAL="\
|
|
4
|
+
|
|
5
|
+
Options:
|
|
6
|
+
-h, --help
|
|
7
|
+
print this help and exit
|
|
8
|
+
-q, --quiet
|
|
9
|
+
don't write anything, just return true of false
|
|
10
|
+
show
|
|
11
|
+
dump a full configuration file
|
|
12
|
+
has [word1 [word2]..]
|
|
13
|
+
check if plumed has features words
|
|
14
|
+
module [word1 [word2]..]
|
|
15
|
+
check if plumed has enables modules words
|
|
16
|
+
makefile_conf
|
|
17
|
+
dumps the Makefile.conf file
|
|
18
|
+
|
|
19
|
+
Examples:
|
|
20
|
+
|
|
21
|
+
Check if plumed as dlopen enabled
|
|
22
|
+
> plumed config has dlopen
|
|
23
|
+
Check if plumed as dlopen AND zlib enabled
|
|
24
|
+
> plumed config has dlopen zlib
|
|
25
|
+
Check if plumed as module colvar active
|
|
26
|
+
> plumed config module colvar
|
|
27
|
+
"
|
|
28
|
+
|
|
29
|
+
# notice that the relative path of config.txt is also
|
|
30
|
+
# hardcoded in a comment written in the log from src/core/PlumedMain.cpp
|
|
31
|
+
# if you change it here, also change it there!
|
|
32
|
+
configfile="$PLUMED_ROOT"/src/config/config.txt
|
|
33
|
+
|
|
34
|
+
quiet=no
|
|
35
|
+
list=no
|
|
36
|
+
checklist=""
|
|
37
|
+
for opt
|
|
38
|
+
do
|
|
39
|
+
case "$opt" in
|
|
40
|
+
(--help|-h) echo "$MANUAL" ; exit ;;
|
|
41
|
+
(--description)
|
|
42
|
+
echo "inquire plumed about how it was configure"
|
|
43
|
+
exit 0
|
|
44
|
+
;;
|
|
45
|
+
(--options)
|
|
46
|
+
echo "--help -h --description --options --quiet -q --version -v show has module mpiexec makefile_conf python_bin"
|
|
47
|
+
exit 0
|
|
48
|
+
;;
|
|
49
|
+
(--quiet|-q) quiet=yes ;;
|
|
50
|
+
(--version|-v) action=version ;;
|
|
51
|
+
(show)
|
|
52
|
+
cat "$configfile"
|
|
53
|
+
exit 0
|
|
54
|
+
;;
|
|
55
|
+
(has) action=has ;;
|
|
56
|
+
(module) action=module ;;
|
|
57
|
+
(python_bin) action=python_bin ;;
|
|
58
|
+
(mpiexec) action=mpiexec ;;
|
|
59
|
+
(makefile_conf)
|
|
60
|
+
cat "$configfile" | awk '{if($1=="makefile_conf") { gsub("^makefile_conf ",""); print} }'
|
|
61
|
+
exit 0
|
|
62
|
+
;;
|
|
63
|
+
(*)
|
|
64
|
+
checklist="$checklist $opt"
|
|
65
|
+
esac
|
|
66
|
+
done
|
|
67
|
+
|
|
68
|
+
if test -z "$checklist" && ( test "$action" = show || test "$action" = has || test "$action" = module)
|
|
69
|
+
then
|
|
70
|
+
test "$quiet" = no && echo "nothing to do"
|
|
71
|
+
exit 1
|
|
72
|
+
fi
|
|
73
|
+
|
|
74
|
+
case $action in
|
|
75
|
+
(has|module)
|
|
76
|
+
retval=0
|
|
77
|
+
for check in $checklist
|
|
78
|
+
do
|
|
79
|
+
|
|
80
|
+
ff=$(
|
|
81
|
+
cat "$configfile" |
|
|
82
|
+
awk -v action="$action" -v check="$check" '{ if($1==action && $2==check){ print $3;exit } }'
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
if test "$ff" = on ; then
|
|
86
|
+
test "$quiet" = no && echo "$check on"
|
|
87
|
+
elif test "$ff" = off ; then
|
|
88
|
+
test "$quiet" = no && echo "$check off"
|
|
89
|
+
retval=1
|
|
90
|
+
else
|
|
91
|
+
test "$quiet" = no && echo "$check not found"
|
|
92
|
+
retval=1
|
|
93
|
+
fi
|
|
94
|
+
|
|
95
|
+
done
|
|
96
|
+
|
|
97
|
+
exit $retval
|
|
98
|
+
;;
|
|
99
|
+
(version)
|
|
100
|
+
long=$(cat "$configfile" | grep -v \# | awk '{ if($1=="version" && $2=="long") print $3 }')
|
|
101
|
+
git=$(cat "$configfile" | grep -v \# | awk '{ if($1=="version" && $2=="git") print $3 }')
|
|
102
|
+
echo "Version: $long (git: $git)"
|
|
103
|
+
;;
|
|
104
|
+
(python_bin)
|
|
105
|
+
py=$(cat "$configfile" | grep -v \# | awk '{ if($1=="python_bin") print $2 }')
|
|
106
|
+
if test -n "$py" ; then
|
|
107
|
+
retval=0
|
|
108
|
+
test "$quiet" = no && echo "$py"
|
|
109
|
+
else
|
|
110
|
+
retval=1
|
|
111
|
+
test "$quiet" = no && echo "python not found"
|
|
112
|
+
fi
|
|
113
|
+
exit $retval
|
|
114
|
+
;;
|
|
115
|
+
(mpiexec)
|
|
116
|
+
mpi=$(cat "$configfile" | grep -v \# | awk '{ if($1=="mpiexec") { sub(" *mpiexec ","",$0); print} }')
|
|
117
|
+
if test -n "$mpi" ; then
|
|
118
|
+
retval=0
|
|
119
|
+
test "$quiet" = no && echo "$mpi"
|
|
120
|
+
else
|
|
121
|
+
retval=1
|
|
122
|
+
test "$quiet" = no && echo "mpiexec not found"
|
|
123
|
+
fi
|
|
124
|
+
exit $retval
|
|
125
|
+
esac
|
|
126
|
+
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
#! /usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
if [ "$1" = --description ] ; then
|
|
4
|
+
echo "compile one or more *.cpp files into a shared library"
|
|
5
|
+
fi
|
|
6
|
+
|
|
7
|
+
MANUAL='Compile one or more *.cpp files into a shared library.
|
|
8
|
+
|
|
9
|
+
Usage:
|
|
10
|
+
|
|
11
|
+
plumed mklib [options] files1.cpp [file2.cpp ...]
|
|
12
|
+
|
|
13
|
+
Options:
|
|
14
|
+
-h, --help
|
|
15
|
+
Print this help and exit
|
|
16
|
+
-o LIBNAME, --out LIBNAME
|
|
17
|
+
Name of the output library. If missing, the name
|
|
18
|
+
of the first input file will me used, with its
|
|
19
|
+
suffix properly adjusted.
|
|
20
|
+
-n No-clobber mode, similar to `mv -n`.
|
|
21
|
+
Does not overwrite an existing library.
|
|
22
|
+
If the library exists when the command is started,
|
|
23
|
+
skip also the compilation phase.
|
|
24
|
+
|
|
25
|
+
Environment variables:
|
|
26
|
+
PLUMED_MKLIB_CFLAGS Extra compile time flags to be used
|
|
27
|
+
PLUMED_MKLIB_LDFLAGS Extra link time flags (and libraries) to be used
|
|
28
|
+
'
|
|
29
|
+
|
|
30
|
+
OPTIONS="--description --options -h --help -o --out -n"
|
|
31
|
+
|
|
32
|
+
if [ $# == 0 ]
|
|
33
|
+
then
|
|
34
|
+
echo "ERROR"
|
|
35
|
+
echo "type 'plumed mklib file1.cpp [file2.cpp etc]'"
|
|
36
|
+
exit 1
|
|
37
|
+
fi
|
|
38
|
+
|
|
39
|
+
source "$PLUMED_ROOT"/src/config/compile_options.sh
|
|
40
|
+
|
|
41
|
+
prefix=""
|
|
42
|
+
lib=""
|
|
43
|
+
no_clobber=""
|
|
44
|
+
files=() # empty array
|
|
45
|
+
for opt
|
|
46
|
+
do
|
|
47
|
+
prefixopt="$prefix$opt"
|
|
48
|
+
prefix=""
|
|
49
|
+
case "$prefixopt" in
|
|
50
|
+
(-o|--out) prefix="--out=";;
|
|
51
|
+
(-h|--help) echo "$MANUAL" ; exit ;;
|
|
52
|
+
(--options) echo "$OPTIONS" ; exit ;;
|
|
53
|
+
(--out=*) lib="${prefixopt#--out=}";;
|
|
54
|
+
(-n) no_clobber=yes;;
|
|
55
|
+
(-*)
|
|
56
|
+
echo "ERROR: Unknown option $opt. Use --help for help."
|
|
57
|
+
exit 1 ;;
|
|
58
|
+
(*)
|
|
59
|
+
files+=("${prefixopt}");;
|
|
60
|
+
esac
|
|
61
|
+
done
|
|
62
|
+
|
|
63
|
+
if [ ${#files[@]} = 0 ] ; then
|
|
64
|
+
echo ERROR
|
|
65
|
+
echo "pass at least one file"
|
|
66
|
+
exit 1
|
|
67
|
+
fi
|
|
68
|
+
|
|
69
|
+
if [ -z "$lib" ]
|
|
70
|
+
then
|
|
71
|
+
firstfile="${files[0]}"
|
|
72
|
+
lib="${firstfile%%.cpp}".$soext
|
|
73
|
+
fi
|
|
74
|
+
|
|
75
|
+
recompile=no
|
|
76
|
+
for file in "${files[@]}"
|
|
77
|
+
do
|
|
78
|
+
if ! test $lib -nt $file ;
|
|
79
|
+
then
|
|
80
|
+
recompile=yes
|
|
81
|
+
fi
|
|
82
|
+
done
|
|
83
|
+
|
|
84
|
+
if test -z "$no_clobber" ; then
|
|
85
|
+
recompile=yes
|
|
86
|
+
fi
|
|
87
|
+
|
|
88
|
+
if test $recompile = no ; then
|
|
89
|
+
echo "$lib is already up to date"
|
|
90
|
+
exit 0
|
|
91
|
+
fi
|
|
92
|
+
|
|
93
|
+
rm -f "$lib"
|
|
94
|
+
|
|
95
|
+
toRemove=""
|
|
96
|
+
remover() {
|
|
97
|
+
#if compilation fails or crashes the trap will delete the temporary files
|
|
98
|
+
for f in $toRemove; do
|
|
99
|
+
rm -rf "${f}"
|
|
100
|
+
done
|
|
101
|
+
}
|
|
102
|
+
trap "remover" EXIT
|
|
103
|
+
objs=""
|
|
104
|
+
|
|
105
|
+
tmpdir=$(mktemp -d "plumed_mklib.XXXXXX")
|
|
106
|
+
|
|
107
|
+
toRemove="${toRemove} $tmpdir"
|
|
108
|
+
|
|
109
|
+
for file in "${files[@]}"
|
|
110
|
+
do
|
|
111
|
+
|
|
112
|
+
if [[ "$file" != *.cpp ]] ;
|
|
113
|
+
then
|
|
114
|
+
echo "ERROR"
|
|
115
|
+
echo "type 'plumed mklib file1.cpp [file2.cpp etc]'"
|
|
116
|
+
exit 1
|
|
117
|
+
fi
|
|
118
|
+
|
|
119
|
+
obj="${file%%.cpp}".o
|
|
120
|
+
|
|
121
|
+
if [ ! -f "$file" ]
|
|
122
|
+
then
|
|
123
|
+
echo "ERROR: I cannot find file $file"
|
|
124
|
+
exit 1
|
|
125
|
+
fi
|
|
126
|
+
#adding a simple tmpfile, to preprocess "in place" the input file,
|
|
127
|
+
#this assumes the user has write permission in the current directory
|
|
128
|
+
#which should be true since we are going to compile and output something here
|
|
129
|
+
tmpfile=$(mktemp "${file%.cpp}.XXXXXX")
|
|
130
|
+
mv "${tmpfile}" "${tmpfile}.cpp"
|
|
131
|
+
tmpfile=${tmpfile}.cpp
|
|
132
|
+
cp "${file}" "${tmpfile}"
|
|
133
|
+
toRemove="${toRemove} ${tmpfile} ${tmpfile}.bak"
|
|
134
|
+
#this deprecates the shortcut to action register
|
|
135
|
+
if grep -q '^#include "\(bias\|colvar\|function\|sasa\|vatom\)\/ActionRegister.h"' "${tmpfile}"; then
|
|
136
|
+
>&2 echo 'WARNING: using a legacy ActionRegister.h include path, please use <<#include "core/ActionRegister.h">>'
|
|
137
|
+
sed -i.bak 's%^#include ".*/ActionRegister.h"%#include "core/ActionRegister.h"%g' "${tmpfile}"
|
|
138
|
+
fi
|
|
139
|
+
#this deprecates the shortcut to CLtoolregister
|
|
140
|
+
if grep -q '^#include "\(cltools\)\/CLToolRegister.h"' "${tmpfile}"; then
|
|
141
|
+
>&2 echo 'WARNING: using a legacy CLToolRegister.h include path, please use <<#include "core/CLToolRegister.h">>'
|
|
142
|
+
sed -i.bak 's%^#include ".*/CLToolRegister.h"%#include "core/CLToolRegister.h"%g' "${tmpfile}"
|
|
143
|
+
fi
|
|
144
|
+
#this removes "#include "core/Atoms.h" and makes the compilation failing on the calls of Atoms
|
|
145
|
+
#instead of on the include
|
|
146
|
+
if grep -q '^#include\s*"core/Atoms.h"' "${tmpfile}"; then
|
|
147
|
+
#\s match anly type of white space
|
|
148
|
+
>&2 echo 'WARNING: "core/Atoms.h" does not exist anymore in version >=2.10, you should change your code.'
|
|
149
|
+
sed -i.bak '/^#include\s*"core\/Atoms.h"/d' "${tmpfile}"
|
|
150
|
+
fi
|
|
151
|
+
rm -f "$tmpdir/$obj"
|
|
152
|
+
|
|
153
|
+
eval "$compile" "$PLUMED_MKLIB_CFLAGS" -o "$tmpdir/$obj" "$tmpfile" || {
|
|
154
|
+
echo "ERROR: compiling $file"
|
|
155
|
+
exit 1
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
objs="$objs $tmpdir/$obj"
|
|
159
|
+
|
|
160
|
+
done
|
|
161
|
+
|
|
162
|
+
link_command="$link_uninstalled"
|
|
163
|
+
|
|
164
|
+
if test "$PLUMED_IS_INSTALLED" = yes; then
|
|
165
|
+
link_command="$link_installed"
|
|
166
|
+
fi
|
|
167
|
+
|
|
168
|
+
eval "$link_command" "$PLUMED_MKLIB_LDFLAGS" $objs -o "$tmpdir/$lib"
|
|
169
|
+
|
|
170
|
+
if test -n "$no_clobber" ; then
|
|
171
|
+
# || true is necessary with recent coreutils
|
|
172
|
+
mv -n "$tmpdir/$lib" $lib || true
|
|
173
|
+
else
|
|
174
|
+
mv "$tmpdir/$lib" $lib
|
|
175
|
+
fi
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
#! /usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
if [ "$1" = --description ] ; then
|
|
4
|
+
echo "create a new collective variable from a template"
|
|
5
|
+
exit 0
|
|
6
|
+
fi
|
|
7
|
+
|
|
8
|
+
if [ "$1" = --options ] ; then
|
|
9
|
+
echo "--description --options"
|
|
10
|
+
exit 0
|
|
11
|
+
fi
|
|
12
|
+
|
|
13
|
+
if [ $# != 2 ] ;
|
|
14
|
+
then
|
|
15
|
+
echo "ERROR"
|
|
16
|
+
echo "type 'plumed newcv directive classname'"
|
|
17
|
+
echo "E.g. 'plumed newcv TORSION Torsion'"
|
|
18
|
+
exit 1
|
|
19
|
+
fi
|
|
20
|
+
|
|
21
|
+
directive=$1
|
|
22
|
+
classname=$2
|
|
23
|
+
|
|
24
|
+
sed "s/TEMPLATE/$directive/g
|
|
25
|
+
s/Template/$classname/g" "$PLUMED_ROOT"/src/colvar/Template.cpp > ${classname}.cpp
|
|
26
|
+
|
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
#! /usr/bin/env bash
|
|
2
|
+
# vim:ft=awk
|
|
3
|
+
if [ "$1" = --description ] ; then
|
|
4
|
+
echo "scale parameters in a gromacs topology to implement solute or partial tempering"
|
|
5
|
+
exit 0
|
|
6
|
+
fi
|
|
7
|
+
|
|
8
|
+
if [ "$1" = --options ] ; then
|
|
9
|
+
echo "--description --gromacs4 --help -h --options"
|
|
10
|
+
exit 0
|
|
11
|
+
fi
|
|
12
|
+
|
|
13
|
+
if [ "$1" = --help ] || [ "$1" = -h ] ; then
|
|
14
|
+
cat <<EOF
|
|
15
|
+
Usage:
|
|
16
|
+
|
|
17
|
+
plumed partial_tempering [--gromacs4] scale < processed.top
|
|
18
|
+
|
|
19
|
+
where scale is the Hamiltonian scaling factor and
|
|
20
|
+
processed.top is a post-processed topology file (i.e. produced with grompp -pp)
|
|
21
|
+
where each "hot" atom has a "_" appended to the atom type, e.g.:
|
|
22
|
+
|
|
23
|
+
1 amber99_43_ 1 RC5 O5' 1 -0.6223 16 ; qtot -0.6223
|
|
24
|
+
|
|
25
|
+
Notice that the section that should be edited is the [atoms] section for all the
|
|
26
|
+
molecules that you wish to affect (typically only for the solute, but you may also
|
|
27
|
+
want to change solvent parameters).
|
|
28
|
+
|
|
29
|
+
Also remember to first produce the processed.top file with grompp -pp. Editing a normal
|
|
30
|
+
topol.top file will not work, because it does not contain all the parameters.
|
|
31
|
+
The processed.top file should not have any "#include" statement.
|
|
32
|
+
|
|
33
|
+
# produce a processed topology
|
|
34
|
+
grompp -pp
|
|
35
|
+
# choose the "hot" atoms
|
|
36
|
+
vi processed.top
|
|
37
|
+
# generate the actual topology
|
|
38
|
+
plumed partial_tempering \$scale < processed.top > topol\$i.top
|
|
39
|
+
|
|
40
|
+
WARNING: It's not very robust and there might be force-field dependent issues!
|
|
41
|
+
A few tests are strongly suggested.
|
|
42
|
+
|
|
43
|
+
WARNING: This script requires gawk to be available on your system.
|
|
44
|
+
|
|
45
|
+
1. Compare partial_tempering with scale=1.0 to non-scaled force field. E.g.
|
|
46
|
+
grompp -o topol-unscaled.tpr
|
|
47
|
+
grompp -pp
|
|
48
|
+
vi processed.top # choose the "hot" atoms appending "_". You can choose whatever.
|
|
49
|
+
plumed partial_tempering 1.0 < processed.top > topol-scaled.top # scale with factor 1
|
|
50
|
+
grompp -p topol-scaled.top -o topol-scaled.tpr
|
|
51
|
+
# Then do a rerun on a trajectory
|
|
52
|
+
mdrun -s topol-unscaled.tpr -rerun rerun.trr
|
|
53
|
+
mdrun -s topol-scaled.tpr -rerun rerun.trr
|
|
54
|
+
# and compare the resuling energy files. they should be identical
|
|
55
|
+
|
|
56
|
+
2. Compare partial_tempering with scale=0.5 to non-scaled force field.
|
|
57
|
+
Repeat the same procedure but using "plumed partial_tempering 0.5".
|
|
58
|
+
Choose all the atoms in all the relevant [atoms] sections (e.g. solute, solvent and ions).
|
|
59
|
+
In the two resulting energy files you should see:
|
|
60
|
+
long range electrostatics, LJ, and dihedral energy is *half* in the scaled case
|
|
61
|
+
all other terms (bonds/bends) are identical.
|
|
62
|
+
|
|
63
|
+
EOF
|
|
64
|
+
exit
|
|
65
|
+
fi
|
|
66
|
+
|
|
67
|
+
gromacs5=1
|
|
68
|
+
|
|
69
|
+
if [ "$1" == --gromacs4 ] ; then
|
|
70
|
+
gromacs5=0
|
|
71
|
+
shift
|
|
72
|
+
fi
|
|
73
|
+
|
|
74
|
+
gawk -v scale=$1 -v gromacs5=$gromacs5 '
|
|
75
|
+
BEGIN{
|
|
76
|
+
combrule=1;
|
|
77
|
+
}
|
|
78
|
+
function recname()
|
|
79
|
+
{
|
|
80
|
+
if($1=="[" && $3=="]") return $2;
|
|
81
|
+
return "";
|
|
82
|
+
}
|
|
83
|
+
function error(msg)
|
|
84
|
+
{
|
|
85
|
+
print "ERROR:",msg > "/dev/stderr" ;
|
|
86
|
+
exit;
|
|
87
|
+
}
|
|
88
|
+
function warning(msg)
|
|
89
|
+
{
|
|
90
|
+
print "WARNING:",msg | "cat 1>&2"
|
|
91
|
+
}
|
|
92
|
+
function find_matching_torsion(params,atype, a1,a2,a3,a4,iswitch,progression,test,array,param,countX,bestCountX,bestMatch)
|
|
93
|
+
{
|
|
94
|
+
progression=NR
|
|
95
|
+
bestCountX=5
|
|
96
|
+
for(iswitch=0;iswitch<32;iswitch++){
|
|
97
|
+
countX=0
|
|
98
|
+
if(iswitch%2==0){
|
|
99
|
+
a1=atype[1]; a2=atype[2]; a3=atype[3]; a4=atype[4];
|
|
100
|
+
} else {
|
|
101
|
+
a1=atype[4]; a2=atype[3]; a3=atype[2]; a4=atype[1];
|
|
102
|
+
}
|
|
103
|
+
if(int(iswitch/2)%2==1){ a1="X"; countX++; }
|
|
104
|
+
if(int(iswitch/4)%2==1){ a2="X"; countX++; }
|
|
105
|
+
if(int(iswitch/8)%2==1){ a3="X"; countX++; }
|
|
106
|
+
if(int(iswitch/16)%2==1){a4="X"; countX++; }
|
|
107
|
+
test=a1"-"a2"-"a3"-"a4"-"$5;
|
|
108
|
+
if(test in params){
|
|
109
|
+
split(params[test],array,":");
|
|
110
|
+
bestMatch=0;
|
|
111
|
+
if(gromacs5) {
|
|
112
|
+
if(countX<bestCountX || (countX==bestCountX && array[1]<progression)) bestMatch=1
|
|
113
|
+
} else {
|
|
114
|
+
if(array[1]<progression) bestMatch=1;
|
|
115
|
+
}
|
|
116
|
+
if(bestMatch){
|
|
117
|
+
progression=array[1];
|
|
118
|
+
bestCountX=countX
|
|
119
|
+
param=params[test];
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
return param;
|
|
124
|
+
}
|
|
125
|
+
{
|
|
126
|
+
# This is the suffix for "hot" atoms:
|
|
127
|
+
suffix="_";
|
|
128
|
+
|
|
129
|
+
# format for writing parameters
|
|
130
|
+
CONVFMT="%.12g"
|
|
131
|
+
|
|
132
|
+
##### PARSING DATABASE #####
|
|
133
|
+
# store comments:
|
|
134
|
+
comments="";
|
|
135
|
+
if(a=match($0,";")) comments=substr($0,a);
|
|
136
|
+
# remove comments:
|
|
137
|
+
gsub(";.*","");
|
|
138
|
+
# echo empty line
|
|
139
|
+
if(NF==0){
|
|
140
|
+
print comments;
|
|
141
|
+
next;
|
|
142
|
+
}
|
|
143
|
+
# set name of current block
|
|
144
|
+
if(recname() ) rec=recname();
|
|
145
|
+
# set defaults for nb interactions
|
|
146
|
+
if(rec=="defaults" && NF==5) combrule=$2;
|
|
147
|
+
# if we are in atomtypes section, check which fields are present
|
|
148
|
+
# use same heuristics as in src/kernel/toppush.c
|
|
149
|
+
if(rec=="atomtypes" && NF>=4){
|
|
150
|
+
if((length($4)==1 && $4~"[a-zA-Z]")){
|
|
151
|
+
bondtypefield=1;
|
|
152
|
+
epsilonfield=6;
|
|
153
|
+
}
|
|
154
|
+
else if((length($6)==1 && $6~"[a-zA-Z]")){
|
|
155
|
+
bondtypefield=2;
|
|
156
|
+
epsilonfield=8;
|
|
157
|
+
}
|
|
158
|
+
else if((length($5)==1 && $5~"[a-zA-Z]")){
|
|
159
|
+
if(substr($2,0,1) ~"[a-zA-Z]"){
|
|
160
|
+
bondtypefield=2;
|
|
161
|
+
epsilonfield=7;
|
|
162
|
+
} else {
|
|
163
|
+
bondtypefield=1;
|
|
164
|
+
epsilonfield=7;
|
|
165
|
+
}
|
|
166
|
+
} else error("in atomtypes");
|
|
167
|
+
if(epsilonfield!=NF) error("in atomtypes");
|
|
168
|
+
# NOTE: OPLS uses bond types, thus we have to save the bondtype
|
|
169
|
+
# For other force fields (e.g. AMBER) atomtype is used as bondtype
|
|
170
|
+
# and column two is ignored (it is just atomic number).
|
|
171
|
+
bondtype[$1]=$bondtypefield;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
# storing dihedraltypes:
|
|
175
|
+
if(rec=="dihedraltypes" && ($5==1 || $5==2 || $5==3 || $5==4 || $5==5 || $5==9)){
|
|
176
|
+
if($5==1 || $5==4 || $5==9) string=":"$6" "$7" "$8;
|
|
177
|
+
else if($5==2) string=":"$6" "$7;
|
|
178
|
+
else if($5==3) string=":"$6" "$7" "$8" "$9" "$10" "$11;
|
|
179
|
+
else if($5==5) string=":"$6" "$7" "$8" "$9;
|
|
180
|
+
type=$1"-"$2"-"$3"-"$4"-"$5
|
|
181
|
+
if(type in params) params[type]=params[type]string;
|
|
182
|
+
else params[type]=NR""string;
|
|
183
|
+
# parameters are commented since they are used inline
|
|
184
|
+
print "; LINE("NR")",$0,comments
|
|
185
|
+
next;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
##### SCANNING #####
|
|
189
|
+
# in case new list of atoms for a new molecule, delete the present list
|
|
190
|
+
if(recname()=="atoms"){
|
|
191
|
+
delete list_of_atoms;
|
|
192
|
+
n_of_atoms=0;
|
|
193
|
+
}
|
|
194
|
+
# detect amber type of each atom
|
|
195
|
+
if(rec=="atoms" && NF>6){
|
|
196
|
+
name=$2;
|
|
197
|
+
gsub(suffix"$","",name)
|
|
198
|
+
ato[$1]=name;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
##### PRINTING #####
|
|
202
|
+
# DIHEDRALS
|
|
203
|
+
if(rec=="dihedrals" && ($5==1 || $5==2 || $5==3 || $5==4 || $5==5 || $5==9) ){
|
|
204
|
+
found1=0; found4=0;
|
|
205
|
+
for(j=0;j<n_of_atoms;j++) {
|
|
206
|
+
if($1==list_of_atoms[j]) found1=1;
|
|
207
|
+
if($4==list_of_atoms[j]) found4=1;
|
|
208
|
+
}
|
|
209
|
+
sscale=1.0;
|
|
210
|
+
if(found1)sscale*=sqrt(scale);
|
|
211
|
+
if(found4)sscale*=sqrt(scale);
|
|
212
|
+
|
|
213
|
+
# this is the case in which dihedrals are online:
|
|
214
|
+
if(NF>5){
|
|
215
|
+
printf($1" "$2" "$3" "$4" "$5" ");
|
|
216
|
+
if($5==1 || $5==4 || $5==9){
|
|
217
|
+
if(NF!=8) error("dihedrals with type 1,4,9 should have 8 fields");
|
|
218
|
+
printf($6" "$7*sscale" "$8);
|
|
219
|
+
} else if($5==2) {
|
|
220
|
+
if(NF!=7) error("dihedrals with type 2 should have 7 fields");
|
|
221
|
+
printf($6" "$7*sscale);
|
|
222
|
+
} else if($5==3) {
|
|
223
|
+
if(NF!=11) error("dihedrals with type 3 should have 11 fields");
|
|
224
|
+
printf($6*sscale" "$7*sscale" "$8*sscale" "$9*sscale" "$10*sscale" "$11*sscale);
|
|
225
|
+
} else if($5==5) {
|
|
226
|
+
if(NF!=9) error("dihedrals with type 5 should have 9 fields");
|
|
227
|
+
printf($6*sscale" "$7*sscale" "$8*sscale" "$9*sscale);
|
|
228
|
+
} else error("dihedrals with more than 5 fields should be 1,2,3,4,5 or 9");
|
|
229
|
+
printf(" "comments"\n");
|
|
230
|
+
# this is the case in which we have to search the database
|
|
231
|
+
} else if(NF==5){
|
|
232
|
+
param="";
|
|
233
|
+
atype[1]=bondtype[ato[$1]]
|
|
234
|
+
atype[2]=bondtype[ato[$2]]
|
|
235
|
+
atype[3]=bondtype[ato[$3]]
|
|
236
|
+
atype[4]=bondtype[ato[$4]]
|
|
237
|
+
|
|
238
|
+
param=find_matching_torsion(params,atype);
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
n=split(param,array,":");
|
|
242
|
+
if(n<=1) error("params not found "$1" "$2" "$3" "$4" "$5" "atype[1]" "atype[2]" "atype[3]" "atype[4]);
|
|
243
|
+
if($5!=9 && n!=2){
|
|
244
|
+
# in case of multiple dihedrals !=9, all parameters should be the same, otherwise I suspect there is some problem
|
|
245
|
+
for(i=3;i<=n;i++){
|
|
246
|
+
if((array[i]-array[2])**2>1e-20) error("multiple dihedrals !=9: parameters "array[i]" and "array[2]" are different\n");
|
|
247
|
+
}
|
|
248
|
+
# then, I just take one of the instances
|
|
249
|
+
param=array[1]":"array[2];
|
|
250
|
+
n=split(param,array,":");
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
printf("; parameters for types %s %s %s %s at LINE(%s)\n",atype[1],atype[2],atype[3],atype[4],array[1]);
|
|
254
|
+
for(i=2;i<=n;i++){
|
|
255
|
+
printf($1" "$2" "$3" "$4" "$5" ");
|
|
256
|
+
split(array[i],array1," ");
|
|
257
|
+
if($5==1 || $5==4 || $5==9){
|
|
258
|
+
printf(array1[1]" "array1[2]*sscale" "array1[3]);
|
|
259
|
+
} else if($5==2) {
|
|
260
|
+
printf(array1[1]" "array1[2]*sscale);
|
|
261
|
+
} else if($5==3) {
|
|
262
|
+
printf(array1[1]*sscale" "array1[2]*sscale" "array1[3]*sscale" "array1[4]*sscale" "array1[5]*sscale" "array1[6]*sscale);
|
|
263
|
+
} else if($5==5) {
|
|
264
|
+
printf(array1[1]*sscale" "array1[2]*sscale" "array1[3]*sscale" "array1[4]*sscale);
|
|
265
|
+
} else error("dihedrals with more than 5 fields should be 1,2,3,4,5 or 9");
|
|
266
|
+
printf(comments);
|
|
267
|
+
printf("\n");
|
|
268
|
+
}
|
|
269
|
+
} else error("dihedrals should have at least 5 fields");
|
|
270
|
+
# PAIRS
|
|
271
|
+
} else if(rec=="pairs" && ($3==1 || $3==2) && NF>3 ){
|
|
272
|
+
found1=0; found2=0;
|
|
273
|
+
for(j=0;j<n_of_atoms;j++) {
|
|
274
|
+
if($1==list_of_atoms[j]) found1=1;
|
|
275
|
+
if($2==list_of_atoms[j]) found2=1;
|
|
276
|
+
}
|
|
277
|
+
scaleq1=1.0;
|
|
278
|
+
scaleq2=1.0;
|
|
279
|
+
if(found1)scaleq1*=sqrt(scale);
|
|
280
|
+
if(found2)scaleq2*=sqrt(scale);
|
|
281
|
+
scale2=1.0; # scaling for second to last column
|
|
282
|
+
if(combrule==1) scale2=scaleq1*scaleq2;
|
|
283
|
+
if($3==1) {
|
|
284
|
+
print $1,$2,$3,scale2*$4,scaleq1*scaleq2*$5," ; scaled";
|
|
285
|
+
}
|
|
286
|
+
if($3==2) {
|
|
287
|
+
print $1,$2,$3,$4,scaleq1*$5,scaleq2*$6,scale2*$7,scaleq1*scaleq2*$8," ; scaled";
|
|
288
|
+
}
|
|
289
|
+
# ATOMTYPES
|
|
290
|
+
} else if(rec=="atomtypes" && NF>=4){
|
|
291
|
+
scale2=1.0; # scaling for second to last column
|
|
292
|
+
if(combrule==1) scale2=scale;
|
|
293
|
+
for(i=1;i<NF;i++)printf($i" "); print $NF,comments;
|
|
294
|
+
printf($1""suffix" "bondtype[$1]" ");
|
|
295
|
+
from=3;
|
|
296
|
+
if(NF==6) from=2; # GROMOS does not store bondtype by default, so we should add one column
|
|
297
|
+
for(i=from;i<NF-1;i++)printf($i" "); print scale2*$(NF-1),scale*$NF," ; scaled";
|
|
298
|
+
# ATOMTYPES (PAIRS)
|
|
299
|
+
} else if((rec=="pairtypes" || rec=="nonbond_params") && NF>=5){
|
|
300
|
+
scale2=1.0; # scaling for second to last column
|
|
301
|
+
if(combrule==1) scale2=scale;
|
|
302
|
+
print $1,$2,$3,$4,$5,comments
|
|
303
|
+
print $1""suffix,$2,$3,sqrt(scale2)*$4,sqrt(scale)*$5," ; scaled";
|
|
304
|
+
print $1,$2""suffix,$3,sqrt(scale2)*$4,sqrt(scale)*$5," ; scaled";
|
|
305
|
+
print $1""suffix,$2""suffix,$3,scale2*$4,scale*$5," ; scaled";
|
|
306
|
+
# ATOMS
|
|
307
|
+
} else if(rec=="atoms" && NF>=7){
|
|
308
|
+
if($2~".*"suffix"$"){
|
|
309
|
+
if(NF>=8) print $1,$2,$3,$4,$5,$6,$7*sqrt(scale),$8,comments;
|
|
310
|
+
if(NF==7) print $1,$2,$3,$4,$5,$6,$7*sqrt(scale),comments;
|
|
311
|
+
list_of_atoms[n_of_atoms]=$1;
|
|
312
|
+
n_of_atoms++;
|
|
313
|
+
}
|
|
314
|
+
else print $0
|
|
315
|
+
# EVERYTHING ELSE (just print)
|
|
316
|
+
} else print $0,comments
|
|
317
|
+
}
|
|
318
|
+
'
|
|
319
|
+
|