Suttain
Research overview
Suttain documentation

API documentation

A straightforward reference for supported engine workflows, request parameters, examples and citations.

Overview

This documentation describes the functions used by Suttain's research workflows. Requests require an authenticated app session and remain subject to access and usage limits.

Rowan performs supported hosted quantum-chemistry calculations. Local engines generate input files to run on your own computer or cluster; preparing files does not run a calculation.

Compute library / live implementation reference

Engine workflows and API reference

This index comes directly from the same registry used to prepare inputs. Only listed methods/tasks are implemented; unsupported workflows are rejected rather than silently replaced. Rowan is the default. Credit fallback prepares compatible local files without pretending another calculation completed.

OpenMMLocal input package

Temperature, pressure and standard/custom forcefields control the generated local MD run. Hosted MD requires your external worker; no hosted MD calculation runs here.

Methods
Classical MD
Prepared tasks
Molecular dynamics
Version
Reported by your installed executable; preparation does not execute MD.
License / requirements
MIT and LGPL components; install OpenMM locally.

Function: generateOpenmmInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "enum": [
        "molecular_dynamics"
      ]
    },
    "engine": {
      "enum": [
        "OpenMM"
      ]
    },
    "inputs": {
      "type": "object",
      "required": [
        "pdb_content"
      ],
      "properties": {
        "pdb_content": {
          "type": "string",
          "maxLength": 24000,
          "description": "Complete PDB coordinates/residue topology, maximum 1,000 input atoms. Not a description or SMILES."
        },
        "md_steps": {
          "type": "integer",
          "minimum": 1,
          "maximum": 1000000000
        },
        "md_timestep_fs": {
          "type": "number",
          "minimum": 0.1,
          "maximum": 1
        },
        "md_padding_nm": {
          "type": "number",
          "minimum": 1.1,
          "maximum": 20
        },
        "md_atom_types": {
          "type": "string",
          "description": "OpenMM overrides: JSON array with one exact atom-type label per input PDB atom."
        }
      }
    },
    "environmental_params": {
      "type": "object",
      "properties": {
        "temperature": {
          "type": "number",
          "description": "Thermostat target in K."
        },
        "pressure": {
          "type": "number",
          "description": "NPT barostat target in bar; ignored explicitly for NVT."
        },
        "forcefield": {
          "type": "string"
        },
        "thermostat": {
          "type": "string"
        },
        "barostat": {
          "type": "string"
        },
        "custom_forcefield": {
          "type": "object",
          "description": "LJ, harmonic bond/angle and periodic torsion tables. Exact atom types; units described in README."
        },
        "forcefield_file_name": {
          "type": "string",
          "description": "OpenMM complete XML or GROMACS complete TOP attachment to place beside scripts."
        }
      }
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateOpenmmInputs', {
  "sim_type": "molecular_dynamics",
  "engine": "OpenMM",
  "inputs": {
    "pdb_content": "HETATM    1  O   HOH A   1       0.000   0.000   0.000  1.00  0.00           O\nHETATM    2  H1  HOH A   1       0.000   0.000   0.957  1.00  0.00           H\nHETATM    3  H2  HOH A   1       0.927   0.000  -0.240  1.00  0.00           H\nEND\n",
    "md_steps": 10000,
    "md_timestep_fs": 1
  },
  "environmental_params": {
    "temperature": 300,
    "pressure": 1,
    "forcefield": "AMBER99SB-ILDN",
    "solvent": "water",
    "boundary_conditions": "periodic",
    "box_type": "cubic",
    "thermostat": "langevin",
    "barostat": "monte_carlo"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

MD environment: temperature (K) controls the thermostat; pressure (bar) controls NPT only. Barostat none selects NVT. Native forcefields and supported custom LJ, harmonic bond/angle and periodic torsion overrides are applied by the scripts; unmatched types or incompatible interactions stop execution. pH and ionic strength are recorded context, not automatic protonation or salt preparation. Hosted MD requires a separately connected external worker.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Eastman et al. OpenMM 8: Molecular Dynamics Simulation with Machine Learning Potentials. J. Phys. Chem. B 128 (2024) 109–116. https://doi.org/10.1021/acs.jpcb.3c06662

Official software reference
GROMACSLocal input package

Temperature, pressure and standard/custom forcefields control the generated local MD run. Hosted MD requires your external worker; no hosted MD calculation runs here.

Methods
Classical MD
Prepared tasks
Molecular dynamics
Version
Reported by your installed executable; preparation does not execute MD.
License / requirements
LGPL-2.1; install GROMACS and any external forcefield distributions locally.

Function: generateGromacsInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "enum": [
        "molecular_dynamics"
      ]
    },
    "engine": {
      "enum": [
        "GROMACS"
      ]
    },
    "inputs": {
      "type": "object",
      "required": [
        "pdb_content"
      ],
      "properties": {
        "pdb_content": {
          "type": "string",
          "maxLength": 24000,
          "description": "Complete PDB coordinates/residue topology, maximum 1,000 input atoms. Not a description or SMILES."
        },
        "md_steps": {
          "type": "integer",
          "minimum": 1,
          "maximum": 1000000000
        },
        "md_timestep_fs": {
          "type": "number",
          "minimum": 0.1,
          "maximum": 1
        },
        "md_padding_nm": {
          "type": "number",
          "minimum": 1.1,
          "maximum": 20
        },
        "md_atom_types": {
          "type": "string",
          "description": "OpenMM overrides: JSON array with one exact atom-type label per input PDB atom."
        }
      }
    },
    "environmental_params": {
      "type": "object",
      "properties": {
        "temperature": {
          "type": "number",
          "description": "Thermostat target in K."
        },
        "pressure": {
          "type": "number",
          "description": "NPT barostat target in bar; ignored explicitly for NVT."
        },
        "forcefield": {
          "type": "string"
        },
        "thermostat": {
          "type": "string"
        },
        "barostat": {
          "type": "string"
        },
        "custom_forcefield": {
          "type": "object",
          "description": "LJ, harmonic bond/angle and periodic torsion tables. Exact atom types; units described in README."
        },
        "forcefield_file_name": {
          "type": "string",
          "description": "OpenMM complete XML or GROMACS complete TOP attachment to place beside scripts."
        }
      }
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateGromacsInputs', {
  "sim_type": "molecular_dynamics",
  "engine": "GROMACS",
  "inputs": {
    "pdb_content": "HETATM    1  O   HOH A   1       0.000   0.000   0.000  1.00  0.00           O\nHETATM    2  H1  HOH A   1       0.000   0.000   0.957  1.00  0.00           H\nHETATM    3  H2  HOH A   1       0.927   0.000  -0.240  1.00  0.00           H\nEND\n",
    "md_steps": 10000,
    "md_timestep_fs": 1
  },
  "environmental_params": {
    "temperature": 300,
    "pressure": 1,
    "forcefield": "AMBER99SB-ILDN",
    "solvent": "water",
    "boundary_conditions": "periodic",
    "box_type": "cubic",
    "thermostat": "vrescale",
    "barostat": "parrinello_rahman"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

MD environment: temperature (K) controls the thermostat; pressure (bar) controls NPT only. Barostat none selects NVT. Native forcefields and supported custom LJ, harmonic bond/angle and periodic torsion overrides are applied by the scripts; unmatched types or incompatible interactions stop execution. pH and ionic strength are recorded context, not automatic protonation or salt preparation. Hosted MD requires a separately connected external worker.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Abraham et al. GROMACS: High performance molecular simulations through multi-level parallelism from laptops to supercomputers. SoftwareX 1–2 (2015) 19–25. https://doi.org/10.1016/j.softx.2015.06.001

Official software reference
MACELocal input package

Generates ASE + mace-torch scripts for local execution. ML-potential predictions, not fresh DFT calculations or hosted compute.

Methods
MACE-OFF23, MACE-MP-0
Prepared tasks
Single-point energy, Geometry optimization, Molecular dynamics
Version
Recorded from installed mace-torch and ASE when the script runs.
License / requirements
MACE code and MACE-MP-0: MIT. MACE-OFF23 checkpoints: Academic Software License; review commercial-use restrictions.

Function: generateMaceInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "record_job": {
      "type": "boolean"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string"
        },
        "engine_method": {
          "enum": [
            "MACE-OFF23",
            "MACE-MP-0"
          ]
        },
        "engine_task": {
          "enum": [
            "Single-point energy",
            "Geometry optimization",
            "Molecular dynamics"
          ]
        },
        "mace_device": {
          "enum": [
            "cpu",
            "cuda"
          ]
        },
        "mace_periodic": {
          "type": "boolean"
        },
        "cell": {
          "type": "string"
        },
        "mace_fmax": {
          "type": "number",
          "minimum": 0.0001,
          "maximum": 1
        },
        "mace_opt_steps": {
          "type": "integer",
          "minimum": 1,
          "maximum": 10000
        },
        "mace_ensemble": {
          "enum": [
            "NVE",
            "NVT"
          ]
        },
        "mace_temperature": {
          "type": "number",
          "minimum": 1,
          "maximum": 5000
        },
        "mace_steps": {
          "type": "integer",
          "minimum": 1,
          "maximum": 1000000
        },
        "mace_timestep_fs": {
          "type": "number",
          "minimum": 0.01,
          "maximum": 5
        }
      }
    }
  }
}

