LBNL-AMO-MCTDHF / V1

Licence: other
LBNL-AMO-MCTDHF v1.36! . . . . .

Programming Languages

fortran
972 projects
Makefile
30231 projects
C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
shell
77523 projects
assembly
5116 projects
  ** LBNL-AMO-MCTDHF VERSION 1.36 **

v1.36 soft coulomb potential ironed out 1d version

v1.35 sech^2 potential ironed out 1d version

v1.34 contact operator available polyatomic version.  Set 
   use_contactop=.true. in namelist &sincparinp.  Hydrogenic eigenvalues
   1s, 2s, 2p should closely match actual values nuccharge^2/2 and 
   nuccharge^2/8 up to nuccharge * spacing = 3 .  Actual improvement to 
   simulation results is not yet tested.
 
v1.34 timing files report in units of seconds

v1.34 much less memory waste for restricted configuration spaces (still
   not perfect, about 3x memory waste not 20x for some cases, still 3x
   waste of time.. now time and memory are wasted proportionally)

v1.34 complex Domcke wave mixing method redone, with redobra instead of 
   conjgpropflag, using action 29 and mcscfnum=1.  

v1.31 gaugefluxflag and strongcatflag available for photoionization
   actions 16 17 27 28.  With strong fields, recommend explicit 
   back-propagation of cation states with strongcatflag.  With ionization 
   during the pulse, recommend (a) velocity gauge calculation or (b) 
   length gauge calculation with gaugefluxflag.eq.2.  Either way, 
   photoionization is calculated in velocity gauge, and what remains is 
   only the time-dependent Volkov phase for exact electron KE distribution 
   with action 17 (to-do)

v1.31 windowing functions for fourier transform set for each action
   separately, namelist &parinp variables fttriwindow(iaction) and 
   ftwindowpower(iaction); defaults should be best.  Linear damping 
   on [0,t], cosine-squared on [-t:t]

v1.28 photoionization during calculation using actions 27 and 28
   like actions 16 and 17.  Integrals dt only, no energy resolution

v1.28 basic integrals added for photoionization actions 16 and 17:
   integrals dt and domega.  New output files, &parinp namelist variables
   fluxtsumfile (Dat/fluxtsum.dat), projfluxtsumfile, angprojfluxtsumfile 
   give integrated outgoing flux from integrals dt in column 2.
   spifile and projspifile (xsec.spi.dat and e.g. proj.xsec.spi_001_001.dat)
   contain outgoing flux integrated domega in column 7 (should agree with 
   integral dt).  Integrated outgoing flux corresponds to the change in 
   norm-squared due to ionization.

v1.27 best attempt dissociative excitation actions 16,17 with
   nucfluxopt.eq.2 -- replaces old (version 0) actions 13,14

v1.27 predictor/corrector algorithm modified; results will be different,
   depending on stepsize par_timestep

v1.27 work done by or on each pulse in Hartree output in various
   files for action 21 emission/absorption.  Circular polarization
   output added action 21 -- new &parinp namelist variable 
   act21circ.eq.0 default -- set act21circ.ne.0 to enable circular 
   polarization output

v1.26 angular differential partial photoionization, action 17, with
   angularflag.ne.0

v1.20 multiple cation files for partial photoionization action 17
   using numcatfiles, catspffiles, catavectorfiles in namelist &parinp
   cation.configlist.BIN no longer needed

v1.19 better improvedquadflag=2 and 3 (orbitals).  Excited states
   may be calculated more easily.

v1.18 predictor/corrector algorithm modified; results will be different,
   depending on stepsize par_timestep

v1.16 FACTOR OF 1/3 REMOVED FROM PHOTOIONIZATION (Actions 16,17)

   **** photoionization RESULTS WILL BE 3x GREATER NOW - BEWARE ****

   the factor of 1/3 is historical.  The cross section now reported
   in column 3 of xsec.spi.dat, xsec.proj.spi.datXXXX, is
   the quantum cross section in Megabarns for the problem at hand.
   Perform a 1:2 weighted average of parallel and perpendicular
   to obtain the cross section averaged over orientations

   The ionization and absorption cross section for H2 is about 12 Mb 
   at ion onset for both perpendicular and parallel.  Not 4.  He xsec
   is about 8.

ALSO v1.16 new windowing function for fourier transforms implemented
   further updates for v1.31 (see above)

ALSO v1.16 ABSOLUTE UNITS (megabarns) IMPLEMENTED FOR ACTION 21
   emission/absorption.  Column 9 in ZDipoleft.Dat etc is cross 
   section in Mb. See H2 and Helium examples.

ALSO v1.16 par_consplit.ne.0 attempted first time.  Total MPI 
   parallelization of LBNL-AMO-MCTDHF calculation with
   par_consplit.ne.0 and parorbsplit.eq.3 (parorbsplit.eq.3 for 
   polyatomic only)

CHANGES TO PULSE FOURIER TRANSFORM SUBROUTINES IN VERSION 1.10.
VARIABLES EFLUXLO, EFLUXHI, NEFLUX, FLUXNBINS, FLUXSINEOPT DEPRECATED.
NOTE NEW VARIABLE pulseft_estep USED FOR Pulseft.Dat OUTPUT ONLY

