All plugins
WorkChains and work functions aiida.workflows
aiida-QECpWorkChain
Car-Parrinello Work Chain with Quantum Espresso. This workchain does a full CP simulation, from the choice of the electronic mass and the timestep, to the choice of the best parallelization options, and then it does the NPT equilibration and a final NVE simulation at the prescribed P and T. Automates as much as possible.
status beta
AiiDA
>=2.0.0,<3.0.0
General information
Registry checks
W006: 'development_status' key is deprecated. Use PyPI Trove classifiers in the plugin repository instead.
Click any code (W001, E001…) to jump to
troubleshooting instructions
.
Plugins provided
Workflows 1
Entry points
-
qecpworkchain.cp
class:aiida_QECpWorkChain.workflow:CpWorkChainNo description available
Input Required Valid types Description cp_codetrue Codecp_resources_cg_listtrue ListSame as cp_resources_cp_list but when doing a CG. The CG uses a different amount of resource and can use no band or task group parallelization. cp_resources_cp_listtrue ListList of dictionary like the following: { 'resources' : { 'num_machines' : 2, 'num_mpiprocs_per_machine' : 48, }, 'wallclock' : 3600, 'queue' : 'queue_name', 'account': 'account_name', } c,porturrently only the first element of the list is used. 'wallclock' is the maximum time that can be requested to the scheduler. This code can decide to ask for less. ecutwfctrue Floatwavefunction cutoff (Ry), like in the QE input pseudo_familytrue Strpseudopotential family to use, as in usual aiida operations pw_codetrue Codeinput pw code (used to calculate force ratio) pw_resources_listtrue ListSame as cp_resources_cp_list but for pw.x code. structuretrue StructureData, TrajectoryDataInput structure. If a trajectory is given, the workchain will use its last step to start the CG. If velocities are present, they will be used to initialize the simulation. Note that if you use a trajectory, usually kind information (like mass) are not included, so default values will be used. If you want to include kind information or override those provided with the input structure, use the input structure_kinds thermobarostat_pointstrue ListList of dicts, each with the format [ { "temperature_K": 1000, "pressure_KBar": 10 , "equilibration_time_ps": 5.0, "thermostat_time_ps": 5.0} ]. The simulation will loop over this list of dictionaries, in the same order, equilibrating for the specified time at the given P,T point. Every point is repeated if the average T and P are not within the specified ranges additional_parameters_cpfalse Dictparameters that will be included in the settings input of the QE CP plugin. These settings will be added on top of the default one. Same format as plugin input adjust_ionic_massfalse BoolMultiply the mass of the ions by the corresponding force ration between the cp forces and pw forces -- that is less than 1. Note that averages of static properties do not depend on the ionic masses. benchmark_emass_dt_walltime_sfalse Floatsame as benchmark_parallel_walltime_s but for dermining the best electronic mass and timestep. benchmark_parallel_walltime_sfalse Floattime requested to the scheduler during the test for finding the best parallelization parameters. cmdline_cpfalse List, NoneTypeadditional command line parameters of the cp verlet caclulations only (for example parallelization options) default_nose_frequencyfalse Floatdefault nose frequency when a frequency cannot be estimated from the vibrational spectrum dtfalse Float, NoneTypetimestep in atomic units, if not automatically chosen. dt_start_stop_stepfalse Listlist of timesteps to try. Timesteps are changed to better integrate the equation of motion. When a new electronic mass is selected by this workchain timesteps are automatically adjusted. emassfalse Float, NoneTypeelectronic mass, atomic mass units, if not automatically chosen emass_listfalse Listlist of electronic masses to try. The emass is selected in order to satisfy the requested CP/DFT force ratio. initial_atomic_velocities_A_psfalse ArrayData, NoneTypeoptional input initial velocities in angstrom over picoseconds max_slope_constfalse Floatmax slope in K/ps of the constant of motion linear fit. max_slope_ekincfalse Floatmax slope in K/ps of the ekinc linear fit. If not satisfied try to change emass max_slope_min_emassfalse Floatminimum possible value of electronic mass that can be set by the max_slope correction routine. Will not go lower than that. max_slope_min_psfalse Floatminimum required lenght in ps of the last trajectory to do the linear fit on ekinc and const of motion metadatafalse min_traj_steps_vdosfalse Intminimum number of steps to consider the calculated vibrational spectrum maximum valid, to set the thermostat frequency minimum_nose_frequencyfalse Floatminimum nose frequency: if the frequency estimated from the vibrational spectrum is lower than this value, this value is used nstep_initial_cgfalse IntAt the beginning of the simulation the CP algorithm is not used. This is the number of steps to do using Born-Oppenheimer molecular dynamics algorithm with a conjugate gradient minimization of the electronic ground state. nstep_parallel_testfalse Intthe benchmark simulations will be that long, if performed number_of_pw_per_trajectoryfalse IntNumber of pw submitted for every trajectory during calculation of force ratio. nve_required_picosecondsfalse FloatThe equilibrated NVE simulation will last at least this number of picoseconds. How much picoseconds do you want? pressure_tolerancefalse FloatPressure tolerance in kBar used to say if the npt is equilibrated. If not setted, use the standard deviation of the P time series skip_emass_dt_testfalse Boolskip_parallel_testfalse Booldo not run run benchmarks to discover a good internal Quantum Espresso parallelization scheme for the current system skip_thermobarostatfalse Boolstructure_kindsfalse List, NoneTypeThese kinds will be used to override or set the masses of the various atomic types. Note that the workflow, if skip_emass_dt_test is True, will calculate the ratio between cp forces and pw forces and adjust the provided masses automatically according to this ratio. So if you provide this input, make sure to set skip_emass_dt_test to True and set also the inputs emass and dt, or "bad things can happen" target_force_ratiofalse FloatThe forces calculated by the Car-Parrinello method are affected by two types of error: one is due to the oscillations of the electrons around the DFT energy minimum, and the second is due to the finite mass of the electronic fluid that produces a _sistematic_ error in the forces, as if the electrons add mass to the ionic core. This second kind of error is can be controlled by this parameter, that tries to adjust the electronic mass to obtain the desidered ratio between CP forces and true DFT forces. Then you may want to modify the ionic mass to correct the leading factor of this error. temperature_tolerancefalse FloatTemperature tolerance in K used to say if the npt is equilibrated. If not setted, use the standard deviation of the T time series tempw_initial_randomfalse Float, NoneTypeIf provided, sets the initial temperature when randomly initializing the starting velocities. Output Required Valid types Description dttrue FloatThe best integration timestep found emasstrue FloatThe best electronic mass found full_trajtrue TrajectoryDataThe full merged trajectory of all the simulations nve_prod_trajtrue TrajectoryDataThe trajectory of the last NVE simulation cmdline_cpfalse ListThe best command line parameters for the cp code kindsfalse ListThe kinds for the structure with the modified ionic masses Exit status Message 1 The process has failed with an unspecified error. 2 The process failed with legacy failure mode. 10 The process returned an invalid output. 11 The process did not register a required output. 401 The initial cg steps failed. I cannot start to work. 402 Nose-Hoover thermostat failed. 403 Final cg after Nose-Hoover failed. 404 Error in the NVE simulation 405 The simulations are calculating very expensive random numbers. There is something wrong (cutoff? metal? boo?) 406 Wrong input parameters 407 Parallel test was not succesful, maybe there is something more wrong. 408 Multiple errors in the simulation that cannot fix. 409 This is a bug in the workchain. 410 The initial simulation failed. I cannot start to work. Probably the configuration is not suitable for a molecular dynamics run or the trial integration timestep is too big