Example request

const response = await base44.functions.invoke('generateMaceInputs', {
  "sim_type": "molecular_dynamics",
  "engine": "MACE",
  "inputs": {
    "geometry_xyz": "3\nWater\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "MACE-OFF23",
    "engine_task": "Molecular dynamics",
    "mace_ensemble": "NVT",
    "mace_temperature": 300,
    "mace_steps": 1000,
    "mace_timestep_fs": 0.5
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Batatia et al. MACE (NeurIPS 2022). Cite the selected foundation model: MACE-MP-0, arXiv:2401.00096; MACE-OFF23, arXiv:2312.15211. Also cite ASE and the installed software versions.

Official software reference
RowanLive service

Runs a hosted request; review the operation and provider attribution.

Methods
B3LYP, PBE, PBE0, M06-2X, M06-L, CAM-B3LYP, BP86, TPSSh, HF, r2SCAN, GFN2-xTB, wB97X-D3
Prepared tasks
Geometry optimization, Single-point energy, Frequency analysis (IR/Raman), Population analysis, Hessian, Transition state (TS) optimization
Version
Returned in provider calculation metadata
License / requirements
Commercial hosted service; Rowan credits required.

Function: runRowanCompute

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "inputs",
    "structure"
  ],
  "properties": {
    "sim_type": {
      "enum": [
        "dft",
        "quantum_mechanics"
      ]
    },
    "inputs": {
      "type": "object"
    },
    "structure": {
      "type": "object"
    },
    "auto_fallback": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('runRowanCompute', {
  "sim_type": "dft",
  "engine": "Rowan",
  "inputs": {
    "molecule": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "functional": "B3LYP",
    "basis_set": "def2-SVP",
    "task": "Single-point energy"
  },
  "structure": {
    "molecule": {
      "charge": 0,
      "multiplicity": 1,
      "atoms": [
        {
          "atomic_number": 8,
          "position": [
            0,
            0,
            0
          ]
        },
        {
          "atomic_number": 1,
          "position": [
            0,
            0,
            0.9572
          ]
        },
        {
          "atomic_number": 1,
          "position": [
            0.9266,
            0,
            -0.2396
          ]
        }
      ]
    }
  },
  "environmental_params": {
    "solvent": "none"
  },
  "auto_fallback": true
});
console.log(response.data);

Response: Rowan returns job with status and provider_job_id; PubChem returns source_cid, properties/synonyms, retrieved_at, citations and job_id. PubChem is a lookup, not equivalent quantum computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Rowan Scientific. Cite Rowan and the actual calculation engine, method and basis set. https://docs.rowansci.com/citations

Official software reference
PubChem PUG-RESTLive service

Runs a hosted request; review the operation and provider attribution.

Methods
Properties, Synonyms
Prepared tasks
Compound lookup
Version
PUG-REST live database; timestamp and CID included
License / requirements
Public data service; respect PubChem usage policy (maximum 5 requests/second).

Function: runPubchemLookup

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "query"
  ],
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 1000
    },
    "namespace": {
      "enum": [
        "name",
        "smiles",
        "cid"
      ]
    },
    "operation": {
      "enum": [
        "Properties",
        "Synonyms"
      ]
    },
    "sim_type": {
      "type": "string"
    }
  }
}

