hillclimber 0.1.5__cp313-cp313-musllinux_1_2_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 +39 -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 +325 -0
- hillclimber/nodes.py +6 -0
- hillclimber/opes.py +359 -0
- hillclimber/selectors.py +230 -0
- hillclimber/virtual_atoms.py +341 -0
- hillclimber-0.1.5.dist-info/METADATA +210 -0
- hillclimber-0.1.5.dist-info/RECORD +472 -0
- hillclimber-0.1.5.dist-info/WHEEL +5 -0
- hillclimber-0.1.5.dist-info/entry_points.txt +8 -0
- hillclimber-0.1.5.dist-info/licenses/LICENSE +165 -0
- hillclimber-0.1.5.dist-info/sboms/auditwheel.cdx.json +1 -0
- hillclimber.libs/libgcc_s-2d945d6c.so.1 +0 -0
- hillclimber.libs/libgomp-1ede7ee7.so.1.0.0 +0 -0
- hillclimber.libs/libstdc++-85f2cd6d.so.6.0.33 +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-musl.so +0 -0
- plumed/_plumed_core.cpython-312-aarch64-linux-musl.so +0 -0
- plumed/_plumed_core.cpython-313-aarch64-linux-musl.so +0 -0
- plumedCommunications.cpython-311-aarch64-linux-musl.so +0 -0
- plumedCommunications.cpython-312-aarch64-linux-musl.so +0 -0
- plumedCommunications.cpython-313-aarch64-linux-musl.so +0 -0
- plumedCommunications.pyi +431 -0
|
@@ -0,0 +1,444 @@
|
|
|
1
|
+
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
2
|
+
Copyright (c) 2016-2021 The VES code team
|
|
3
|
+
(see the PEOPLE-VES file at the root of this folder for a list of names)
|
|
4
|
+
|
|
5
|
+
See http://www.ves-code.org for more information.
|
|
6
|
+
|
|
7
|
+
This file is part of VES code module.
|
|
8
|
+
|
|
9
|
+
The VES code module is free software: you can redistribute it and/or modify
|
|
10
|
+
it under the terms of the GNU Lesser General Public License as published by
|
|
11
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
12
|
+
(at your option) any later version.
|
|
13
|
+
|
|
14
|
+
The VES code module is distributed in the hope that it will be useful,
|
|
15
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
16
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
17
|
+
GNU Lesser General Public License for more details.
|
|
18
|
+
|
|
19
|
+
You should have received a copy of the GNU Lesser General Public License
|
|
20
|
+
along with the VES code module. If not, see <http://www.gnu.org/licenses/>.
|
|
21
|
+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
|
|
22
|
+
#ifndef __PLUMED_ves_Optimizer_h
|
|
23
|
+
#define __PLUMED_ves_Optimizer_h
|
|
24
|
+
|
|
25
|
+
#include "VesBias.h"
|
|
26
|
+
|
|
27
|
+
#include "../core/ActionPilot.h"
|
|
28
|
+
#include "../core/ActionWithValue.h"
|
|
29
|
+
|
|
30
|
+
#include <vector>
|
|
31
|
+
#include <string>
|
|
32
|
+
#include <cmath>
|
|
33
|
+
#include <memory>
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
#define PLUMED_VES_OPTIMIZER_INIT(ao) Action(ao),Optimizer(ao)
|
|
37
|
+
|
|
38
|
+
namespace PLMD {
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
\ingroup INHERIT
|
|
42
|
+
Abstract base class for implenting new optimization methods
|
|
43
|
+
*/
|
|
44
|
+
|
|
45
|
+
class OFile;
|
|
46
|
+
|
|
47
|
+
namespace ves {
|
|
48
|
+
|
|
49
|
+
class CoeffsVector;
|
|
50
|
+
class VesBias;
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
class Optimizer :
|
|
54
|
+
public ActionPilot,
|
|
55
|
+
public ActionWithValue {
|
|
56
|
+
private:
|
|
57
|
+
const std::string description_;
|
|
58
|
+
const std::string type_;
|
|
59
|
+
//
|
|
60
|
+
std::vector<double> stepsizes_;
|
|
61
|
+
std::vector<double> current_stepsizes;
|
|
62
|
+
bool fixed_stepsize_;
|
|
63
|
+
//
|
|
64
|
+
unsigned int iter_counter;
|
|
65
|
+
//
|
|
66
|
+
bool use_hessian_;
|
|
67
|
+
bool diagonal_hessian_;
|
|
68
|
+
bool hessian_covariance_from_averages_;
|
|
69
|
+
//
|
|
70
|
+
bool monitor_instantaneous_gradient_;
|
|
71
|
+
//
|
|
72
|
+
bool use_mwalkers_mpi_;
|
|
73
|
+
bool mwalkers_mpi_single_files_;
|
|
74
|
+
//
|
|
75
|
+
std::vector<bool> dynamic_targetdists_;
|
|
76
|
+
unsigned int ustride_targetdist_;
|
|
77
|
+
//
|
|
78
|
+
unsigned int ustride_reweightfactor_;
|
|
79
|
+
//
|
|
80
|
+
std::string coeffssetid_prefix_;
|
|
81
|
+
//
|
|
82
|
+
unsigned int coeffs_wstride_;
|
|
83
|
+
std::vector<std::unique_ptr<OFile>> coeffsOFiles_;
|
|
84
|
+
std::string coeffs_output_fmt_;
|
|
85
|
+
//
|
|
86
|
+
unsigned int gradient_wstride_;
|
|
87
|
+
std::vector<std::unique_ptr<OFile>> gradientOFiles_;
|
|
88
|
+
std::string gradient_output_fmt_;
|
|
89
|
+
//
|
|
90
|
+
unsigned int hessian_wstride_;
|
|
91
|
+
std::vector<std::unique_ptr<OFile>> hessianOFiles_;
|
|
92
|
+
std::string hessian_output_fmt_;
|
|
93
|
+
//
|
|
94
|
+
unsigned int targetdist_averages_wstride_;
|
|
95
|
+
std::vector<std::unique_ptr<OFile>> targetdist_averagesOFiles_;
|
|
96
|
+
std::string targetdist_averages_output_fmt_;
|
|
97
|
+
//
|
|
98
|
+
unsigned int nbiases_;
|
|
99
|
+
std::vector<VesBias*> bias_pntrs_;
|
|
100
|
+
//
|
|
101
|
+
unsigned int ncoeffssets_;
|
|
102
|
+
std::vector<CoeffsVector*> coeffs_pntrs_;
|
|
103
|
+
std::vector<std::unique_ptr<CoeffsVector>> aux_coeffs_pntrs_;
|
|
104
|
+
std::vector<CoeffsVector*> gradient_pntrs_;
|
|
105
|
+
std::vector<std::unique_ptr<CoeffsVector>> aver_gradient_pntrs_;
|
|
106
|
+
std::vector<CoeffsMatrix*> hessian_pntrs_;
|
|
107
|
+
std::vector<std::unique_ptr<CoeffsVector>> coeffs_mask_pntrs_;
|
|
108
|
+
std::vector<CoeffsVector*> targetdist_averages_pntrs_;
|
|
109
|
+
//
|
|
110
|
+
bool identical_coeffs_shape_;
|
|
111
|
+
//
|
|
112
|
+
bool bias_output_active_;
|
|
113
|
+
unsigned int bias_output_stride_;
|
|
114
|
+
bool fes_output_active_;
|
|
115
|
+
unsigned int fes_output_stride_;
|
|
116
|
+
bool fesproj_output_active_;
|
|
117
|
+
unsigned int fesproj_output_stride_;
|
|
118
|
+
bool targetdist_output_active_;
|
|
119
|
+
unsigned int targetdist_output_stride_;
|
|
120
|
+
bool targetdist_proj_output_active_;
|
|
121
|
+
unsigned int targetdist_proj_output_stride_;
|
|
122
|
+
//
|
|
123
|
+
bool isFirstStep;
|
|
124
|
+
//
|
|
125
|
+
private:
|
|
126
|
+
void updateOutputComponents();
|
|
127
|
+
void writeOutputFiles(const unsigned int coeffs_id = 0);
|
|
128
|
+
void readCoeffsFromFiles(const std::vector<std::string>&, const bool);
|
|
129
|
+
void setAllCoeffsSetIterationCounters();
|
|
130
|
+
protected:
|
|
131
|
+
void turnOnHessian();
|
|
132
|
+
void turnOffHessian();
|
|
133
|
+
std::vector<CoeffsMatrix*> enableHessian(VesBias*, const bool diagonal_hessian=false);
|
|
134
|
+
// CoeffsMatrix* switchToDiagonalHessian(VesBias*);
|
|
135
|
+
// CoeffsMatrix* switchToFullHessian(VesBias*);
|
|
136
|
+
//
|
|
137
|
+
CoeffsVector& Coeffs(const unsigned int coeffs_id = 0) const;
|
|
138
|
+
CoeffsVector& AuxCoeffs(const unsigned int coeffs_id = 0) const;
|
|
139
|
+
CoeffsVector& Gradient(const unsigned int coeffs_id = 0) const;
|
|
140
|
+
CoeffsMatrix& Hessian(const unsigned int coeffs_id = 0) const;
|
|
141
|
+
CoeffsVector& CoeffsMask(const unsigned int coeffs_id = 0) const;
|
|
142
|
+
CoeffsVector& TargetDistAverages(const unsigned int coeffs_id = 0) const;
|
|
143
|
+
double StepSize(const unsigned int coeffs_id = 0) const;
|
|
144
|
+
virtual void coeffsUpdate(const unsigned int coeffs_id = 0) = 0;
|
|
145
|
+
void setCurrentStepSize(const double,const unsigned int i = 0);
|
|
146
|
+
void setCurrentStepSizes(const std::vector<double>&);
|
|
147
|
+
//
|
|
148
|
+
void turnOffCoeffsOutputFiles();
|
|
149
|
+
//
|
|
150
|
+
template<class T>
|
|
151
|
+
bool parseMultipleValues(const std::string&, std::vector<T>&);
|
|
152
|
+
template<class T>
|
|
153
|
+
bool parseMultipleValues(const std::string&, std::vector<T>&, const T&);
|
|
154
|
+
void parseFilenames(const std::string&, std::vector<std::string>&, const std::string&);
|
|
155
|
+
void parseFilenames(const std::string&, std::vector<std::string>&);
|
|
156
|
+
void addCoeffsSetIDsToFilenames(std::vector<std::string>&, std::string&);
|
|
157
|
+
void setupOFiles(std::vector<std::string>&, std::vector<std::unique_ptr<OFile>>&, const bool multi_sim_single_files=false);
|
|
158
|
+
public:
|
|
159
|
+
static void registerKeywords(Keywords&);
|
|
160
|
+
static void useMultipleWalkersKeywords(Keywords&);
|
|
161
|
+
static void useHessianKeywords(Keywords&);
|
|
162
|
+
static void useFixedStepSizeKeywords(Keywords&);
|
|
163
|
+
static void useDynamicStepSizeKeywords(Keywords&);
|
|
164
|
+
static void useMaskKeywords(Keywords&);
|
|
165
|
+
static void useRestartKeywords(Keywords&);
|
|
166
|
+
static void useMonitorAverageGradientKeywords(Keywords&);
|
|
167
|
+
static void useDynamicTargetDistributionKeywords(Keywords&);
|
|
168
|
+
static void useReweightFactorKeywords(Keywords&);
|
|
169
|
+
//
|
|
170
|
+
explicit Optimizer(const ActionOptions&ao);
|
|
171
|
+
~Optimizer();
|
|
172
|
+
std::string getType() const {
|
|
173
|
+
return type_;
|
|
174
|
+
}
|
|
175
|
+
std::string getDescription() const {
|
|
176
|
+
return description_;
|
|
177
|
+
}
|
|
178
|
+
//
|
|
179
|
+
unsigned int numberOfBiases() const {
|
|
180
|
+
return nbiases_;
|
|
181
|
+
}
|
|
182
|
+
unsigned int numberOfCoeffsSets() const {
|
|
183
|
+
return ncoeffssets_;
|
|
184
|
+
}
|
|
185
|
+
//
|
|
186
|
+
std::vector<double> getStepSizes() const;
|
|
187
|
+
std::vector<double> getCurrentStepSizes() const;
|
|
188
|
+
double getStepSize(const unsigned int coeffs_id = 0) const;
|
|
189
|
+
double getCurrentStepSize(const unsigned int coeffs_id = 0) const;
|
|
190
|
+
void setStepSizes(const std::vector<double>&);
|
|
191
|
+
void setStepSize(const double, const unsigned int coeffs_id = 0);
|
|
192
|
+
//
|
|
193
|
+
unsigned int getIterationCounter() const;
|
|
194
|
+
double getIterationCounterDbl() const;
|
|
195
|
+
std::string getIterationCounterStr(const int offset=0) const;
|
|
196
|
+
void setIterationCounter(const unsigned int);
|
|
197
|
+
void increaseIterationCounter();
|
|
198
|
+
//
|
|
199
|
+
void apply() override {};
|
|
200
|
+
void calculate() override {};
|
|
201
|
+
void update() override;
|
|
202
|
+
unsigned int getNumberOfDerivatives() override {
|
|
203
|
+
return 0;
|
|
204
|
+
}
|
|
205
|
+
//
|
|
206
|
+
bool fixedStepSize() const {
|
|
207
|
+
return fixed_stepsize_;
|
|
208
|
+
}
|
|
209
|
+
bool dynamicStepSize() const {
|
|
210
|
+
return !fixed_stepsize_;
|
|
211
|
+
}
|
|
212
|
+
//
|
|
213
|
+
bool useHessian() const {
|
|
214
|
+
return use_hessian_;
|
|
215
|
+
}
|
|
216
|
+
bool diagonalHessian() const {
|
|
217
|
+
return diagonal_hessian_;
|
|
218
|
+
}
|
|
219
|
+
//
|
|
220
|
+
bool useMultipleWalkers() const {
|
|
221
|
+
return use_mwalkers_mpi_;
|
|
222
|
+
}
|
|
223
|
+
//
|
|
224
|
+
std::vector<VesBias*> getBiasPntrs() const {
|
|
225
|
+
return bias_pntrs_;
|
|
226
|
+
}
|
|
227
|
+
std::vector<CoeffsVector*> getCoeffsPntrs() const {
|
|
228
|
+
return coeffs_pntrs_;
|
|
229
|
+
}
|
|
230
|
+
std::vector<CoeffsVector*> getAuxCoeffsPntrs() const {
|
|
231
|
+
return Tools::unique2raw(aux_coeffs_pntrs_);
|
|
232
|
+
}
|
|
233
|
+
std::vector<CoeffsVector*> getGradientPntrs()const {
|
|
234
|
+
return gradient_pntrs_;
|
|
235
|
+
}
|
|
236
|
+
std::vector<CoeffsMatrix*> getHessianPntrs() const {
|
|
237
|
+
return hessian_pntrs_;
|
|
238
|
+
}
|
|
239
|
+
std::vector<CoeffsVector*> getCoeffsMaskPntrs() const {
|
|
240
|
+
return Tools::unique2raw(coeffs_mask_pntrs_);
|
|
241
|
+
}
|
|
242
|
+
std::vector<CoeffsVector*> getTargetDistAveragesPntrs() const {
|
|
243
|
+
return targetdist_averages_pntrs_;
|
|
244
|
+
}
|
|
245
|
+
//
|
|
246
|
+
bool isBiasOutputActive() const {
|
|
247
|
+
return bias_output_active_;
|
|
248
|
+
}
|
|
249
|
+
unsigned int getBiasOutputStride() const {
|
|
250
|
+
return bias_output_stride_;
|
|
251
|
+
}
|
|
252
|
+
void setBiasOutputStride(unsigned int stride) {
|
|
253
|
+
bias_output_stride_=stride;
|
|
254
|
+
}
|
|
255
|
+
void writeBiasOutputFiles() const;
|
|
256
|
+
//
|
|
257
|
+
bool isFesOutputActive() const {
|
|
258
|
+
return fes_output_active_;
|
|
259
|
+
}
|
|
260
|
+
unsigned int getFesOutputStride() const {
|
|
261
|
+
return fes_output_stride_;
|
|
262
|
+
}
|
|
263
|
+
void setFesOutputStride(unsigned int stride) {
|
|
264
|
+
fes_output_stride_=stride;
|
|
265
|
+
}
|
|
266
|
+
void writeFesOutputFiles() const;
|
|
267
|
+
//
|
|
268
|
+
bool isFesProjOutputActive() const {
|
|
269
|
+
return fesproj_output_active_;
|
|
270
|
+
}
|
|
271
|
+
unsigned int getFesProjOutputStride() const {
|
|
272
|
+
return fesproj_output_stride_;
|
|
273
|
+
}
|
|
274
|
+
void setFesProjOutputStride(unsigned int stride) {
|
|
275
|
+
fesproj_output_stride_=stride;
|
|
276
|
+
}
|
|
277
|
+
void writeFesProjOutputFiles() const;
|
|
278
|
+
//
|
|
279
|
+
bool isTargetDistOutputActive() const {
|
|
280
|
+
return targetdist_output_active_;
|
|
281
|
+
}
|
|
282
|
+
unsigned int getTargetDistOutputStride() const {
|
|
283
|
+
return targetdist_output_stride_;
|
|
284
|
+
}
|
|
285
|
+
void setTargetDistOutputStride(unsigned int stride) {
|
|
286
|
+
targetdist_output_stride_=stride;
|
|
287
|
+
}
|
|
288
|
+
void writeTargetDistOutputFiles() const;
|
|
289
|
+
//
|
|
290
|
+
bool isTargetDistProjOutputActive() const {
|
|
291
|
+
return targetdist_proj_output_active_;
|
|
292
|
+
}
|
|
293
|
+
unsigned int getTargetDistProjOutputStride() const {
|
|
294
|
+
return targetdist_proj_output_stride_;
|
|
295
|
+
}
|
|
296
|
+
void setTargetDistProjOutputStride(unsigned int stride) {
|
|
297
|
+
targetdist_proj_output_stride_=stride;
|
|
298
|
+
}
|
|
299
|
+
void writeTargetDistProjOutputFiles() const;
|
|
300
|
+
//
|
|
301
|
+
};
|
|
302
|
+
|
|
303
|
+
inline
|
|
304
|
+
double Optimizer::StepSize(const unsigned int coeffs_id) const {
|
|
305
|
+
return stepsizes_[coeffs_id];
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
inline
|
|
309
|
+
CoeffsVector& Optimizer::Coeffs(const unsigned int coeffs_id) const {
|
|
310
|
+
return *coeffs_pntrs_[coeffs_id];
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
inline
|
|
314
|
+
CoeffsVector& Optimizer::AuxCoeffs(const unsigned int coeffs_id) const {
|
|
315
|
+
return *aux_coeffs_pntrs_[coeffs_id];
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
inline
|
|
319
|
+
CoeffsVector& Optimizer::Gradient(const unsigned int coeffs_id) const {
|
|
320
|
+
return *gradient_pntrs_[coeffs_id];
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
inline
|
|
324
|
+
CoeffsMatrix& Optimizer::Hessian(const unsigned int coeffs_id) const {
|
|
325
|
+
plumed_massert(use_hessian_,"You cannot use the Hessian without asking for before");
|
|
326
|
+
return *hessian_pntrs_[coeffs_id];
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
inline
|
|
330
|
+
CoeffsVector& Optimizer::CoeffsMask(const unsigned int coeffs_id) const {
|
|
331
|
+
return *coeffs_mask_pntrs_[coeffs_id];
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
inline
|
|
335
|
+
std::vector<double> Optimizer::getStepSizes() const {
|
|
336
|
+
return stepsizes_;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
inline
|
|
340
|
+
std::vector<double> Optimizer::getCurrentStepSizes() const {
|
|
341
|
+
return current_stepsizes;
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
inline
|
|
345
|
+
double Optimizer::getStepSize(const unsigned int coeffs_id) const {
|
|
346
|
+
return stepsizes_[coeffs_id];
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
inline
|
|
350
|
+
double Optimizer::getCurrentStepSize(const unsigned int coeffs_id) const {
|
|
351
|
+
return current_stepsizes[coeffs_id];
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
inline
|
|
355
|
+
void Optimizer::setStepSizes(const std::vector<double>& stepsizes_in) {
|
|
356
|
+
plumed_assert(stepsizes_in.size()==ncoeffssets_);
|
|
357
|
+
stepsizes_ = stepsizes_in;
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
inline
|
|
361
|
+
void Optimizer::setStepSize(const double stepsize_in, const unsigned int coeffs_id) {
|
|
362
|
+
stepsizes_[coeffs_id] = stepsize_in;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
inline
|
|
366
|
+
void Optimizer::setCurrentStepSize(const double current_stepsize_in, const unsigned int coeffs_id) {
|
|
367
|
+
current_stepsizes[coeffs_id] = current_stepsize_in;
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
inline
|
|
371
|
+
void Optimizer::setCurrentStepSizes(const std::vector<double>& current_stepsizes_in) {
|
|
372
|
+
plumed_assert(current_stepsizes_in.size()==ncoeffssets_);
|
|
373
|
+
current_stepsizes = current_stepsizes_in;
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
inline
|
|
377
|
+
unsigned int Optimizer::getIterationCounter() const {
|
|
378
|
+
return iter_counter;
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
inline
|
|
382
|
+
double Optimizer::getIterationCounterDbl() const {
|
|
383
|
+
return static_cast<double>(iter_counter);
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
inline
|
|
387
|
+
void Optimizer::increaseIterationCounter() {
|
|
388
|
+
iter_counter++;
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
inline
|
|
392
|
+
void Optimizer::setIterationCounter(const unsigned int iter_counter_in) {
|
|
393
|
+
iter_counter = iter_counter_in;
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
|
|
397
|
+
template<class T>
|
|
398
|
+
bool Optimizer::parseMultipleValues(const std::string& keyword, std::vector<T>& values) {
|
|
399
|
+
plumed_assert(ncoeffssets_>0);
|
|
400
|
+
plumed_assert(values.size()==0);
|
|
401
|
+
bool identical_values=false;
|
|
402
|
+
//
|
|
403
|
+
parseVector(keyword,values);
|
|
404
|
+
if(values.size()==1 && ncoeffssets_>1) {
|
|
405
|
+
values.resize(ncoeffssets_,values[0]);
|
|
406
|
+
identical_values=true;
|
|
407
|
+
}
|
|
408
|
+
if(values.size()>0 && values.size()!=ncoeffssets_) {
|
|
409
|
+
std::string s1;
|
|
410
|
+
Tools::convert(ncoeffssets_,s1);
|
|
411
|
+
plumed_merror("Error in " + keyword + " keyword: either give 1 common value for all coefficient sets or " + s1 + " separate value for each set");
|
|
412
|
+
}
|
|
413
|
+
return identical_values;
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
template<class T>
|
|
417
|
+
bool Optimizer::parseMultipleValues(const std::string& keyword, std::vector<T>& values, const T& default_value) {
|
|
418
|
+
bool identical_values = parseMultipleValues(keyword,values);
|
|
419
|
+
if(values.size()==0) {
|
|
420
|
+
values.resize(ncoeffssets_,default_value);
|
|
421
|
+
identical_values=true;
|
|
422
|
+
}
|
|
423
|
+
return identical_values;
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
inline
|
|
427
|
+
void Optimizer::parseFilenames(const std::string& keyword, std::vector<std::string>& fnames, const std::string& default_fname) {
|
|
428
|
+
if(parseMultipleValues<std::string>(keyword,fnames,default_fname)) {
|
|
429
|
+
addCoeffsSetIDsToFilenames(fnames,coeffssetid_prefix_);
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
inline
|
|
434
|
+
void Optimizer::parseFilenames(const std::string& keyword, std::vector<std::string>& fnames) {
|
|
435
|
+
if(parseMultipleValues<std::string>(keyword,fnames)) {
|
|
436
|
+
addCoeffsSetIDsToFilenames(fnames,coeffssetid_prefix_);
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
|
|
440
|
+
|
|
441
|
+
}
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
#endif
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
2
|
+
Copyright (c) 2016-2021 The VES code team
|
|
3
|
+
(see the PEOPLE-VES file at the root of this folder for a list of names)
|
|
4
|
+
|
|
5
|
+
See http://www.ves-code.org for more information.
|
|
6
|
+
|
|
7
|
+
This file is part of VES code module.
|
|
8
|
+
|
|
9
|
+
The VES code module is free software: you can redistribute it and/or modify
|
|
10
|
+
it under the terms of the GNU Lesser General Public License as published by
|
|
11
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
12
|
+
(at your option) any later version.
|
|
13
|
+
|
|
14
|
+
The VES code module is distributed in the hope that it will be useful,
|
|
15
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
16
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
17
|
+
GNU Lesser General Public License for more details.
|
|
18
|
+
|
|
19
|
+
You should have received a copy of the GNU Lesser General Public License
|
|
20
|
+
along with the VES code module. If not, see <http://www.gnu.org/licenses/>.
|
|
21
|
+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
|
|
22
|
+
#ifndef __PLUMED_ves_TargetDistModifer_h
|
|
23
|
+
#define __PLUMED_ves_TargetDistModifer_h
|
|
24
|
+
|
|
25
|
+
#include <vector>
|
|
26
|
+
#include <cmath>
|
|
27
|
+
|
|
28
|
+
namespace PLMD {
|
|
29
|
+
namespace ves {
|
|
30
|
+
|
|
31
|
+
class TargetDistModifer {
|
|
32
|
+
public:
|
|
33
|
+
virtual double getModifedTargetDistValue(const double targetdist_value, const std::vector<double>& cv_values) const = 0;
|
|
34
|
+
virtual ~TargetDistModifer() {}
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
class WellTemperedModifer:public TargetDistModifer {
|
|
38
|
+
private:
|
|
39
|
+
double invbiasf_;
|
|
40
|
+
public:
|
|
41
|
+
explicit WellTemperedModifer(double biasfactor):invbiasf_(1.0/biasfactor) {}
|
|
42
|
+
double getModifedTargetDistValue(const double targetdist_value, const std::vector<double>& cv_values) const override {
|
|
43
|
+
return std::pow(targetdist_value,invbiasf_);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
#endif
|