MAPLE - General Introduction

A computational chemistry software package designed for molecular modeling and quantum chemical calculations.

MAPLE is a computational chemistry software package designed for molecular modeling and quantum chemical calculations. It provides a unified computational environment suitable for research at different theoretical levels. The software can handle a wide variety of chemical systems, ranging from small molecules to complex reaction networks. Its modular design allows users to perform different types of calculations within a consistent framework and to flexibly control computational parameters and accuracy requirements.

Supported Job Types

MAPLE currently supports the following major job types:

  • Single Point: Compute molecular energies and related properties at fixed geometries.
  • Optimization: Locate equilibrium geometries based on user-defined convergence criteria.
  • Scan: Map potential energy changes along specified structural coordinates.
  • Frequency: Calculate vibrational frequencies and thermodynamic corrections.
  • Transition State: Search for reaction saddle points using various algorithms.
  • IRC: Trace the intrinsic reaction coordinate connecting reactants and products through a transition state.

All modules in MAPLE maintain consistent input structure, parameter naming, and output format, allowing users to efficiently switch between different computational tasks.

Part I - Setting

MAPLE input files (.inp) consist of three main sections, each for specific instructions and parameters, as detailed below.

All control commands in the .inp file begin with the "#" symbol. This section defines the calculation type, selects the model, specifies the computational device, sets method parameters, and configures other global options. During input processing, these commands are parsed first to determine the calculation task and its parameter settings.

#model=

Specifies the machine learning potential model to be used for the calculation. Supported models include ani2x, ani1x, ani1ccx, ani1xnr, maceoff23s, maceoff23m, maceoff23l, egret, aimnet2, and uma.

Example: #model = ani2x

#device=

Specifies the hardware device on which the calculation will run. Supported options include cpu, cuda, gpu0, gpu1, etc.

Example: #device = cpu
#device = cuda
#device = gpu0

#gpuid=

Specifies the GPU device ID. Only integer values such as 0 or 1 are accepted.

Example: #gpuid = 0

#d4=

A global boolean flag used to enable or disable the D4 dispersion correction.

Example: #d4 = true
#d4 = false
#d4 (equivalent to #d4 = true)

Task type configuration

We support several computational tasks, including sp (Single Point), opt (Optimization), scan (Scan), freq (Frequency), ts (Transition State), and irc (IRC).

Task Syntax: #taskname(parameters) A task is invoked by writing the task keyword after "#", and parameter values (if any) are set inside parentheses.

Example: #opt(method=lbfgs, convergence=1e-5)

Note:

  • If only the task name is given and no parameters are provided, the program automatically uses the default parameter set for that job type. Example: #ts
  • If the input file does not define any task type, MAPLE automatically performs a single point energy calculation (sp) using the default settings.

Solvent - #solv

#solv is used in MAPLE to activate solvent treatment. This directive enables either implicit solvent modeling or the construction of explicit solvation environments. For detailed descriptions of available modes, parameters, and usage examples, please refer to the Solvent section.

Part II - Coordinate

The coordinate section defines the molecular structures used in the calculation. After reading the settings block, the program treats all lines recognized as coordinate content (inline atomic coordinates, blank lines, a lone "&", or XYZ references) as part of the Molecules section.

There are two ways to provide molecular structures:

Inline atomic coordinates

The x, y, and z values are Cartesian coordinates in angstroms. Each line must follow the format: element symbol followed by three coordinate values. Both decimal notation and scientific notation are supported. Any line that does not conform to this format is considered invalid.

MAPLE supports multiple molecular structures in a single input file. The coordinate section is divided into groups based on blank lines or lines containing only "&". Each group corresponds to one structure.

Example:
C 0.000000 1.234567 -0.123456
H 1.234E-01 -2.3456E+00 0.000000

External XYZ file

Structures may also be imported via external XYZ files. The path may be absolute or relative, and environment variables are expanded automatically. Each XYZ line corresponds to a separate structure. Inline coordinates and XYZ references cannot appear within the same group; if both are needed, separate them into different groups using blank lines or "&".

Example: XYZ path/to/file.xyz

Part III - Post-processing

The post-processing section appears after the coordinate block and is used to define geometric constraints and, for scan tasks, to specify scanning paths. After the coordinate section is parsed, any line beginning with C, B, A, D, or S is interpreted as a post-processing command. The section ends once a line no longer starts with one of these command letters.

The C, B, A, and D commands (for fixing atoms, bonds, angles, and dihedrals) are described in detail in the Constraints chapter.

The S command, which is only valid for a scan task, is explained in the Scan chapter.

Reference Example of a Full Input File

#model=ANI-1xnr
#ts(method=dimer)
#device=gpu0

C 0.8773307780 0.7831579390 -0.1629806432
H 0.6909163982 1.5540583811 -0.9219751886
O 0.5296065367 0.9762287325 1.1234790578
C 1.3488671845 -0.5563869274 -0.1923254310
H 0.7828987178 -0.2429788233 1.0663324170
H 1.0764966981 -1.2943318365 -0.9583627957
H 2.2951253096 -0.7293808119 0.3397718379

C 3

Note

All energy values in MAPLE are expressed in Hartree, and all distances are expressed in Å.