Example request

const response = await base44.functions.invoke('runPubchemLookup', {
  "query": "aspirin",
  "namespace": "name",
  "operation": "Properties",
  "sim_type": "dft"
});
console.log(response.data);

Response: Rowan returns job with status and provider_job_id; PubChem returns source_cid, properties/synonyms, retrieved_at, citations and job_id. PubChem is a lookup, not equivalent quantum computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Kim et al. An update on PUG-REST. Nucleic Acids Research 46 (2018) W563–W570. https://doi.org/10.1093/nar/gky294

Official software reference
xtbLocal input package

Live execution requires an external xtb worker; currently downloadable execution only.

Methods
GFN2-xTB, GFN1-xTB
Prepared tasks
Single-point energy, Geometry optimization, Frequency analysis (IR/Raman)
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
LGPL-3.0; installed xtb binary required.

Function: generateXtbInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateXtbInputs', {
  "sim_type": "dft",
  "engine": "xtb",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "GFN2-xTB",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Bannwarth, Ehlert and Grimme. GFN2-xTB. J. Chem. Theory Comput. 15 (2019) 1652–1671. https://doi.org/10.1021/acs.jctc.8b01176

Official software reference
RDKitLocal input package

Live execution requires an external Python/RDKit worker; currently downloadable execution only.

