MolecularDynamicsMeltQuench

class MolecularDynamicsMeltQuench(amorphous_quality=None, max_retries=None, melt_quality=None, max_melt_retries=None, melt_temperature=None, melt_time=None, quench_temperature=None, quench_rate=None, time_step=None, random_seed=None)

Base class for melt/quench amorphization methods

Parameters:
  • amorphous_quality (float) – Expected quality for the amorphous material, 0 to 1. 1 being free of defects.
    Default: 0.75
  • max_retries (int) – Maximum number of tries to satisfy amorphous quality
    Default: 2
  • melt_quality (float) – Requested percentage of melted material
    Default: 0.35
  • max_melt_retries (float) – Maximum number of tries to melt the material with the requested quality
    Default: same as max_retries
  • melt_temperature (PhysicalQuantity of type temperature) – Suggested melt temperature
    Default: 5000*Kelvin
  • melt_time (PhysicalQuantity of type time) – The length of the melt MD simulation.
    Default: 40*picosecond
  • quench_temperature (PhysicalQuantity of type temperature) – The target temperature during the quenching MD simulation.
    Default: 300*Kelvin
  • quench_rate (PhysicalQuantity of type temperature per time) – The rate of temperature change during the quenching. This rate will be used to calculate the length of the quenching MD simulation.
    Default: 400*Kelvin/picosecond
  • time_step (PhysicalQuantity of time time) – Time step per iteration
    Default: 1*femtosecond
  • random_seed (int) – Random seed
    Default: 1234
amorphousQuality()
Returns:requested amorphous quality
Return type:float
maxMeltRetries()
Returns:requested maximum number of melt tries
Return type:int
maxRetries()
Returns:requested number of maximum tries
Return type:int
meltQuality()
Returns:requested melt quality
Return type:float
meltSteps()
Returns:The calculated number of melt steps.
Return type:int
meltTemperature()
Returns:requested melt temperature
Return type:PhysicalQuantity of type temperature
meltTime()
Returns:requested melt time
Return type:PhysicalQuantity of type time
quenchRate()
Returns:requested quench rate
Return type:PhysicalQuantity of type temperature per time
quenchTemperature()
Returns:requested quench temperature
Return type:PhysicalQuantity of type temperature
randomSeed()
Returns:random seed
Return type:int
timeStep()
Returns:returns time step
Return type:int

Notes

An example of using this class to create an amorphous structure (used later for diffusivity calculation) is available at Diffusivity calculation in amorphous materials.

Example

This class is to be used as a method of amorphize:

method = MolecularDynamicsMeltQuench(amorphous_quality=0.75)
amorphous = amorphize(reference, method, 'amorphous-Si.hdf5', 'amorphous')