others

The utils included here were custom made for some users that requested them, thus they have a much more narrow usage scope. Nonetheless we saw no reason to not disclose them.

track

Prints the name of the scanned variable, its value (in Bohrs or radians), derivative, Max Forces convergence Y/N, Cartesian forces value and Geometry index of the geometry in the file. If no variable is provided nor it is a scan calculation it will print the variables that may be tracked and exit.

usage: pyssianutils others track [-h] [-o OFILE] [--scan] ifile [variable]

Positional Arguments

ifile

Gaussian Output File

variable

Internal variable name to track

Named Arguments

-o, --outfile
File to write the Data. If it exists, the data will

be appended, if not specified it will print to the console

--scan
Specify that the gaussian out file is a

a scan automatically detect the coordinate to track

Default: False

Usage

The development of this tool was focused into inspecting optimizations and relaxed scan calculations in order to find good guesses for transition states or detect at which step the transition state may have changed to converge to a different transition state than the desired one.

Note

The output of the following example has been simplified with respect to the actual output, and thus the presented results are not realistic. These are merely used to illustrate how the output from pyssianutils other track looks like and what it contains.

First we can inspect the gaussian output file by hand to extract the different internal coordinates definitions and select the one that we find the most relevant. Or we can instead use track to simplify it a little bit:

$ pyssianutils others track path/to/example.log
Available parameters to track for path/to/example.log
      Name    Definition
        R1    R(1,2)
        R2    R(1,3)
        R3    R(1,4)
        R4    R(2,10)
        R5    R(2,11)
        A1    A(2,1,4)
        A2    A(3,1,4)
        A3    A(1,2,10)
        A4    A(1,2,11)
        D1    D(4,1,2,10)
        D2    D(4,1,2,11)
        D3    D(4,1,2,17)

Let's say that from those variables, we might think that distance "R3" is the most likely to be related to the TS that we are looking for. Then we can track that variable during the optimization:

$ pyssianutils others track path/to/example.log
 Variable         Value           dE/dX           Conver        Car Forces       Geom Num
    R3           4.84074         -0.00268           NO           0.002445317        1
    R3           4.82437         -0.00127           NO           0.008095657        2
    R3           4.85777         -0.00003           NO           0.004442530        3
    R3           4.83914         -0.00210           NO           0.001962615        4
    R3           4.79272         -0.00071           NO           0.002282302        5
    R3           4.81657          0.00155           NO           0.004568041        6
    R3           4.83462          0.00016           NO           0.001937148        7
    R3           4.81713         -0.00064           NO           0.001487927        8
    R3           4.80367          0.00044           NO           0.000762087        9
    R3           4.81339          0.00094           NO           0.001016865        10
    R3           4.81620          0.00030           NO           0.000505738        11
    R3           4.81584          0.00004          YES           0.000310116        12
    R3           4.81533         -0.00002          YES           0.000232864        13
    R3           4.81447         -0.00003          YES           0.000098242        14
    R3           4.81395         -0.00002          YES           0.000094327        15
    R3           4.81378         -0.00000          YES           0.000086698        16
    R3           4.81386          0.00001          YES           0.000053593        17
    R3           4.81387          0.00000          YES           0.000017043        18

Here we have the value of the variable, (in Bohrs for distances and in radians for angles and dihedrals) de differential of the energy relative to the variable, if the cartesian forces have converged (YES/NO) and their actual value and finally the number of the geometry. In the present example the numbers have been taken from an optimization to minima, therefore it makes sense that the geometry with the highest cartesian forces value is at the initial geometries. However, we may use the value of the cartesian forces or the differencial of the energy relative to the variable to select a new initial geometry for an optimization.

cubes-tddft

Takes a gaussian output file and a gaussian chk file and a list of Excited States (by number) and creates a .in.sub file to generate only the cube files of the orbitals involved in the transitions as well as a python script(s) to generate the appropiate combination of the cubes.

usage: pyssianutils others cubes-tddft [-h] -es EXCITED_STATES
                                       [EXCITED_STATES ...] (-sq | -sum) [-m]
                                       [-n NAME]
                                       [-q {unknown,4,q4,8,12,20,24,28,36}]
                                       ifile chk

Positional Arguments

ifile

Gaussian Output File

chk

Gaussian Checkpoint File

Named Arguments

-es, --excited-states

list of numbers that correspond to the excited states whose output is desired

-sq, --squarefirst

Calculates the cubes squaring the cubes after the scaling and before summing the donors and/or acceptors

Default: False

-sum, --sumfirst

Calculates the cubes squaring the cubes after summing the donors, acceptors

Default: True

-m, --multiple

Generate one .py per each Electronic State selected, otherwise a single .py with all the Electronic states is generated

Default: False

-n, --name

name of the job for the queue system

Default: 'CubeGenerator'

-q, --queue

Possible choices: unknown, 4, q4, 8, 12, 20, 24, 28, 36

name of the queue that will be used which may be identified by the number of processors. This is HPC specific

Default: 'unknown'

Usage

This is probably the util with the narrowest scope. The original aim of the present tool was to simplify and automate the generation of cubefiles containing the molecular orbitals involved in transitions of excited states. This util outputs two scripts, a shell script that is used to generate the cubefiles with cubegen in individual files and a python script, that using the Cube class of pyssian, simplifies the process of combining the different cube files ( which could potentialy involve a large amount of individual commands as some utils only allow the combination of a maximum of 2 cubefiles at the same time)

Warning

This tool has not been maintained in a long time, thus it is likely to break. If you face troubles trying to use it we heavily recommend that you contact the main developer.