espressopp.integrator.LangevinThermostatHybridΒΆ

As LangevinThermostat, but for use in AdResS systems, to allow the application of different thermostat friction constants (\(\gamma\)) to different AdResS regions. Uses three values of \(\gamma\), one for the atomistic region, one for the hybrid region, and one for the coarse-grained region.

>>> # create FixedTupleList object
>>> ftpl = espressopp.FixedTupleListAdress(system.storage)
>>> ftpl.addTuples(tuples)
>>> system.storage.setFixedTuplesAdress(ftpl)
>>>
>>> system.storage.decompose()
>>>
>>> # create Langevin thermostat
>>> thermostat             = espressopp.integrator.LangevinThermostatHybrid(system,ftpl)
>>>
>>> # set Langevin friction constants
>>> thermostat.gamma       = 0.0 # units = 1/timeunit
>>> print "# gamma for atomistic region for langevin thermostat = ",thermostat.gamma
>>> thermostat.gammahy     = 10.0 # units = 1/timeunit
>>> print "# gamma for hybrid region for langevin thermostat = ",thermostat.gammahy
>>> thermostat.gammacg     = 10.0 # units = 1/timeunit
>>> print "# gamma for coarse-grained region for langevin thermostat = ",thermostat.gammacg
>>>
>>> # set temperature of thermostat
>>> thermostat.temperature = kBT
>>> # kBT is a float with the value of temperature in reduced units, i.e. temperature * Boltzmann's constant in appropriate units

No need to include the line

>>> thermostat.adress = True

as is necessary in the case of the basic LangevinThermostat, because LangevinThermostatHybrid is always only used in AdResS systems