CommentedInputFile

Antoine Input File

General Outline

This is the first part of the Antoine input file, for He-6 The general outline of a block is like following: (the unimportant variables are skipped in this short introduction)

1:st row: CAS 0 0 TYPE
CAS: is the n number of the option that you want to use.
TYPE: For NCSM-calculations TYPE=1, except some cases when max(N,Z)<=2, then TYPE=2 can be used

2:nd row:
Is depending on what option you chose in the previous line, but it's all about file-handling. All files are named as "FORT.*", where * is a number.
If your option is only reading a file, then the first number is the number of the file you want to read.
If your option is only writing a file, then the first number is the number of the file you want to write to.
In the case that the option both reads and writes to files, the second number is the number of the file you want to read.
The last two numbers are only used when want to restart a calculation, which is not covered in this introduction

3:rd row: N, Z, 2*Mz, Parity, JUMP, FLCUT, JLIM
N Z 2*M_z Parity: Doesn't need any further explanation, but note that if Z>N, use the opposite order of N and Z! (Parity: 0 = Even, 1 = Odd)
JUMP: Is Nmax, which is the maximum number of allowed hw excitations above the lowest possible configuration.
FLCUT: Decides if sharing is going to be used, and in that case which file that contains detailed information on the splitting of the basis (block structure). The file name should be fort.FLCUT.
If the model space isn't too big, use FLCUT=0, which is without sharing.
JLIM: Is an option that makes it possible to exclude some single-particle states with too high Jz. This option is not used that much, so the default value is JLIM=-1

File naming convention:

FORT.20+X - Wave functions for internal use in Antoine
FORT.50+X - Input file to TRDENS, with MBP-states and eigenvectors.
FORT.90+Y - TBME (from ncsmpnv2beff: "TBME.intbin")
Where X is Nmax, and Y=X/2

Input File

 84 0 0 0     # Option 84, which creates CDM files, i.e. center-of-mass Hamiltonian
 2 2              #  N1max=2, N2max=2. I.e. Nmax=2 for an s-shell nucleus. File stored as CDM_00002_00002

 84 0 0 0     # Option 84, second example
 3 4              #  N1max=3, N2max=4. I.e. Nmax=2 for a p-shell nucleus. File stored as CDM_00003_00004

7 0 0 1           # Option 7, which creates pivot vectors projected on J^2. The last number says that this is a NCSM-calc.
21 0 0           # Writes the pivot vectors in FORT.21, which is a temporary file
4 2 0 0 0 0 -1   # He-6, with 4 neutron and 2 protons. Parity = even, and N_max=0
1 0              # NCAL, (JVAL(k),k=1,NCAL): NCAL is the number of J-projections. and the NCAL following numbers are 
                   the 2*J values. (In this case, only one J-projection, with J=0)

12 0 0 1          #Lanczos calculation
20 21 0 0 0      #Write to FORT.20 and read FORT.21  
4 2 0 0 0 0 -1
90  2 10.0       #TBME, COUL, ZCOM = Reads TBME from FORT.90, Protons are the second kind of particles (Ordering of N and Z)
                 #ZCOM is the Lawson projection factor. In the case that the matrix elements are already recalculated a minus sign should be placed before TBME to use the precalulated M.E.
1  1             # NCAL, (NCON(k),k=1,NCAL) specifies which states to be calculated. 
                      NCAL is the number of J-projections and NCON(k) is the number of states
                      that should be converged for J-projection number k.
0 95 0.0001 0 0  # 0,NLOOP, ZFIT, IORTH, NLANZ. NLOOP is the maximum number of Lancoz iterations, ZFIT is the test of
                 # convergence. After every 3 iterations the routine tests the convergence.

19 0 0 1          #Calculates the radius
20 0 0
4 2 0 0 0 0 -1
90               #FORT.90 is read to get the TBME

33 0 0 1          #Creates input-file for TRDENS
50 20 0 0 0      #Reads FORT.20, and makes a new file (FORT.50) which is readable for TRDENS
4 2 0 0 0 0 -1

31 0 0 1          #Change truncation.
21 20 0 0 0      #"Copy" the smaller pivot vector, to use as a starting guess in the bigger space. This pivot vector is saved
                 #in a temporary file FORT.21
4 2 0 0 2 0 -1   #N_max=2

12 0 0 1          #In this bigger space (N_max=2) a new Lancoz iteration is done. (Following the same steps as in N_max=0)
22 21 0 0 0
4 2 0 0 2 0 -1
91  2 10.0
1  1
0 95 0.0001 0 0

...              # These steps are repeated until desired N_max and convergence is archived. 

0 0 0            # Ends Antoine

Sharing

For large model spaces sharing is needed. The main option for using sharing is (note that there is also an option=2 where instead of NBLOCKS one gives a dimension, in units of 10**6, and the code will aim for this number as an average size for blocks):

 3 0 0 1                   # Option 3, sharing into NBLOCKS
 4 2 0 0 18 35 -1   # sharing info (cuts) are stored in fort.35. 
 6                           # NBLOCKS (might be of slightly different size

 31 0 0 1
 21 36 0 0 0
 4 2 0 0 18 35 -1   # Note the use of fort.35 in subsequent blocks

 12 0 0 1
 38 21 0 0 0
 4 2 0 0 18 35 -1
 99 2 10.0
 1 1
 0 18 0.001 0 0

 19 0 0 1
 38 0 0
 4 2 0 0 18 35 -1
 99 

Restart Lanczos

For some runs you might need to restart after having finished a number of Lanczos iterations. If you also have the amat1 directory, with precomputed matrix elements, you can also re-use those. The following blocks demonstrate restarted Lanczos

 12 0 0 1
 30 21 0 0 0
 3 3 2 0 10 0 -1
 -95 2 10.0              # A negative integer for the interaction file (here, fort.95) indicates that amat1 should NOT be recomputed.
 1 1
 0 12 0.0005 0 50  # 0,NLOOP, ZFIT, IORTH, NLANZ. Lanczos will be restarted at min(NSTOR,NLANZ), 
                                # where NSTOR is the actual number of Lanczos vectors that is stored in the vec directory.

 12 0 0 1
 30 21 0 0 0
 3 3 2 0 10 0 -1
 95 2 10.0              # Same restart as above, but the amat1 files are recomputed
 1 1
 0 12 0.0005 0 50