pyvibdmc.simulation_utilities.initial_conditioner ================================================= .. py:module:: pyvibdmc.simulation_utilities.initial_conditioner Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/pyvibdmc/simulation_utilities/initial_conditioner/finite_difference/index /autoapi/pyvibdmc/simulation_utilities/initial_conditioner/harmonic_analysis/index /autoapi/pyvibdmc/simulation_utilities/initial_conditioner/initial_conditioner/index Classes ------- .. autoapisummary:: pyvibdmc.simulation_utilities.initial_conditioner.MolFiniteDifference pyvibdmc.simulation_utilities.initial_conditioner.HarmonicAnalysis pyvibdmc.simulation_utilities.initial_conditioner.InitialConditioner Package Contents ---------------- .. py:class:: MolFiniteDifference Helper to calculate derivatives of some value as a function of Cartesian displacements in a molecule. .. py:attribute:: weights_der1 .. py:attribute:: weights_der2 .. py:method:: displace_molecule(eq_geom, atm_cd, dx, num_disps) :staticmethod: Displace atm along cd :param eq_geom: Geometry from which you will be displaced :param atm_cd: a tuple that has a paricular atom of interest to displace in a particular dimension (x,y,or,z) :param dx: The amount each geometry will be replaced :param num_disps: int of how many displacements to do, will take the form of 3 or 5 for harmonic analysis. :return: Displaced coordinates in a 3D array (n,m,3). If displaced in two directions, then still (n,m,3) .. py:method:: differentiate(values, dx, num_points, der) :classmethod: .. py:class:: HarmonicAnalysis(eq_geom, atoms, potential, masses=None, dx=0.001, points_diag=5, points_off_diag=3, dipole=None) .. py:attribute:: eq_geom .. py:attribute:: atoms .. py:attribute:: potential .. py:attribute:: masses :value: None .. py:attribute:: dx :value: 0.001 .. py:attribute:: points_diag :value: 5 .. py:attribute:: points_off_diag :value: 3 .. py:attribute:: num_elems .. py:attribute:: dipole :value: None .. py:method:: generate_hessian() .. py:method:: dipole_derivs() .. py:method:: diagonalize(hessian) .. py:method:: run() .. py:class:: InitialConditioner(coord, atoms, num_walkers, technique, technique_kwargs, masses=None) If given a minimum energy geometry of the system you are trying to run, it will generate a preliminary ensemble. In one instance, you can calculate the harmonic frequencies and normal modes, and then sample the harmonic 3N-6 ground state wave function along those normal modes. Will, in the future, handle other initial conditions. .. py:attribute:: coord .. py:attribute:: atoms .. py:attribute:: masses :value: None .. py:attribute:: num_walkers .. py:attribute:: technique .. py:attribute:: technique_kwargs .. py:method:: gen_disps(sigmas) .. py:method:: displace_along_nms(freqz, nmz, massez, ensemble) .. py:method:: run_harm() .. py:method:: run_permute() Must pass in a list of lists. .. py:method:: run()