Dear Sir,
I have two points here,
1) In case of checkpoint handler if I will fix it in the following way for the I-V curve calculations (in the explicit voltage list code to calculate transmissions), will it be correct? I am really confused here. Suppose the my scf calculation is interrupted after a voltage of 0.25V but before the converged result of 0.5V, will it save upto that point within that checkpoint file?
#----------------------------------------
# Device Calculator
#----------------------------------------
calculator = DeviceLCAOCalculator(
basis_set=basis_set,
exchange_correlation=exchange_correlation,
numerical_accuracy_parameters=device_numerical_accuracy_parameters,
electrode_calculators=
[left_electrode_calculator, right_electrode_calculator],
)
[color=red]# Set Checkpoint file
checkpoint_handler = CheckpointHandler('/home/ram/Desktop/checkpoint_files/checkpoint.nc', 20*Minute)
calculator = DeviceLCAOCalculator(checkpoint_handler=checkpoint_handler)[/color]
# Define the bias voltages for the I-V curve
voltage_list=[0, 0.25, 0.5, 0.75, 1.0]*Volt
# Loop over the bias voltages
for voltage in voltage_list:
# Set electrode voltages and use the self-consistent state of the previous calculation as starting guess
device_configuration.setCalculator(
calculator(electrode_voltages=(voltage/2, -voltage/2)),
initial_state=device_configuration)
device_configuration.update()
nlsave('device.nc', device_configuration)
# Calculate and save the transmission spectrum for each bias
transmission(device_configuration)
2) Now, if I want to restart the scf calculation from that checkpoint file for the next bias (i.e. 0.5V) then can I use the command
device_configuration = nlread("checkpointfile.nc")[0]
device_configuration.update(force_restart=True)
in the place of the device_configuration.update() which is within the bias loop [
http://quantumwise.com/publications/tutorials/mini-tutorials/142-restarting-stopped-calculations ] to start from that interrupted stage?
As this device_configuration.update() is within the loop, so I am quite confused whether when it goes for next scf calculations for voltage 0.75V, will it consider the 0.5V device configuration as the initial configuration or not (I mean, will it take the checkpoint file again for its initial state or the 0.5V device configuration?).
Or if there is any specific way to use the checkpoint file to use for a interrupted I-V calculations after a certain iteration of a specific bias without restarting from the previous converged state, then please let me know. It will be very much helpful to handle a long simulation.
Thanking you,
Ramkrishna