PGOPHER <Prev Next>

Command Line Version

PGOPHER is also available in a command line version, pgo[.exe] without the graphical user interface but with otherwise identical code. This is most useful when the output is to be used with other programs. Typical usage is:

pgo file.pgo

which will output a linelist as a text file using the parameters in the .pgo file. Common alternatives include:

pgo Mixture.PrintLevel=CSV file.pgo >file.csv
which will produce the line list in .csv format which, for example, spreadsheets can read. If a specific program is being written to use PGOPHER output, the binary linelist format may be quicker and easier to use:
pgo Mixture.PrintLevel=Binary Mixture.OThreshold=0 file.pgo >file.bin

Here Mixture.OThreshold=0 is being used to set a value in the Mixture object, in this case the cut off in line intensity; setting it to 0 ensures all lines are output. Any other parameter in any object can be set in this way; right click on the parameter in the constants view to show the name. Some of the intermediate objects can be omitted if there is no ambiguity; for example in the linear molecule example Mixture.Species.LinearMolecule.Excited.v=1.B can be abbreviated to Mixture.v=1.B.

To fit use:

pgo --fit file.pgo line.lin

The second file contains the observations. Alternative options are:

--fit
Normal line list fit
--intensityfit
Observations are intensity, not line positions
--fitlower
Fit to lower state energies
--fitupper
Fit to upper state energies
--contourfit
Contour fit; second file should normally be an overlay file in this case.
--fitcdlower
Fit to lower state common differences
--fitcdupper
Fit to upper state common differences

To produce a plot use:

pgo --plot file.pgo plot.txt

This produces a simple text file with the plot data as lists of x,y values; other available formats are .svg and .xfig. Use --eplot to generate a plot as a function of electric or magnetic field.

Other command line options are shown below.

--np n
Use n threads when calculating.
--overwrite
When fitting, write out a new .pgo file with the new parameters on top of the old one.
--newpgo When fitting write out a new .pgo file with the new parameters to a file with name file1.pgo. (The number is chosen so as not to overwrite any existing file.)
--trackmemory
Show time and memory usage at end of run
--times
Show selected processing times at end of run.
--o filename
Divert output to given file, rather than standard output

The full graphical user interface version will load all the files given on the command line, and will also respond to most of the commands given above.

Exporting Matrices

Hamiltonian matrices (as shown by the State Details Window) can be exported in numerical format using the option:

--H(Manifold,J,Symmetry)

For example, using the data file described in How PGOPHER works:

pgo --H(X,4.5,f) OHAX00eg.pgo

results in:

H(OHAX00eg.pgo.Species.LinearMolecule.X,4.5,-)	X v=0 4.5 - 1.5	X v=0 4.5 - 0.5
X v=0 4.5 - 1.5 375.595 -90.3971942125418
X v=0 4.5 - 0.5 -90.3971942125418 552.297
as shown on that page.

Transition matrices (as shown by the Transition Selection and Details Window) can be exported using the option:

--T(ManifoldName1,J1,Symmetry1,ManifoldName2,J2,Symmetry2)

For example, using the same data file as before:

--T(X,4.5,f,A,4.5,e)
yields the matrix shown on in How PGOPHER works:
T(OHAX00eg.pgo.Species.LinearMolecule.X,4.5,-),OHAX00eg.pgo.Species.LinearMolecule.A,4.5,+))	A v=0 4.5 + 0.5
X v=0 4.5 - 1.5 1.27128345232746
X v=0 4.5 - 0.5 1.2974982402692
Note that these matrices are in the original basis, i.e. not transformed using the eigenvectors from the diagonalisation of the Hamiltonian.

Quoting Parameters

If special characters (< | > . ' ") are present in the command line arguments you may need to enclose the parameters in double quotes, as in:
	pgo nd3_b0x0.pgo "Mixture.<X|mu|B>.<0+|T(2,1)|0>.Strength:=0"
To include a double quote in a parameter, precede it by \ :
	pgo nd3_b0x0.pgo "Mixture.ND3.wt(A1',A1\"):=5"
What requires quoting depends slightly on the platform; on Windows only " is used for quoting; on other platforms the standard UNIX quoting rules are used.