Trajectory package

mesohops.dynamics.hops_trajectory class

class HopsTrajectory(system_param, eom_param={}, noise_param={}, hierarchy_param={}, integration_param={'INCHWORM': False, 'INCHWORM_MIN': 5, 'INTEGRATOR': 'RUNGE_KUTTA'})

Bases: object

HopsTrajectory is the class that a user should interface with to run a single trajectory calculation.

inchworm_integrate(self, state_update, aux_update, tau)

This function performs inchworm integration.

Parameters
1. state_update
  1. list_state_newlist

    list of new states

  2. state_stablelist

    list of stable states in the current basis

  3. list_add_statelist

    list of new states that were not in previous state list

2. aux_update
  1. aux_newlist

    list of new auxiliaries

  2. stable_auxlist

    list of stable auxiliaries in the current basis

  3. add_auxlist

    list of new auxiliaries that were not in the previous aux list

3. taufloat

the time step

Returns
  1. state_update
    1. list_state_newlist

      list of new states

    2. state_stablelist

      list of stable states in the current basis

    3. list_add_statelist

      list of new states that were not in previous state list

  2. aux_update
    1. aux_newlist

      list of new auxiliaries

    2. stable_auxlist

      list of stable auxiliaries in the current basis

    3. add_auxlist

      list of new auxiliaries that were not in the previous aux list

3. phinp.array

the full state of the hierarchy normalized if appropriate

initialize(self, psi_0, store_aux=False)

This function initializes the trajectory module by ensuring that each sub-component is prepared to begin propagating a trajectory.

Parameters
1. psi_0np.array

Wave function at initial time

Returns
None
make_adaptive(self, delta_h=0.0001, delta_s=0.0001)

This is a convenience function for transforming a not-yet-initialized HOPS trajectory from a standard hops to an adaptive HOPS approach.

Parameters
1. delta_hfloat < 1

The value of the adaptive grid for the hierarchy of auxiliary nodes

2. delta_sfloat < 1

The value of the adaptive grid in the system basis

Returns
None
normalize(self, phi)

This is the function that re-normalizes the wave function at each step to correct for loss of norm due to finite numerical accuracy

Parameters
1. phinp.array

the current full state of the hierarchy

Returns
1. phinp.array

the full state of the hierarchy normalized if appropriate

propagate(self, t_advance, tau)

This is the function that perform integration along fixed time-points. The kind of integration that is performed is controlled by ‘step’ which was setup in the initialization.

Parameters
1. t_advancefloat

How far out in time the calculation will run

2. taufloat

the time step

Returns
None

mesoshops.dynamics.hops_storage class

class AdaptiveTrajectoryStorage

Bases: mesohops.dynamics.hops_storage.TrajectoryStorage

This is an object that manages storing information for a HOPS trajectory.

class TrajectoryStorage

Bases: object

This is an object that manages storing information for a HOPS trajectory.