COORDINATE_IO


Function

COORDINATE_IO contains procedures for reading and writing coordinate files in DYNAMO format.

This module is discussed in chapter 2 of the book A Practical Introduction to the Simulation of Molecular Systems.

Dependencies

Module Variables
CONSTANTS UNDEFINED
DEFINITIONS DP
ELEMENTS MASS
FILES NEXT_UNIT
IO_UNITS INPUT, OUTPUT
PARSING Most public items in the module.
STATUS ERROR
STRING DECODE_INTEGER, TO_UPPER_CASE
ATOMS Most public items in the module.
SEQUENCE Most public items in the module.
SYMMETRY Most public items in the module.


Public Variables

None.

Public Procedures

There are three public subroutines in this module.

SubroutinePurpose
COORDINATES_DEFINE Read a DYNAMO coordinate file and redefine the system.
COORDINATES_READ Read a DYNAMO coordinate file using an existing system definition.
COORDINATES_WRITE Write a DYNAMO coordinate file for the current system.


COORDINATES_DEFINE

Argument Type Intent Optional Purpose
FILE Character ( Len = * ) In Yes The coordinate file name.


Error Meaning
I/O Error. There is a problem with the coordinate file.
Invalid atoms, residue or subsystem counter. The number of atoms, residues or subsystems is zero or negative.
SUBSYSTEM label invalid. There is no "Subsystem" tag.
SUBSYSTEM name length invalid. The subsystem name is either too short or too long.
Two SUBSYSTEM names are the same. Two subsystems have the same name.
Invalid number of residues in a subsystem. The number of residues in the subsystem is either zero or negative or so large that the number of residues specified at the top of the file is exceeded.
RESIDUE label invalid. There is no "Residue" tag.
RESIDUE number invalid. The residue number does not correspond to that expected in the sequence.
RESIDUE name length invalid. The residue name is either too short or too long.
Invalid number of atoms in a residue. The number of atoms in the residue is either zero or negative or so large that the number of atoms specified at the top of the file is exceeded.
ATOM name length invalid. The atom name is either too short or too long.
Two ATOM names are the same. Two atoms in a residue have the same name.
ATOM or RESIDUE number mismatch. The numbers of atoms or residues obtained after reading the file do not correspond to the numbers given at the top of the file.




COORDINATES_READ

Argument Type Intent Optional Purpose
FILE Character ( Len = * ) In Yes The coordinate file name.
DATA Real(1:3,1:NATOMS) Out Yes The data read from the file is to be put here.
SELECTION Logical(1:NATOMS) In Yes An atom selection array.


Error Meaning
I/O Error. There is a problem with the coordinate file.
Invalid atoms, residue or subsystem counter. The number of atoms, residues or subsystems does not correspond to that of the system already defined.
SUBSYSTEM label invalid. There is no "Subsystem" tag.
SUBSYSTEM name length invalid. The subsystem name is either too short or too long.
SUBSYSTEM name mismatch. The subsystem in the file does not correspond to that expected from the sequence.
Invalid number of residues in a subsystem. The number of residues in the subsystem does not correspond to that expected from the sequence.
RESIDUE label invalid. There is no "Residue" tag.
RESIDUE number invalid. The residue number does not correspond to that expected in the sequence.
RESIDUE name length invalid. The residue name is either too short or too long.
RESIDUE name mismatch. The residue name does not correspond to that expected from the sequence.
Too many atoms in a residue. There are too many atoms for a residue.
ATOM name length invalid. The atom name is either too short or too long.
ATOM number mismatch. There is a mismatch in the atomic numbers of equivalent atoms.
Unknown ATOM name in residue. A atom in the file does not correspond to one in the sequence.




COORDINATES_WRITE

Argument Type Intent Optional Purpose
FILE Character ( Len = * ) In Yes The coordinate file name.
DATA Real(1:3,1:NATOMS) In Yes The data to be written.
SELECTION Logical(1:NATOMS) In Yes An atom selection array.


Error Meaning
I/O Error. There is a problem with the coordinate file.




Stability

COORDINATES_READ is in need of overhaul. Otherwise, stable.



Back to the DYNAMO Home-Page.