
# Installation of the software

Unpack the package th-path-integral-0.9.tar.xz in some directory and give commands

    ./configure
    cd libthoctavebase
    make
    cd ../libthinterpwavelets
    make
    cd ../libthpathintegral
    make

Unpack the packages th-octave-common-0.9.tar.xz, th-octave-wavelets-0.9.tar.xz,
and th-octave-pi-0.9.tar.xz into some directory.

Unpack the package th-path-integral-runs-0.9.tar.xz into some directory.

# Using the software

First, change into directory th-path-integral-0.9/src and build the program
you intend to run with command `make PROGRAMNAME`.

If you are not executing an example run create a directory for the run and
create file `input.key` containing necessary keys there.

Set environment variable `LD_LIBRARY_PATH` to contain the path of the Octave
library. You can find out this path with command `pkg-config --libs octave`.

Then change to the run directory and run the program.

# Analyzing the results

Launch Octave and change the current directory to the run directory you want
to analyze. Set the Octave search path to contain the directories where the
path integral Octave packages are unpacked. Use command `addpath`for this. 

Set the variable `rTimeStep` to the time step of the computation. This is the
same as parameter `time` in file input.key.
Plot the energy spectrum with command `plot_ho_spectrum` for
harmonic oscillators and `plot_hatom_spectrum` for the hydrogen atom. Find
out the energy eigenvalues with function `FindPeaks2(-vFX,vF,MINHEIGHT)`.
The parameter `MINHEIGHT` is the minimum height of the peaks and it can be
determined by looking at the plotted spectrum.

In the wavefunction computations you can plot the probability density function
with command `plotwf` defined in the example run directory.

# Programs

## One-dimensional harmonic oscillator

All of these computations use Deslauriers-Dubuc wavelets.

One resolution level, exact kernel: HarmOsc22

One resolution level, Trotter kernel: HarmOsc31

One resolution level, midpoint kernel: HarmOsc25

Two resolution levels, exact kernel: HarmOsc35

Two resolution levels, Trotter kernel: HarmOsc38

Two resolution levels, midpoint kernel: HarmOsc42

Wavefunction computation is implemented in program HarmOsc47.

## Three-dimensional harmonic oscillator

Trotter kernel: HarmOscTrotterTE3d3

Midpoint kernel: HarmOscMidpointTE3d16

The point data needed by the energy computations can be computed
with program GenPointData3d8 or GenPointData3d9.

## Hydrogen atom (one-dimensional computation)

| Run name           | Wavelets  | Kernel   | Res. levels  | Potential |
| :---               | :---      | :---     | ---:         | :---      |
| HydrAtomTrotter5   | DD        | Trotter  | 1            | interp.   |
| HydrAtomTrotter1   | DD        | Trotter  | 1            | cut       |
| HydrAtomTrotter6   | DD        | Trotter  | 2            | interp.   |
| HydrAtomTrotter3   | DD        | Trotter  | 2            | cut       |
| HydrAtomMidpoint22 | DD        | midpoint | 1            | interp.   |
| HydrAtomMidpoint6  | DD        | midpoint | 1            | cut       |
| HydrAtomTrotter11  | Daub.     | Trotter  | 1            | interp.   |
| HydrAtomTrotter9   | Daub.     | Trotter  | 2            | interp.   | 
| HydrAtomMidpoint30 | Daub.     | midpoint | 1            | interp.   |
| HydrAtomMidpoint31 | Daub.     | midpoint | 2            | interp.   |

DD means Deslauriers-Dubuc wavelets.

Wavefunction computation is implemented in program HydrogenAtomMidpoint46.
For the wavefunction computation, you have to first compute the
time evolution operator with program HydrogenAtomMidpoint44 and copy the
matrix files te_op_re.dat and te_op_im.dat to the HydrogenAtomMidpoint46
run directory.

## Hydrogen atom (three-dimensional computation)

The midpoint computation is done with the program HydrAtomMidpointTE3d17.
The Trotter kernel computation is done with the program
HydrAtomTrotterTE3d4.

The point data needed by the energy computations can be computed
with program GenPointData3d8 or GenPointData3d9.

Copyright (C) 2025 Tommi H&ouml;yn&auml;l&auml;nmaa
