Difference between revisions of "File formats/Formats/HIN"

From Jmol
Jump to navigation Jump to search
(more content)
(HIN format details)
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
= The HIN file format =
 
= The HIN file format =
This is a native format of Hyperchem, a software sold by  
+
This is a native format of '''Hyperchem''', a software sold by  
 
[http://www.hyper.com/ Hypercube Inc.].  
 
[http://www.hyper.com/ Hypercube Inc.].  
  
 
HIN files are text files that contain several records, each on a separate line.  
 
HIN files are text files that contain several records, each on a separate line.  
Each line, except for a comment, begins with a keyword.  
+
Each line, except for a comment, begins with a keyword. This format specifies both atoms and bonds, as well as other atomic properties.
 
 
A special feature of HIN files is that records can be added or potentially missing without affecting the operation of HyperChem.
 
  
 
The HIN file in addition to storing molecular information may also store information associated with annotations (text, line, ellipse, and rectangle). (''This is not supported by Jmol'')
 
The HIN file in addition to storing molecular information may also store information associated with annotations (text, line, ellipse, and rectangle). (''This is not supported by Jmol'')
Line 16: Line 14:
  
 
== Information ==
 
== Information ==
1st line (excluding comments) (''ignored by Jmol''):
+
''These lines are ignored by Jmol, may they be present or not''.
 +
According to the HIN specification, the first line is compulsory, the others are optional (but other software may produce HIN-formatted files that lack the first line).
 
  forcefield  <force-field-name>
 
  forcefield  <force-field-name>
Optional lines (''ignored by Jmol''):
+
  sys   <...>
  sys  
+
  seed <...>
  seed
+
  view <...>
  view
+
  box   <...>
  box  
 
  
 
== Molecular data ==
 
== Molecular data ==
Each molecule block contains molecule opening lines, several atom blocks and molecule closing lines.
+
A file may contain one or more molecule blocks (delimited by <code>'''mol'''...'''endmol'''</code>) ''and Jmol will read them all into separate frames''.
  
Molecule opening lines (the <code>res</code> line is optional):
+
Each molecule block contains molecule opening lines, several atom blocks and molecule closing lines. In biopolymers, the atom blocks may be grouped into residue blocks
 +
(delimited by <code>'''res'''...'''endres'''</code>), ''but Jmol does not currently support the residue information and will just read all atoms as part of the molecule''.
 +
 
 +
Molecule and residue opening lines (the <code>res</code> line is optional):
 
  mol <number> <name>
 
  mol <number> <name>
 
  res <number> <name> <PDB#> <previous-res#> <next-res#>
 
  res <number> <name> <PDB#> <previous-res#> <next-res#>
  
* A <code>'''mol'''</code> record starts the description of each molecule. It must be matched by an <code>'''endmol'''</code> record. A file may contain one or more <code>'''mol'''...'''endmol'''</code> blocks, ''and Jmol will read them all into separate frames''.
+
* A <code>'''mol'''</code> record starts the description of each molecule. It must be matched by an <code>'''endmol'''</code> record.  
** <code>'''number'''</code> is the number of the molecule in the molecular system, starting with 1.
+
** <code>'''number'''</code> is the number of the molecule in the file, starting with 1.
** <code>'''name'''</code> is a name or description for the molecule (up to 64 characters and enclosed in double quotes).
+
** <code>'''name'''</code> is a name or description for the molecule (up to 64 characters and enclosed in double quotes). ''Not supported by Jmol.''
  
 
* A <code>'''res'''</code> record starts the description of each residue in a molecule. It must be matched by an <code>'''endres'''</code> record. Each <code>'''mol'''...'''endmol'''</code> block may contain none, one or several <code>'''res'''...'''endres'''</code> blocks. ''Jmol does not currently support the residue information.''
 
* A <code>'''res'''</code> record starts the description of each residue in a molecule. It must be matched by an <code>'''endres'''</code> record. Each <code>'''mol'''...'''endmol'''</code> block may contain none, one or several <code>'''res'''...'''endres'''</code> blocks. ''Jmol does not currently support the residue information.''
 
** <code>'''number'''</code> is the number of the residue in the molecule, starting with 1.
 
** <code>'''number'''</code> is the number of the residue in the molecule, starting with 1.
** <code>'''name'''</code> is the name of the residue (up to 4 characters and must be defined in a TPL file).
+
** <code>'''name'''</code> is the name of the residue (up to 4 characters and must be defined in a TPL file).  
 
** <code>'''PDB#'''</code>, <code>'''previous-res#'''</code> and <code>'''next-res#'''</code> preserve information originated in a [[File_formats/Coordinates#PDB|pdb]] file.
 
** <code>'''PDB#'''</code>, <code>'''previous-res#'''</code> and <code>'''next-res#'''</code> preserve information originated in a [[File_formats/Coordinates#PDB|pdb]] file.
  
Line 48: Line 49:
  
 
* <code>'''atom'''</code>
 
* <code>'''atom'''</code>
** <code>'''at#'''</code> is the number identifying the atom in the molecule (must start with 1 and be continuous through a molecule). A combination of atom number and molecule number uniquely identifies an atom in a molecular system.  
+
** <code>'''at#'''</code> is the number identifying the atom in the molecule (must start with 1 and be continuous through a molecule). Therefore a combination of atom number and molecule number uniquely identifies an atom in a file.  
** <code>'''name'''</code> is the name of the atom (up to 4 characters, without spaces or quotes).
+
** <code>'''name'''</code> is the name of the atom (up to 4 characters, without spaces or quotes). ''Not supported by Jmol.''
** <code>'''element'''</code> is the chemical symbol (up to 3 characters).
+
** <code>'''element'''</code> is the chemical symbol (up to 3 characters). ''Supported by Jmol.''
 
** <code>'''type'''</code> is the atom type assigned by a force field (up to 4 characters).
 
** <code>'''type'''</code> is the atom type assigned by a force field (up to 4 characters).
 
** <code>'''flags'''</code> is a series of one-letter flags (without spaces between them):
 
** <code>'''flags'''</code> is a series of one-letter flags (without spaces between them):
Line 58: Line 59:
 
*** s = a selected atom;
 
*** s = a selected atom;
 
*** – = no flag.
 
*** – = no flag.
** <code>'''charge'''</code> is the formal charge.
+
** <code>'''charge'''</code> is the formal charge. ''Jmol reads this as partial charge.''
** <code>'''x y z'''</code> are the coordinates.
+
** <code>'''x y z'''</code> are the coordinates. ''Supported by Jmol.''
 
** <code>'''cn'''</code> is the coordination number, or number of atoms covalently bonded to this atom (an integer, from 0 to 12).
 
** <code>'''cn'''</code> is the coordination number, or number of atoms covalently bonded to this atom (an integer, from 0 to 12).
** <code>'''nbor# nbor-bond'''</code> describes the bonded atoms and the type of bond for each (from 1 to 12 pairs of values, to describe all bonded atoms).
+
** <code>'''nbor# nbor-bond'''</code> describes the bonded atoms and the type of bond for each (from 1 to 12 pairs of values, to describe all atoms bonded to the current one). ''Supported by Jmol.''
 
*** <code>'''nbor#'''</code> is the number identifying the bonded atom;  
 
*** <code>'''nbor#'''</code> is the number identifying the bonded atom;  
 
*** <code>'''nbor-bond'''</code> is the bond type:  
 
*** <code>'''nbor-bond'''</code> is the bond type:  
Line 69: Line 70:
 
**** a = aromatic
 
**** a = aromatic
  
* <code>'''vel'''</code> defines atomic velocities (Ångstroms/picosecond), generated by a molecular dynamics calculation.
+
* <code>'''vel'''</code> defines atomic velocities (in Å per picosecond), generated by a molecular dynamics calculation. ''Not supported by Jmol.''
  
* <code>'''mass'''</code> specifies a non-default mass for the atom, in atomic mass units.  
+
* <code>'''mass'''</code> specifies a non-default mass for the atom (i.e. an isotope), in atomic mass units. ''Not supported by Jmol.''
  
* <code>'''basisset'''</code> is used for ''ab initio'' calculations (''not applicable to Jmol'').
+
* <code>'''basisset'''</code> is used for ''ab initio'' calculations. ''Not applicable to Jmol''.
  
* <code>'''formalcharge'''</code> is another way of defining a formal charge for the atom.
+
* <code>'''formalcharge'''</code> is another way of defining a formal charge for the atom. ''Not supported by Jmol.''
  
Molecule closing lines (the <code>endres</code> line is present only when there was a <code>res</code> line before):
+
Residue and molecule closing lines (the <code>endres</code> line is present only when there was a <code>res</code> line before):
 
  endres <res#>
 
  endres <res#>
 
  endmol <mol#>
 
  endmol <mol#>
 
  
 
= Sources =
 
= Sources =
* ''Appendix D: HIN Files'' in the Reference Manual available from Hypercube's web site.
+
* ''Appendix D: HIN Files'' in the Reference Manual available as part of the installed HyperChem package.

Latest revision as of 15:59, 5 June 2010

The HIN file format

This is a native format of Hyperchem, a software sold by Hypercube Inc..

HIN files are text files that contain several records, each on a separate line. Each line, except for a comment, begins with a keyword. This format specifies both atoms and bonds, as well as other atomic properties.

The HIN file in addition to storing molecular information may also store information associated with annotations (text, line, ellipse, and rectangle). (This is not supported by Jmol)

Note: Several records that are not relevant to Jmol are omitted from this description.

Comments

Comment lines begin with a semicolon (;).

Information

These lines are ignored by Jmol, may they be present or not. According to the HIN specification, the first line is compulsory, the others are optional (but other software may produce HIN-formatted files that lack the first line).

forcefield  <force-field-name>
sys   <...>
seed  <...>
view  <...>
box   <...>

Molecular data

A file may contain one or more molecule blocks (delimited by mol...endmol) and Jmol will read them all into separate frames.

Each molecule block contains molecule opening lines, several atom blocks and molecule closing lines. In biopolymers, the atom blocks may be grouped into residue blocks (delimited by res...endres), but Jmol does not currently support the residue information and will just read all atoms as part of the molecule.

Molecule and residue opening lines (the res line is optional):

mol <number> <name>
res <number> <name> <PDB#> <previous-res#> <next-res#>
  • A mol record starts the description of each molecule. It must be matched by an endmol record.
    • number is the number of the molecule in the file, starting with 1.
    • name is a name or description for the molecule (up to 64 characters and enclosed in double quotes). Not supported by Jmol.
  • A res record starts the description of each residue in a molecule. It must be matched by an endres record. Each mol...endmol block may contain none, one or several res...endres blocks. Jmol does not currently support the residue information.
    • number is the number of the residue in the molecule, starting with 1.
    • name is the name of the residue (up to 4 characters and must be defined in a TPL file).
    • PDB#, previous-res# and next-res# preserve information originated in a pdb file.

Each atom block contains a line and several optional lines:

atom <at#> <name> <element> <type> <flags> <charge> <x> <y> <z> <cn> <nbor# nbor-bond>
vel  <at#>  <x>  <y>  <z>
mass  <at#> <mass>
basisset  <at#> <basis set>
formalcharge  <at#> <formal charge>
  • atom
    • at# is the number identifying the atom in the molecule (must start with 1 and be continuous through a molecule). Therefore a combination of atom number and molecule number uniquely identifies an atom in a file.
    • name is the name of the atom (up to 4 characters, without spaces or quotes). Not supported by Jmol.
    • element is the chemical symbol (up to 3 characters). Supported by Jmol.
    • type is the atom type assigned by a force field (up to 4 characters).
    • flags is a series of one-letter flags (without spaces between them):
      • h = a heteroatom, as defined in PDB files;
      • i = atom is part of an improper torsion;
      • x = a united atom;
      • s = a selected atom;
      • – = no flag.
    • charge is the formal charge. Jmol reads this as partial charge.
    • x y z are the coordinates. Supported by Jmol.
    • cn is the coordination number, or number of atoms covalently bonded to this atom (an integer, from 0 to 12).
    • nbor# nbor-bond describes the bonded atoms and the type of bond for each (from 1 to 12 pairs of values, to describe all atoms bonded to the current one). Supported by Jmol.
      • nbor# is the number identifying the bonded atom;
      • nbor-bond is the bond type:
        • s = single
        • d = double
        • t = triple
        • a = aromatic
  • vel defines atomic velocities (in Å per picosecond), generated by a molecular dynamics calculation. Not supported by Jmol.
  • mass specifies a non-default mass for the atom (i.e. an isotope), in atomic mass units. Not supported by Jmol.
  • basisset is used for ab initio calculations. Not applicable to Jmol.
  • formalcharge is another way of defining a formal charge for the atom. Not supported by Jmol.

Residue and molecule closing lines (the endres line is present only when there was a res line before):

endres <res#>
endmol <mol#>

Sources

  • Appendix D: HIN Files in the Reference Manual available as part of the installed HyperChem package.

Contributors

AngelHerraez