****************************************************** Si16 - Walkthrough of a Simple Calculation ****************************************************** This is a simple walkthrough of an experiment that one can try out, even on a laptop. We will be running MD of a small Si cell. First calculation ****************************************************** We will start out by running a short MD, starting with 3 steps of ab-initio calculations, training a model on that, and later only doing ab-initio calculations at every 10th step. We are running a total of 50 MD steps. Write the following in the input file ``si16.hybrid-md-input.yaml``. .. code-block:: yaml can_update: true check_interval: 10 num_initial_steps: 3 tolerances: ediff: 0.01 # eV You need ``si16.cell`` and ``si16.param`` files as well. See examples here, of 8 atom si. ``si16.cell``: .. code-block:: text %BLOCK LATTICE_CART 7.679180 0.000000 0.000000 0.000000 7.679180 0.000000 0.000000 0.000000 5.430000 %ENDBLOCK LATTICE_CART %BLOCK POSITIONS_ABS Si 0.000000 0.000000 0.000000 Si 1.919795 0.000000 1.357500 Si 1.919795 1.919795 2.715000 Si 0.000000 1.919795 4.072500 Si 0.000000 3.839590 0.000000 Si 1.919795 3.839590 1.357500 Si 1.919795 5.759385 2.715000 Si 0.000000 5.759385 4.072500 Si 3.839590 0.000000 0.000000 Si 5.759385 0.000000 1.357500 Si 5.759385 1.919795 2.715000 Si 3.839590 1.919795 4.072500 Si 3.839590 3.839590 0.000000 Si 5.759385 3.839590 1.357500 Si 5.759385 5.759385 2.715000 Si 3.839590 5.759385 4.072500 %ENDBLOCK POSITIONS_ABS ``si16.param``: .. code-block:: text ############################################################### # functional & general settings ############################################################### xc_functional LDA basis_precision PRECISE ! basis set size from presets fix_occupancy true opt_strategy speed ! faster runtime with more memory use # allow continuation NUM_BACKUP_ITER = 10 ! interval between checkpoints (.check file) continuation: default ! continuation if .check file exists ############################################################### # MD settings ############################################################### task = molecular dynamics md_ensemble = NVT md_thermostat = Langevin md_num_iter = 50 ! number of MD steps we will take md_temperature = 300 K md_sample_iter = 10 ! interval between dumping MD frames md_delta_t = 1 fs ############################################################### # Devel code: contains the `PP_HYBRID` method settings ############################################################### %BLOCK DEVEL_CODE ! turn on the PP & acceleration modules PP=T MD: PP=T :ENDMD PP_HYBRID=T ! settings of model called through QUIP pp: QUIP=T QUIP_PARAM_FILE=GAP.xml quip_init_args:IP GAP:endquip_init_args :endpp ! settings of PP Hybrid MD PP_HYBRID_EXEC: hybrid-md :endPP_HYBRID_EXEC %ENDBLOCK DEVEL_CODE Let's run this! .. code-block:: bash mpirun -n 4 castep.mpi si-0 The code should produce the following: * standard Castep outputs: * ``si16.castep`` main output file (worth reading) * ``si16.md`` MD trajectory * a few more castep files, including a bibliography of the parts used * ``GAP.xml`` model and associated ``GAP.xml.sparseX_