1
0
mirror of https://github.com/TREX-CoE/fparser.git synced 2024-07-22 10:47:46 +02:00
Go to file
2021-03-25 18:09:43 +01:00
modified-libfdf@08f01b2399 submodules created 2021-03-25 16:35:12 +01:00
parser more cleanup 2021-03-25 17:56:48 +01:00
.gitignore reading the det file block 2021-02-23 22:44:22 +01:00
.gitmodules submodules created 2021-03-25 16:35:12 +01:00
LICENSE.md license added 2021-03-25 18:03:08 +01:00
README.md read me included 2021-03-25 18:09:43 +01:00

A Modern Fortran-based Parser

Get the code

The parser uses a modified libfdf library. This is included in this repository as a submodule. To clone the entire project, do

git clone --recurse-submodules https://github.com/TREX-CoE/iof08.git

Compilation

The project contains two directories (a) modified-libfdf and (b) parser.

  • Compile and install the modified-libfdf using the following set of commands
    • ./configure --prefix=/usr/local FC=ifort CC=icc
    • make
    • sudo make install
    • make check

Integrate parser in your code

Features of the parser (including inheritance from libfdf)

  • Include another input file for parser to read using:

%include global.inp

  • Include a data file for parser to read using:

load label filename

Here, depending upon the label, parser will provide the filename. For example,

load basis cc-pvtz.gbs

  • Read molecular coordinates directly from the input file using
%block molecule 
12
 #benzene comment
 C    0.00000    1.40272  0
 H    0.00000    2.49029  0
 C   -1.21479    0.70136  0
 H   -2.15666    1.24515  0
 C   -1.21479   -0.70136  0
 H   -2.15666   -1.24515  0
 C    0.00000   -1.40272  0
 H    0.00000   -2.49029  0
 C    1.21479   -0.70136  0
 H    2.15666   -1.24515  0
 C    1.21479    0.70136  0
 H    2.15666    1.24515  0
%endblock
  • Read molecular coordinates from an external .xyz file using

%block molecule < caffeine.xyz

  • Group certain keywords using the %module construct
%module DMC
    tau     =   0.04
    etrial  = -15 Ha
%endmodule
  • Logical variables accept true, TRUE, T, 1, .true. as valid keywords for true optimize_wavefunction true

bold text

Italic

italicized text

Blockquote

blockquote

Ordered List

  1. First item
  2. Second item
  3. Third item

Unordered List

  • First item
  • Second item
  • Third item

Code

code

Horizontal Rule


title

Image

alt text

Extended Syntax

These elements extend the basic syntax by adding additional features. Not all Markdown applications support these elements.

Table

Syntax Description
Header Title
Paragraph Text

Fenced Code Block

{
  "firstName": "John",
  "lastName": "Smith",
  "age": 25
}

Footnote

Heres a sentence with a footnote. 1

Heading ID

My Great Heading

Definition List

term
definition

Strikethrough

The world is flat.

Task List

  • Write the press release
  • Update the website
  • Contact the media

  1. This is the footnote.↩︎