-----------------------------------------------------------------------
Please watch the commits to stay notified about bugs and bug fixes:
     https://github.com/LBNL-AMO-MCTDHF/V1/commits/master

Known bugs appear as issues:
     https://github.com/LBNL-AMO-MCTDHF/V1/issues
-----------------------------------------------------------------------

The scripts in the example directories use bash and gnuplot.  

Using the bash shell is recommended but may not be necessary.
To begin a bash shell, if it is not your default, simply execute the command
   prompt> bash
To set bash as your default shell on mac or other linux, execute the command
   prompt> chsh -s /bin/bash

Lots of scripts use gnuplot.  Gnuplot should be installed on your system,
if you want to have an easy time seeing the results of the example calculations.
If gnuplot is installed on your system then the command
   prompt> which gnuplot
should return the location of the executable file.  If it returns nothing then
it is not installed.  The best way to install gnuplot is probably with macports.

Possible workflow described below for mac.  The general idea is that you can 
   work entirely within the directory that you clone and to which you pull, not 
   copy the git distribution elsewhere for compilation.

----------------------------------------------------------------------------

On Mac: minimal demonstration.  *BIN*mac* directories use GFORTRAN.  You must have
gfortran installed to use the *BIN*mac* directories.  To install gfortran -- which
you will need to do if the Makeme step fails -- visit 

     https://gcc.gnu.org/wiki/GFortranBinariesMacOS

00)  mkdir V1
     cd V1
     git clone https://github.com/LBNL-AMO-MCTDHF/V1 .

          or download using a web browser

     https://github.com/LBNL-AMO-MCTDHF/V1/archive/master.zip
          and unzip this file
     unzip master.zip
     mv master V1
     cd V1

     PERFORM ALL OTHER STEPS IN THIS V1 DIRECTORY.

0)   You must get the examples now separately.

     cd EXAMPLES-DEPOT
     rm README
     git clone https://github.com/LBNL-AMO-MCTDHF/examples-depot .

          or download using a web browser

     https://github.com/LBNL-AMO-MCTDHF/EXAMPLES-DEPOT/archive/master.zip
          and unzip this file to get the EXAMPLES-DEPOT examples files.

1)   cd COMPDIRS/BIN.ecs.hermnorm.mac
     ./Makeme

     if this fails, you need gfortran.  Also you may then

     cd ../debug.BIN.ecs.hermnorm.mac
     ./Makeme
     cd ../BIN.ecs.hermnorm.mac.mpi
     ./Makeme
     cd ../debug.BIN.ecs.hermnorm.mac.mpi
     ./Makeme

     [ You can delete the directories in COMPDIRS that you don't want, e.g.
     cd COMPDIRS
     rm -r *BIN*law* *BIN*ediso* *BIN*cori* ]

2)   You need to have the code in your path.  Safe, temporary way:

2A)  cd COMPDIRS/BIN.ecs.hermorm.mac
     export PATH=$PATH:$PWD

2B)  Permanent way, system-wide, links in /opt/local/bin, requires root password:
     cd COMPDIRS/BIN.ecs.hermorm.mac
     ./LinkMe
     cd ../debug.BIN.ecs.hermorm.mac
     ./LinkMe debug
     cd ../BIN.ecs.hermorm.mac.mpi
     ./LinkMe mpi
     cd ../debug.BIN.ecs.hermorm.mac.mpi
     ./LinkMe mpi.debug

2C)  Permanent way, user-specific, script that edits your .bashrc file
     cd COMPDIRS/BIN.ecs.hermnorm.mac
     ./LinkMeLocal

     You must restart the terminal after step 2C.

3)   mkdir EXAMPLES
     cp -R -p EXAMPLES-DEPOT/H2-EXAMPLE-PLAIN-SCRIPTS EXAMPLES

4)   cd EXAMPLES/H2-EXAMPLE-PLAIN-SCRIPTS
     follow the README; 

     ./Relax.Bat
     ./Fourier.Bat 
     ./Flux.Bat 500
     ./gnu.xsec

     for total photoionization; see the README for more.
 
If you want to update the code then perform steps 5 and 6, like steps 1-4, 
in the V1 working directory,

5)   git pull https://github.com/LBNL-AMO-MCTDHF/V1
     git pull --tags https://github.com/LBNL-AMO-MCTDHF/V1

     then ./Makeme should be sufficient, in the BIN directories,
     but ./Makeme clean; ./Makeme would certainly be fail safe

6)   cd EXAMPLES-DEPOT
     git pull https://github.com/LBNL-AMO-MCTDHF/examples-depot
     git pull --tags https://github.com/LBNL-AMO-MCTDHF/examples-depot

If you want to switch versions of the code then do e.g.

     git checkout tags/v1.21
     cd COMPDIRS
     for dir in *BIN*; do cd $dir; ./Makeme clean; ./Makeme & cd ..; done

This should work for tags v1.16 and later.  Return to the most up-to-date 
version of the code by executing

     git checkout master

and again recompiling.

----------------------------    MODULES TO LOAD    -----------------------------
---------------------------- ON NERSC & LAWRENCIUM -----------------------------

  COMPDIRS/BIN.ecs.hermnorm.law,  COMPDIRS/BIN.ecs.hermnorm.edison, etc.

LAWRENCIUM:
  module load mkl

EDISON:
  module unload cray-libsci
  module load mkl
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].