Name

record — A description of how to report the calculations.

Description

The record element contains information how to report the calculation results.

Processing expectations

Append or overwrite output files to record progresses of a simulation.

Parents

mdsim

Children

The following elements occur in simulation: attrib

Attributes

name

Required, the name of an object to be recorded.

format

Optional, the file format of a record. Default value depends on the name attribute.

stride

Optional, If a positive integer is given, the record is performed every stride steps. Default is -1, indicating that the record is done only once at the end of the loop.

condition

Optional, (append | overwrite). If condition="append" the record is appended. If condition="overwrite" the record is overwritten.

target

Optional, the target particle set to record, if multiple sets exist.

Implementation details

The record element adds a record engine for high-level objects, such as particle, potential, and ensemble. Each record engine can further refine what to write and how to write. For instance, when record is used to dump the current configuration for restart, the record engine will write everything about the configuration. On the other, when the record is in append mode, it can choose to write only selected attributes of the object.

The format of the records is wide open. The choices ohmms have made are primarily to use existing packages. If there is no reliable tool or standard, we use xml/hdf5 standards that can be easily translated into any format.

  • ensemble : fixed column data that can be easily plotted with programs like xmgrace

  • particle : xmolArray is the used for typical molecular viewers (xmol-like). Otherwise, using xml/hdf5 format is the most efficient and portable.

  • potential : evolving. Nothing much to write but for quantum simulations, the electronic structure needs to be recorded. The data types can be anything and there isn's any standard tool one can use without some modifications. We expect to use some xml standards and a bunch of xsl files to transform from one format to the others.

Examples

This example shows how to propagate the particle set for 10x1000 steps and record i) the properties of the ensemble, ii) the current position and ii) the complete configuration of the particle set to restart.

  <mdsim>
     <potential name="MEAM">
        <filename>MEAMPOT.Si</filename>
     </potential>
     <ensemble name="evn">
        <parameter name="temperature" condition="K">1000</parameter>
        <parameter name="timestep" condition="fsec">1.1</parameter>
     </ensemble>

     <loop blocks="10" steps="1000">      

        <!-- record extensive properties of the particle set, total energy etc -->
        <record name="ensemble" stride="10"/>

        <!-- record position of the particle set during a simulation -->
        <record name="particle" format="ascii" stride="1000" condition="append">
           <attrib name="position" datatype="xmolArray"/>
        </record>

        <!-- dump everything of the particle set at every stride step -->
        <record name="particle" stride="1000" format="hdf5" condition="overwrite"/>
     </loop>
  </mdsim>