GaussianJob

A class that writes Gaussian .gjf files given a system and config/template options

job_template_dir: str
Job: Job
Config: Config
System: System

 

__init__(self, name, *args, description=None, system=None, job=None, config=None, template='TemplateTerse.gjf', footer=None, file=None): 

 

format(self): 

Formats the job string

  • :returns: _

 

write(self, file=None): 

Writes the job to a file

  • file: Any
  • :returns: _

 

start(self, *cmd, binary='g09', **kwargs): 

Starts a Gaussian job

  • cmd: Any
  • binary: Any
  • kwargs: Any
  • :returns: _

    s t a r t e d

p r o c e s s

 

run(self, *args, **kwargs): 

 

__str__(self): 

Examples

from McUtils.GaussianInterface import GaussianJob 

job = GaussianJob(
        "water scan",
        description="Simple water scan",
        config= GaussianJob.Config(
            NProc = 4,
            Mem = '1000MB'
        ),
        job= GaussianJob.Job(
            'Scan'
        ),
        system = GaussianJob.System(
            charge=0,
            molecule=[
                ["O", "H", "H"],
                [
                    [0, 0, 0],
                    [.987, 0, 0],
                    [0, .987, 0]
                ]
            ],
            vars=[
                GaussianJob.System.Variable("y1", 0., 10., .1),
                GaussianJob.System.Constant("x1", 10)
            ]
    
        )
    )
# print(job.write(), file=sys.stderr)
self.assertIsInstance(job.format(), str)

Feedback

Examples

Templates

Documentation