Methods
Descriptors, Morgan fingerprint, ETKDG conformer
Prepared tasks
Cheminformatics
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
BSD-3-Clause; local Python RDKit installation required.

Function: generateRdkitInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateRdkitInputs', {
  "sim_type": "cheminformatics",
  "engine": "RDKit",
  "inputs": {
    "smiles": "CCO",
    "engine_method": "Descriptors",
    "engine_task": "Cheminformatics"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

RDKit: Open-source cheminformatics. https://www.rdkit.org/ Cite the installed RDKit release.

Official software reference
Psi4Local input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
HF, B3LYP, PBE, PBE0, MP2, CCSD, CCSD(T)
Prepared tasks
Single-point energy, Geometry optimization, Frequency analysis (IR/Raman)
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
LGPL-3.0.

Function: generatePsi4Inputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generatePsi4Inputs', {
  "sim_type": "dft",
  "engine": "Psi4",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "HF",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Smith et al. Psi4 1.4. J. Chem. Phys. 152 (2020) 184108. https://doi.org/10.1063/5.0006002

Official software reference
PySCFLocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
HF, B3LYP, PBE, PBE0, MP2, CCSD, CCSD(T)
Prepared tasks
Single-point energy
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
Apache-2.0.

Function: generatePyscfInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generatePyscfInputs', {
  "sim_type": "dft",
  "engine": "PySCF",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "HF",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Sun et al. Recent developments in the PySCF program package. J. Chem. Phys. 153 (2020) 024109. https://doi.org/10.1063/5.0006074

Official software reference
NWChemLocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
HF, B3LYP, PBE, PBE0, MP2
Prepared tasks
Single-point energy, Geometry optimization, Frequency analysis (IR/Raman)
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
Educational Community License 2.0.

Function: generateNwchemInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateNwchemInputs', {
  "sim_type": "dft",
  "engine": "NWChem",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "HF",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Aprà et al. NWChem: Past, present, and future. J. Chem. Phys. 152 (2020) 184102. https://doi.org/10.1063/5.0004997

Official software reference
CP2KLocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
PBE
Prepared tasks
Single-point energy, Geometry optimization
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
GPL-2.0; CP2K basis/potential data files required.

Function: generateCp2kInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateCp2kInputs', {
  "sim_type": "dft",
  "engine": "CP2K",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "PBE",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP",
    "cell": "12 0 0 0 12 0 0 0 12"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Kühne et al. CP2K: An electronic structure and molecular dynamics software package. J. Chem. Phys. 152 (2020) 194103. https://doi.org/10.1063/5.0007045

Official software reference
Quantum ESPRESSOLocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
PBE, LDA
Prepared tasks
Single-point energy, Geometry optimization
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
GPL-2.0; locally installed ASE, pw.x and matching UPF pseudopotentials required.

Function: generateEspressoInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateEspressoInputs', {
  "sim_type": "materials",
  "engine": "Quantum ESPRESSO",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "PBE",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP",
    "cell": "12 0 0 0 12 0 0 0 12",
    "pseudopotentials": "{\"O\":\"O.pbe.UPF\",\"H\":\"H.pbe.UPF\"}"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Giannozzi et al. Advanced capabilities for materials modelling with Quantum ESPRESSO. J. Phys.: Condens. Matter 29 (2017) 465901. https://doi.org/10.1088/1361-648X/aa8f79

Official software reference
ABINITLocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
PBE, LDA
Prepared tasks
Single-point energy, Geometry optimization
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
GPL; ASE, ABINIT and matching pseudopotentials required.

Function: generateAbinitInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateAbinitInputs', {
  "sim_type": "materials",
  "engine": "ABINIT",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "PBE",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP",
    "cell": "12 0 0 0 12 0 0 0 12",
    "pseudopotentials": "{\"O\":\"08-O.PBE.fhi\",\"H\":\"01-H.PBE.fhi\"}"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Gonze et al. The ABINIT project. Comput. Phys. Commun. 248 (2020) 107042. https://doi.org/10.1016/j.cpc.2019.107042

Official software reference
SIESTALocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
PBE, LDA
Prepared tasks
Single-point energy, Geometry optimization
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
GPL; ASE and matching SIESTA pseudopotentials required.

Function: generateSiestaInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateSiestaInputs', {
  "sim_type": "materials",
  "engine": "SIESTA",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "PBE",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP",
    "cell": "12 0 0 0 12 0 0 0 12",
    "pseudopotentials": "{\"O\":\"O.psf\",\"H\":\"H.psf\"}"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Soler et al. The SIESTA method for ab initio order-N materials simulation. J. Phys.: Condens. Matter 14 (2002) 2745. https://doi.org/10.1088/0953-8984/14/11/302

Official software reference
GPAWLocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
PBE, LDA
Prepared tasks
Single-point energy, Geometry optimization
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
GPL; ASE, GPAW and PAW dataset installation required.

Function: generateGpawInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateGpawInputs', {
  "sim_type": "materials",
  "engine": "GPAW",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "PBE",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP",
    "cell": "12 0 0 0 12 0 0 0 12"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Enkovaara et al. Electronic structure calculations with GPAW. J. Phys.: Condens. Matter 22 (2010) 253202. https://doi.org/10.1088/0953-8984/22/25/253202

Official software reference
OctopusLocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
LDA
Prepared tasks
Single-point energy
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
GPL; ASE/Octopus and appropriate pseudopotentials required.

Function: generateOctopusInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateOctopusInputs', {
  "sim_type": "materials",
  "engine": "Octopus",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "LDA",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP",
    "cell": "12 0 0 0 12 0 0 0 12"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Tancogne-Dejean et al. Octopus. J. Chem. Phys. 152 (2020) 124119. https://doi.org/10.1063/1.5142502

Official software reference
OpenMolcasLocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
HF, CASSCF
Prepared tasks
Single-point energy
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
LGPL-2.1.

Function: generateOpenmolcasInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateOpenmolcasInputs', {
  "sim_type": "dft",
  "engine": "OpenMolcas",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "HF",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Fdez. Galván et al. OpenMolcas. J. Chem. Theory Comput. 15 (2019) 5925–5964. https://doi.org/10.1021/acs.jctc.9b00532

Official software reference
BAGELLocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
HF, CASSCF
Prepared tasks
Single-point energy
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
GPL-3.0.

Function: generateBagelInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateBagelInputs', {
  "sim_type": "dft",
  "engine": "BAGEL",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "HF",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Shiozaki. BAGEL. WIREs Comput. Mol. Sci. 8 (2018) e1331. https://doi.org/10.1002/wcms.1331

Official software reference
GAMESSLocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
HF, B3LYP, MP2
Prepared tasks
Single-point energy, Geometry optimization
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
GAMESS distribution terms apply; registration and installation required.

Function: generateGamessInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateGamessInputs', {
  "sim_type": "dft",
  "engine": "GAMESS",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "HF",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "6-31G*"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Schmidt et al. General atomic and molecular electronic structure system. J. Comput. Chem. 14 (1993) 1347–1363. https://doi.org/10.1002/jcc.540141112

Official software reference
ORCALocal input package

Prepare files and execute them on your own computer or HPC. No calculation runs on Suttain.

Methods
HF, B3LYP, PBE, PBE0, M06-2X, M06-L, CAM-B3LYP, BP86, TPSSh, r2SCAN
Prepared tasks
Single-point energy, Geometry optimization, Frequency analysis (IR/Raman)
Version
Reported by your installed executable; no engine runs during preparation.
License / requirements
Academic/personal use subject to ORCA terms; commercial licensing may apply.

Function: generateOrcaInputs

Authenticated Base44 function invocation. Use the initialized Base44 SDK client for your app. No invented /v1 engine routes or separate Suttain SDK are required.

Request schema
{
  "type": "object",
  "required": [
    "sim_type",
    "engine",
    "inputs"
  ],
  "properties": {
    "sim_type": {
      "type": "string"
    },
    "engine": {
      "type": "string"
    },
    "inputs": {
      "type": "object",
      "properties": {
        "geometry_xyz": {
          "type": "string",
          "description": "XYZ coordinates in angstroms; maximum 120 atoms."
        },
        "engine_method": {
          "type": "string"
        },
        "engine_task": {
          "type": "string"
        },
        "charge": {
          "type": "integer",
          "minimum": -10,
          "maximum": 10
        },
        "multiplicity": {
          "type": "integer",
          "minimum": 1,
          "maximum": 7
        },
        "basis_set": {
          "type": "string"
        },
        "cell": {
          "type": "string",
          "description": "Nine Cartesian lattice-vector components in angstroms."
        },
        "pseudopotentials": {
          "type": "string",
          "description": "JSON mapping element symbols to local pseudopotential filenames."
        }
      }
    },
    "environmental_params": {
      "type": "object"
    },
    "record_job": {
      "type": "boolean",
      "default": true
    }
  }
}

Example request

const response = await base44.functions.invoke('generateOrcaInputs', {
  "sim_type": "dft",
  "engine": "ORCA",
  "inputs": {
    "geometry_xyz": "3\nWater reference\nO 0 0 0\nH 0 0 0.9572\nH 0.9266 0 -0.2396",
    "engine_method": "HF",
    "engine_task": "Single-point energy",
    "charge": 0,
    "multiplicity": 1,
    "basis_set": "def2-SVP"
  },
  "environmental_params": {
    "solvent": "none"
  },
  "record_job": false
});
console.log(response.data);

Response: files[] with filename/content/description, engine, method, task, execution_mode="local_pending", citations[], summary and (when record_job=true) job_id. Input preparation is recorded as a finished operation but remains pending local computation.

Errors: 400 invalid or unsupported method/task; 401 sign-in required; 403 quota exhausted; 429 request limit; provider errors never imply successful compute.

Citation

Neese. Software update: The ORCA program system—Version 5.0. WIREs Comput. Mol. Sci. 12 (2022) e1606. https://doi.org/10.1002/wcms.1606

Official software reference

Software references

Eastman et al. OpenMM 8: Molecular Dynamics Simulation with Machine Learning Potentials. J. Phys. Chem. B 128 (2024) 109–116. https://doi.org/10.1021/acs.jpcb.3c06662

Official documentation

Abraham et al. GROMACS: High performance molecular simulations through multi-level parallelism from laptops to supercomputers. SoftwareX 1–2 (2015) 19–25. https://doi.org/10.1016/j.softx.2015.06.001

Official documentation

Batatia et al. MACE (NeurIPS 2022). Cite the selected foundation model: MACE-MP-0, arXiv:2401.00096; MACE-OFF23, arXiv:2312.15211. Also cite ASE and the installed software versions.

Official documentation

Rowan Scientific. Cite Rowan and the actual calculation engine, method and basis set. https://docs.rowansci.com/citations

Official documentation

Kim et al. An update on PUG-REST. Nucleic Acids Research 46 (2018) W563–W570. https://doi.org/10.1093/nar/gky294

Official documentation

Bannwarth, Ehlert and Grimme. GFN2-xTB. J. Chem. Theory Comput. 15 (2019) 1652–1671. https://doi.org/10.1021/acs.jctc.8b01176

Official documentation

RDKit: Open-source cheminformatics. https://www.rdkit.org/ Cite the installed RDKit release.

Official documentation

Smith et al. Psi4 1.4. J. Chem. Phys. 152 (2020) 184108. https://doi.org/10.1063/5.0006002

Official documentation

Sun et al. Recent developments in the PySCF program package. J. Chem. Phys. 153 (2020) 024109. https://doi.org/10.1063/5.0006074

Official documentation

Aprà et al. NWChem: Past, present, and future. J. Chem. Phys. 152 (2020) 184102. https://doi.org/10.1063/5.0004997

Official documentation

Kühne et al. CP2K: An electronic structure and molecular dynamics software package. J. Chem. Phys. 152 (2020) 194103. https://doi.org/10.1063/5.0007045

Official documentation

Giannozzi et al. Advanced capabilities for materials modelling with Quantum ESPRESSO. J. Phys.: Condens. Matter 29 (2017) 465901. https://doi.org/10.1088/1361-648X/aa8f79

Official documentation

Gonze et al. The ABINIT project. Comput. Phys. Commun. 248 (2020) 107042. https://doi.org/10.1016/j.cpc.2019.107042

Official documentation

Soler et al. The SIESTA method for ab initio order-N materials simulation. J. Phys.: Condens. Matter 14 (2002) 2745. https://doi.org/10.1088/0953-8984/14/11/302

Official documentation

Enkovaara et al. Electronic structure calculations with GPAW. J. Phys.: Condens. Matter 22 (2010) 253202. https://doi.org/10.1088/0953-8984/22/25/253202

Official documentation

Tancogne-Dejean et al. Octopus. J. Chem. Phys. 152 (2020) 124119. https://doi.org/10.1063/1.5142502

Official documentation

Fdez. Galván et al. OpenMolcas. J. Chem. Theory Comput. 15 (2019) 5925–5964. https://doi.org/10.1021/acs.jctc.9b00532

Official documentation

Shiozaki. BAGEL. WIREs Comput. Mol. Sci. 8 (2018) e1331. https://doi.org/10.1002/wcms.1331

Official documentation

Schmidt et al. General atomic and molecular electronic structure system. J. Comput. Chem. 14 (1993) 1347–1363. https://doi.org/10.1002/jcc.540141112

Official documentation

Neese. Software update: The ORCA program system—Version 5.0. WIREs Comput. Mol. Sci. 12 (2022) e1606. https://doi.org/10.1002/wcms.1606

Official documentation

Also cite the actual installed version, method, basis set, solvent and datasets used; preparation alone does not establish a computed result.

Simmate is an orchestration framework for your own infrastructure, not a configured Suttain compute endpoint. Simmate documentation. Independent hosted xtb/RDKit execution and advanced workflow/output-parser coverage require a subsequent compute-service setup.

For Rowan calculations, cite Rowan and the engine, method, basis set and solvent model used. Rowan citation guidance · Rowan API reference