Author Topic: about Non-Equilibrium Momentum ExchangeType  (Read 3011 times)

0 Members and 1 Guest are viewing this topic.

Offline hydro

  • Regular QuantumATK user
  • **
  • Posts: 11
  • Country: 00
  • Reputation: 0
    • View Profile
about Non-Equilibrium Momentum ExchangeType
« on: November 19, 2015, 15:34 »
Hi,
In Non-Equilibrium Momentum ExchangeType, can I change the temperature of heat source or heat sink?

Offline Julian Schneider

  • QuantumATK Staff
  • QuantumATK Guru
  • *****
  • Posts: 164
  • Country: dk
  • Reputation: 25
    • View Profile
Re: about Non-Equilibrium Momentum ExchangeType
« Reply #1 on: November 20, 2015, 09:05 »
No, for this technique it is generally not possible to explicitly set the temperatures in the heat source and sink regions. You can only indirectly modify the temperature difference by changing the exchange interval.

If you really want to explicitly set a temperature difference, you can invoke a NVTNoseHooverChain thermostat with two thermostatted regions, e.g. something like

NVTNoseHooverChain(initial_velocity=ConfigurationVelocities(),
                 time_step=1.0*fs,
                 reservoir_temperatures=[('heat_source' , 400.0*Kelvin), ('heat_sink', 200.0*Kelvin)]
                 )
               
where the two regions are marked by tags.
However, the total momentum will probably not be conserved in such a simulation, and your system will start drifting. To avoid this, you might need to constrain at least one atom in one of the thermostatted regions.
« Last Edit: November 20, 2015, 09:06 by Julian Schneider »

Offline hydro

  • Regular QuantumATK user
  • **
  • Posts: 11
  • Country: 00
  • Reputation: 0
    • View Profile
Re: about Non-Equilibrium Momentum ExchangeType
« Reply #2 on: November 22, 2015, 07:07 »
Thank you!