psi Namespace Reference
[libqt: The Quantum-Trio Miscellaneous Library]

Rotate a set of vectors around an arbitrary axis Vectors are rows of input matrix. More...


Classes

class  BasisSet
 Basis set container class. More...
class  StatCombData
class  GaussianNormalization
class  OI_OSRecursor
class  OverlapEngine
class  RotationOp
class  GaussianShell
 Gaussian orbital shell. More...
class  Chkpt
struct  thread_data
struct  dpdparams4
struct  dpdfile4
struct  dpdshift4
struct  dpdbuf4
struct  dpdtrans4
struct  dpdparams2
struct  dpdfile2
struct  dpd_file4_cache_entry
struct  dpd_file2_cache_entry
struct  dpd_data
struct  dpd_gbl
struct  dpdpair
struct  iwlbuf
class  IWL
class  DipoleInt
 Computes dipole integrals. More...
class  ERI
 Capable of computing two-electron repulsion integrals. More...
class  MatrixFactory
 A class for creating Matrix, SimpleMatrix, Vector, and SimpleVector objects. More...
class  SphericalTransformComponent
class  SphericalTransform
class  SphericalTransformIter
class  IntegralsIterator
class  ShellCombinationsIterator
class  IntegralFactory
class  KineticInt
 Computes kinetic integrals. More...
class  Matrix
 Makes using matrices just a little earlier. More...
class  SimpleMatrix
 Simple matrix class. Not symmetry blocked. More...
class  Molecule
 Molecule information class. More...
class  OneBodyInt
 Basis class for all one-electron integrals. More...
class  ObaraSaikaTwoCenterRecursion
 Generic Obara and Saika recursion object. More...
class  ObaraSaikaTwoCenterMIRecursion
 Obara and Saika recursion object for moment integrals. Currently not used by DipoleInt, hopefully soon. THIS CLASS HAS NOT BEEN TESTED!!! More...
class  ObaraSaikaTwoCenterVIRecursion
 Obara and Saika recursion object for potential integrals. More...
class  ObaraSaikaTwoCenterVIDerivRecursion
 Obara and Saika recursion object for computing potential derivatives. More...
class  OverlapInt
 This class computes overlap integrals and soon overlap integral derivatives. Use an IntegralFactory to create this object. More...
class  PotentialInt
 Computes potential integrals. Use an IntegralFactory to create this object. More...
class  QuadrupoleInt
 Computes quadrupole integrals. At last check this may not be working. Use an IntegralFactory to create this object. More...
class  SOTransformComponent
class  SOTransformShell
class  SOTransformIter
class  SOTransform
class  SymmOp
class  TwoBodyInt
 Two body integral base class. More...
class  Vector
class  SimpleVector
class  Vector3
class  Wavefunction
 Simple wavefunction base class. More...
class  ModelSpace
class  MOInfo
class  MOInfoBase
class  MOInfoSCF
class  OrbitalSpace
class  SlaterDeterminant
class  DataTypeException
class  IndexException
class  DuplicateKeyException
class  NotImplementedException
class  OptionsException
class  DataType
class  BooleanDataType
class  IntDataType
class  DoubleDataType
class  StringDataType
class  Data
class  ArrayType
class  MapType
class  Options
class  Communicator
class  MPICommunicator
class  LocalCommunicator
struct  psio_address
struct  psio_vol
struct  psio_entry
struct  psio_ud
class  PSIO
struct  String
struct  StringSet
struct  SlaterDet
struct  SlaterDetSet
struct  SlaterDetVector
struct  timer
class  Timer
struct  AllocationEntry
class  MemoryManager
class  StandardObjectPolicy
class  StandardArrayPolicy
class  SimpleReferenceCount
class  Ref
class  Calculation
class  Element_to_Z
class  PsiException
class  SanityCheckError
class  FeatureNotImplemented
class  LimitExceeded
class  StepSizeError
class  MaxIterationsExceeded
class  ConvergenceError
class  ResourceAllocationError
class  InputException
class  bad_masses_io
class  Fragment
class  Molecular_system
class  Module
struct  ModuleInformation

Typedefs

typedef short int Label
typedef double Value
typedef shared_ptr< MatrixSharedMatrix
typedef shared_ptr< SimpleMatrixSharedSimpleMatrix
typedef shared_ptr< VectorSharedVector
typedef shared_ptr< SimpleVectorSharedSimpleVector
typedef unsigned long int ULI
typedef struct psi::psio_entry psio_tocentry
typedef std::vector< std::string > strvec

Enumerations

enum  indices {
  pqrs, pqsr, prqs, prsq,
  psqr, psrq, qprs, qpsr,
  qrps, qrsp, qspr, qsrp,
  rqps, rqsp, rpqs, rpsq,
  rsqp, rspq, sqrp, sqpr,
  srqp, srpq, spqr, sprq
}
enum  pattern {
  abc, acb, cab, cba,
  bca, bac
}
enum  ReferenceType { AllRefs, UniqueRefs, ClosedShellRefs, UniqueOpenShellRefs }
enum  energy_type { SCF, CISD, CCSD, G3 }
enum  PsiReturnType { Success, Failure, Balk }

Functions

void add_arr (double *a, double *b, double *c, int n)
void add_mat (double **a, double **b, double **c, int n, int m)
double ** block_matrix (unsigned long int n, unsigned long int m)
void free_block (double **array)
double dot_mat (double **a, double **b, int n)
void dot_arr (double *a, double *b, int n, double *value)
void eigout (double **a, double *b, double *c, int m, int n, FILE *out)
void eigsort (double *d, double **v, int n)
void mosort (double *d, double **v, int *sym, int nso, int nmo)
void eivout (double **a, double *b, int m, int n, FILE *out)
void ffile (FILE **fptr, char *suffix, int code)
void ffile_noexit (FILE **fptr, char *suffix, int code)
void ffileb (FILE **fptr, char *suffix, int code)
void ffileb_noexit (FILE **fptr, char *suffix, int code)
void ludcmp (double **, int, int *, double *)
void lubksb (double **, int, int *, double *)
void flin (double **a, double *b, int in, int im, double *det)
void fndcor (long int *maxcrb, FILE *infile, FILE *outfile)
double * init_array (unsigned long int size)
double ** init_matrix (unsigned long int n, unsigned long int m)
void free_matrix (double **array, unsigned long int size)
int * init_int_array (int size)
void zero_int_array (int *a, int size)
int ** init_int_matrix (int rows, int cols)
void free_int_matrix (int **array)
void zero_int_matrix (int **array, int rows, int cols)
void print_int_mat (int **a, int m, int n, FILE *out)
int psi_start (FILE **infile, FILE **outfile, char **psi_file_prefix, int argc, char *argv[], int overwrite_output)
int psi_stop (FILE *infile, FILE *outfile, char *psi_file_prefix)
char * psi_ifname ()
char * psi_ofname ()
char * psi_fprefix ()
void balance (double **a, int n)
void mat_to_arr (double **a, double *b, int m, int n)
void arr_to_mat (double **a, double *b, int m, int n)
void mmult (double **AF, int ta, double **BF, int tb, double **CF, int tc, int nr, int nl, int nc, int add)
void mxmb (double **a, int ia, int ja, double **b, int ib, int jb, double **c, int ic, int jc, int nrow, int nlnk, int ncol)
void print_array (double *a, int m, FILE *out)
void print_mat (double **a, int rows, int cols, FILE *out)
void rsp (int nm, int n, int nv, double *array, double *evals, int matz, double **evecs, double toler)
void sq_rsp (int nm, int n, double **array, double *evals, int matz, double **evecs, double toler)
void sq_to_tri (double **bmat, double *amat, int size)
void tri_to_block (double *a, double **b, int num_ir, int *num_so, int *ioff)
void block_to_tri (double *a, double **b, int num_ir, int *num_so, int *ioff)
void tri_to_sq (double *amat, double **bmat, int size)
void tstart ()
void tstop ()
void zero_arr (double *a, int size)
void zero_mat (double **a, int rows, int cols)
long int * init_long_int_array (int size)
void zero_long_int_array (long int *a, int size)
long int ** init_long_int_matrix (int rows, int cols)
void free_long_int_matrix (long int **array)
void zero_long_int_matrix (long int **array, int rows, int cols)
void print_long_int_mat (long int **a, int m, int n, FILE *out)
void tred2 (int n, double **a, double *d, double *e, int matz)
void tqli (int n, double *d, double **z, double *e, int matz, double toler)
void dpd_3d_sort (double ***Win, double ***Wout, int nirreps, int h, int *rowtot, int **rowidx, int ***roworb, int *asym, int *bsym, int *aoff, int *boff, int *cpi, int *coff, int **rowidx_out, enum pattern index, int sum)
int dpd_4mat_irrep_print (double **matrix, dpdparams4 *Params, int block, int my_irrep, FILE *outfile)
double ** dpd_block_matrix (int n, int m)
void dpd_free_block (double **array, int n, int m)
int dpd_buf4_axpbycz (dpdbuf4 *FileA, dpdbuf4 *FileB, dpdbuf4 *FileC, double a, double b, double c)
int dpd_buf4_axpy (dpdbuf4 *BufX, dpdbuf4 *BufY, double alpha)
int dpd_buf4_close (dpdbuf4 *Buf)
int dpd_buf4_copy (dpdbuf4 *InBuf, int outfilenum, const char *label)
int dpd_buf4_dirprd (dpdbuf4 *BufA, dpdbuf4 *BufB)
double dpd_buf4_dot (dpdbuf4 *BufA, dpdbuf4 *BufB)
double dpd_buf4_dot_self (dpdbuf4 *BufX)
int dpd_buf4_dump (dpdbuf4 *DPDBuf, struct iwlbuf *IWLBuf, int *prel, int *qrel, int *rrel, int *srel, int bk_pack, int swap23)
int dpd_buf4_init (dpdbuf4 *Buf, int inputfile, int irrep, int pqnum, int rsnum, int file_pqnum, int file_rsnum, int anti, const char *label)
int dpd_buf4_mat_irrep_close (dpdbuf4 *Buf, int irrep)
int dpd_buf4_mat_irrep_close_block (dpdbuf4 *Buf, int irrep, int num_pq)
int dpd_buf4_mat_irrep_init (dpdbuf4 *Buf, int irrep)
int dpd_buf4_mat_irrep_init_block (dpdbuf4 *Buf, int irrep, int num_pq)
int dpd_buf4_mat_irrep_rd (dpdbuf4 *Buf, int irrep)
int dpd_buf4_mat_irrep_rd_block (dpdbuf4 *Buf, int irrep, int start_pq, int num_pq)
int dpd_buf4_mat_irrep_row_close (dpdbuf4 *Buf, int irrep)
int dpd_buf4_mat_irrep_row_init (dpdbuf4 *Buf, int irrep)
int dpd_buf4_mat_irrep_row_rd (dpdbuf4 *Buf, int irrep, int pq)
int dpd_buf4_mat_irrep_row_wrt (dpdbuf4 *Buf, int irrep, int pq)
int dpd_buf4_mat_irrep_row_zero (dpdbuf4 *Buf, int irrep, int row)
int dpd_buf4_mat_irrep_shift13 (dpdbuf4 *Buf, int buf_block)
int dpd_buf4_mat_irrep_shift31 (dpdbuf4 *Buf, int buf_block)
int dpd_buf4_mat_irrep_wrt (dpdbuf4 *Buf, int irrep)
int dpd_buf4_mat_irrep_wrt_block (dpdbuf4 *Buf, int irrep, int start_pq, int num_pq)
int dpd_buf4_print (dpdbuf4 *Buf, FILE *outfile, int print_data)
int dpd_buf4_scm (dpdbuf4 *InBuf, double alpha)
int dpd_buf4_scmcopy (dpdbuf4 *InBuf, int outfilenum, const char *label, double alpha)
int dpd_buf4_sort (dpdbuf4 *InBuf, int outfilenum, enum indices index, int pqnum, int rsnum, const char *label)
int dpd_buf4_sort_axpy (dpdbuf4 *InBuf, int outfilenum, enum indices index, int pqnum, int rsnum, const char *label, double alpha)
int dpd_buf4_sort_ooc (dpdbuf4 *InBuf, int outfilenum, enum indices index, int pqnum, int rsnum, const char *label)
int dpd_buf4_symm (dpdbuf4 *Buf)
int dpd_buf4_symm2 (dpdbuf4 *Buf1, dpdbuf4 *Buf2)
void cc3_sigma_RHF (dpdbuf4 *CIjAb, dpdbuf4 *WAbEi, dpdbuf4 *WMbIj, int do_singles, dpdbuf4 *Dints, dpdfile2 *SIA, int do_doubles, dpdfile2 *FME, dpdbuf4 *WmAEf, dpdbuf4 *WMnIe, dpdbuf4 *SIjAb, int *occpi, int *occ_off, int *virtpi, int *vir_off, double omega, FILE *outfile, int newtrips)
void * cc3_sigma_RHF_ic_thread (void *thread_data)
void cc3_sigma_RHF_ic (dpdbuf4 *CIjAb, dpdbuf4 *WAbEi, dpdbuf4 *WMbIj, int do_singles, dpdbuf4 *Dints, dpdfile2 *SIA, int do_doubles, dpdfile2 *FME, dpdbuf4 *WmAEf, dpdbuf4 *WMnIe, dpdbuf4 *SIjAb, int *occpi, int *occ_off, int *virtpi, int *vir_off, double omega, FILE *outfile, int nthreads, int newtrips)
void cc3_sigma_UHF_AAA (dpdbuf4 *CMNEF, dpdbuf4 *WABEI, dpdbuf4 *WMBIJ, int do_singles, dpdbuf4 *Dints_anti, dpdfile2 *SIA, int do_doubles, dpdfile2 *FME, dpdbuf4 *WMAFE, dpdbuf4 *WMNIE, dpdbuf4 *SIJAB, int *aoccpi, int *aocc_off, int *avirtpi, int *avir_off, double omega, FILE *outfile)
void cc3_sigma_UHF_BBB (dpdbuf4 *Cmnef, dpdbuf4 *Wabei, dpdbuf4 *Wmbij, int do_singles, dpdbuf4 *Dijab_anti, dpdfile2 *Sia, int do_doubles, dpdfile2 *Fme, dpdbuf4 *Wmafe, dpdbuf4 *Wmnie, dpdbuf4 *Sijab, int *boccpi, int *bocc_off, int *bvirtpi, int *bvir_off, double omega, FILE *outfile)
void cc3_sigma_UHF_AAB (dpdbuf4 *C2AA, dpdbuf4 *C2AB, dpdbuf4 *C2BA, dpdbuf4 *FAA, dpdbuf4 *FAB, dpdbuf4 *FBA, dpdbuf4 *EAA, dpdbuf4 *EAB, dpdbuf4 *EBA, int do_singles, dpdbuf4 *DAA, dpdbuf4 *DAB, dpdfile2 *SIA, dpdfile2 *Sia, int do_doubles, dpdfile2 *FME, dpdfile2 *Fme, dpdbuf4 *WMAFE, dpdbuf4 *WMaFe, dpdbuf4 *WmAfE, dpdbuf4 *WMNIE, dpdbuf4 *WMnIe, dpdbuf4 *WmNiE, dpdbuf4 *SIJAB, dpdbuf4 *SIjAb, int *aoccpi, int *aocc_off, int *boccpi, int *bocc_off, int *avirtpi, int *avir_off, int *bvirtpi, int *bvir_off, double omega, FILE *outfile)
void cc3_sigma_UHF_BBA (dpdbuf4 *C2BB, dpdbuf4 *C2AB, dpdbuf4 *C2BA, dpdbuf4 *FBB, dpdbuf4 *FAB, dpdbuf4 *FBA, dpdbuf4 *EBB, dpdbuf4 *EAB, dpdbuf4 *EBA, int do_singles, dpdbuf4 *DBB, dpdbuf4 *DBA, dpdfile2 *SIA, dpdfile2 *Sia, int do_doubles, dpdfile2 *FME, dpdfile2 *Fme, dpdbuf4 *Wmafe, dpdbuf4 *WMaFe, dpdbuf4 *WmAfE, dpdbuf4 *Wmnie, dpdbuf4 *WMnIe, dpdbuf4 *WmNiE, dpdbuf4 *Sijab, dpdbuf4 *SIjAb, int *aoccpi, int *aocc_off, int *boccpi, int *bocc_off, int *avirtpi, int *avir_off, int *bvirtpi, int *bvir_off, double omega, FILE *outfile)
int dpd_close (int dpd_num)
int dpd_contract222 (dpdfile2 *X, dpdfile2 *Y, dpdfile2 *Z, int target_X, int target_Y, double alpha, double beta)
int dpd_contract244 (dpdfile2 *X, dpdbuf4 *Y, dpdbuf4 *Z, int sum_X, int sum_Y, int Ztrans, double alpha, double beta)
int dpd_contract422 (dpdbuf4 *X, dpdfile2 *Y, dpdfile2 *Z, int trans_Y, int trans_Z, double alpha, double beta)
int dpd_contract424 (dpdbuf4 *X, dpdfile2 *Y, dpdbuf4 *Z, int sum_X, int sum_Y, int Ztrans, double alpha, double beta)
int dpd_contract442 (dpdbuf4 *X, dpdbuf4 *Y, dpdfile2 *Z, int target_X, int target_Y, double alpha, double beta)
int dpd_contract444 (dpdbuf4 *X, dpdbuf4 *Y, dpdbuf4 *Z, int target_X, int target_Y, double alpha, double beta)
int dpd_dot13 (dpdfile2 *T, dpdbuf4 *I, dpdfile2 *Z, int transt, int transz, double alpha, double beta)
int dpd_dot14 (dpdfile2 *T, dpdbuf4 *I, dpdfile2 *Z, int transt, int transz, double alpha, double beta)
int dpd_dot23 (dpdfile2 *T, dpdbuf4 *I, dpdfile2 *Z, int transt, int transz, double alpha, double beta)
int dpd_dot24 (dpdfile2 *T, dpdbuf4 *I, dpdfile2 *Z, int transt, int transz, double alpha, double beta)
int dpd_init (int dpd_num, int nirreps, long int memory, int cachetype, int *cachefiles, int **cachelist, struct dpd_file4_cache_entry *priority, int num_subspaces,...)
int dpd_init (int dpd_num, int nirreps, long int memory, int cachetype, int *cachefiles, int **cachelist, struct dpd_file4_cache_entry *priority, int num_subspaces, std::vector< int * > &spaceArrays)
int dpd_set_default (int dpd_num)
void dpd_error (const char *caller, FILE *outfile)
long int dpd_memfree (void)
void dpd_memset (long int)
int dpd_trace42_13 (dpdbuf4 *A, dpdfile2 *B, int transb, double alpha, double beta)
int dpd_file2_init (dpdfile2 *File, int filenum, int irrep, int pnum, int qnum, const char *label)
int dpd_file2_close (dpdfile2 *File)
int dpd_file2_mat_init (dpdfile2 *File)
int dpd_file2_mat_close (dpdfile2 *File)
int dpd_file2_mat_rd (dpdfile2 *File)
int dpd_file2_mat_wrt (dpdfile2 *File)
int dpd_file2_print (dpdfile2 *File, FILE *outfile)
int dpd_file2_mat_print (dpdfile2 *File, FILE *outfile)
int dpd_file2_copy (dpdfile2 *InFile, int outfilenum, const char *label)
int dpd_file2_dirprd (dpdfile2 *FileA, dpdfile2 *FileB)
double dpd_file2_dot (dpdfile2 *FileA, dpdfile2 *FileB)
int dpd_file2_scm (dpdfile2 *InFile, double alpha)
double dpd_file2_dot_self (dpdfile2 *BufX)
double dpd_file2_trace (dpdfile2 *InFile)
int dpd_file2_axpy (dpdfile2 *FileA, dpdfile2 *FileB, double alpha, int transA)
int dpd_file2_axpbycz (dpdfile2 *FileA, dpdfile2 *FileB, dpdfile2 *FileC, double a, double b, double c)
int dpd_file4_init (dpdfile4 *File, int filenum, int irrep, int pqnum, int rsnum, const char *label)
int dpd_file4_init_nocache (dpdfile4 *File, int filenum, int irrep, int pqnum, int rsnum, const char *label)
int dpd_file4_close (dpdfile4 *File)
int dpd_file4_mat_irrep_init (dpdfile4 *File, int irrep)
int dpd_file4_mat_irrep_close (dpdfile4 *File, int irrep)
int dpd_file4_mat_irrep_rd (dpdfile4 *File, int irrep)
int dpd_file4_mat_irrep_wrt (dpdfile4 *File, int irrep)
int dpd_file4_mat_irrep_row_init (dpdfile4 *File, int irrep)
int dpd_file4_mat_irrep_row_close (dpdfile4 *File, int irrep)
int dpd_file4_mat_irrep_row_rd (dpdfile4 *File, int irrep, int row)
int dpd_file4_mat_irrep_row_wrt (dpdfile4 *File, int irrep, int row)
int dpd_file4_mat_irrep_row_zero (dpdfile4 *File, int irrep, int row)
int dpd_file4_print (dpdfile4 *File, FILE *outfile)
int dpd_file4_mat_irrep_rd_block (dpdfile4 *File, int irrep, int start_pq, int num_pq)
int dpd_file4_mat_irrep_wrt_block (dpdfile4 *File, int irrep, int start_pq, int num_pq)
int dpd_trans4_init (dpdtrans4 *Trans, dpdbuf4 *Buf)
int dpd_trans4_close (dpdtrans4 *Trans)
int dpd_trans4_mat_irrep_init (dpdtrans4 *Trans, int irrep)
int dpd_trans4_mat_irrep_close (dpdtrans4 *Trans, int irrep)
int dpd_trans4_mat_irrep_rd (dpdtrans4 *Trans, int irrep)
int dpd_trans4_mat_irrep_wrt (dpdtrans4 *Trans, int irrep)
int dpd_trans4_mat_irrep_shift13 (dpdtrans4 *Trans, int irrep)
int dpd_trans4_mat_irrep_shift31 (dpdtrans4 *Trans, int irrep)
void dpd_file2_cache_init (void)
void dpd_file2_cache_close (void)
void dpd_file2_cache_print (FILE *outfile)
struct dpd_file2_cache_entry * dpd_file2_cache_scan (int filenum, int irrep, int pnum, int qnum, const char *label, int dpdnum)
struct dpd_file2_cache_entry * dpd_file2_cache_last (void)
int dpd_file2_cache_add (dpdfile2 *File)
int dpd_file2_cache_del (dpdfile2 *File)
int dpd_file4_cache_del_low (void)
void dpd_file2_cache_dirty (dpdfile2 *File)
void dpd_file4_cache_init (void)
void dpd_file4_cache_close (void)
void dpd_file4_cache_print (FILE *outfile)
void dpd_file4_cache_print_screen (void)
int dpd_file4_cache_get_priority (dpdfile4 *File)
struct dpd_file4_cache_entry * dpd_file4_cache_scan (int filenum, int irrep, int pqnum, int rsnum, const char *label, int dpdnum)
struct dpd_file4_cache_entry * dpd_file4_cache_last (void)
int dpd_file4_cache_add (dpdfile4 *File, unsigned int priority)
int dpd_file4_cache_del (dpdfile4 *File)
struct dpd_file4_cache_entry * dpd_file4_cache_find_lru (void)
int dpd_file4_cache_del_lru (void)
void dpd_file4_cache_dirty (dpdfile4 *File)
void dpd_file4_cache_lock (dpdfile4 *File)
void dpd_file4_cache_unlock (dpdfile4 *File)
void T3_AAA (double ***W1, int nirreps, int I, int Gi, int J, int Gj, int K, int Gk, dpdbuf4 *T2, dpdbuf4 *F, dpdbuf4 *E, dpdfile2 *fIJ, dpdfile2 *fAB, int *occpi, int *occ_off, int *virtpi, int *vir_off, double omega)
void T3_AAB (double ***W1, int nirreps, int I, int Gi, int J, int Gj, int K, int Gk, dpdbuf4 *T2AA, dpdbuf4 *T2AB, dpdbuf4 *T2BA, dpdbuf4 *FAA, dpdbuf4 *FAB, dpdbuf4 *FBA, dpdbuf4 *EAA, dpdbuf4 *EAB, dpdbuf4 *EBA, dpdfile2 *fIJ, dpdfile2 *fij, dpdfile2 *fAB, dpdfile2 *fab, int *aoccpi, int *aocc_off, int *boccpi, int *bocc_off, int *avirtpi, int *avir_off, int *bvirtpi, int *bvir_off, double omega)
void T3_RHF (double ***W1, int nirreps, int I, int Gi, int J, int Gj, int K, int Gk, dpdbuf4 *T2, dpdbuf4 *F, dpdbuf4 *E, dpdfile2 *fIJ, dpdfile2 *fAB, int *occpi, int *occ_off, int *virtpi, int *vir_off, double omega)
void T3_RHF_ic (double ***W1, int nirreps, int I, int Gi, int J, int Gj, int K, int Gk, dpdbuf4 *T2, dpdbuf4 *F, dpdbuf4 *E, dpdfile2 *fIJ, dpdfile2 *fAB, int *occpi, int *occ_off, int *virtpi, int *vir_off, double omega)
struct dpd_file4_cache_entry * dpd_file4_cache_find_low (void)
void iwl_buf_close (struct iwlbuf *Buf, int k)
void iwl_buf_fetch (struct iwlbuf *Buf)
void iwl_buf_flush (struct iwlbuf *Buf, int lastbuf)
void iwl_buf_init (struct iwlbuf *Buf, int itape, double cutoff, int oldfile, int readflag)
void iwl_buf_put (struct iwlbuf *Buf)
int iwl_buf_rd (struct iwlbuf *Buf, int target_pq, double *ints, int *ioff_lt, int *ioff_rt, int mp2, int printflg, FILE *out)
int iwl_buf_rd_all (struct iwlbuf *Buf, double *ints, int *ioff_lt, int *ioff_rt, int no_pq_perm, int *ioff, int printflg, FILE *out)
int iwl_buf_rd_all2 (struct iwlbuf *Buf, double **ints, int *ioff_lt, int *ioff_rt, int no_pq_perm, int *, int printflg, FILE *out)
int iwl_buf_rd_all_act (struct iwlbuf *Buf, double *ints, int *ioff_lt, int *ioff_rt, int no_pq_perm, int *ioff, int fstact, int lstact, int printflg, FILE *out)
int iwl_buf_rd_all_mp2r12a (struct iwlbuf *Buf, double *ints, int *ioff_lt, int *ioff_rt, int bra_ket_symm, int *, int printflg, FILE *out)
int iwl_buf_rd_arr (struct iwlbuf *Buf, int target_pq, double *ints, int *rlist, int *slist, int *size, int *ioff, int printflg, FILE *out)
int iwl_buf_rd_arr2 (struct iwlbuf *Buf, double *ints, int *plist, int *qlist, int *rlist, int *slist, int *size, int *ioff, int printflg, FILE *out)
void iwl_buf_toend (struct iwlbuf *Buf)
void iwl_buf_wrt (struct iwlbuf *Buf, int p, int q, int pq, int pqsym, double *arr, int rmax, int *ioff, int *orbsym, int *firsti, int *lasti, int printflag, FILE *out)
void iwl_buf_wrt_all (struct iwlbuf *Buf, int nbfso, double *ints, int *ioff, int printflg, FILE *out)
void iwl_buf_wrt_arr (struct iwlbuf *Buf, double *arr, int *p, int *q, int *r, int *s, long int size)
void iwl_buf_wrt_arr2 (struct iwlbuf *Buf, double *arr, int p, int q, int *rlist, int *slist, int size, int printflag, FILE *out)
void iwl_buf_wrt_arr_SI (struct iwlbuf *Buf, double *arr, short int *p, short int *q, short int *r, short int *s, int size)
void iwl_buf_wrt_arr_SI_nocut (struct iwlbuf *Buf, double *arr, short int *p, short int *q, short int *r, short int *s, int size)
void iwl_buf_wrt_mat (struct iwlbuf *Buf, int ptr, int qtr, double **mat, int rfirst, int rlast, int sfirst, int slast, int *reorder, int reorder_offset, int printflag, int *ioff, FILE *out)
void iwl_buf_wrt_mat2 (struct iwlbuf *Buf, int ptr, int qtr, double **mat, int rfirst, int rlast, int sfirst, int slast, int *reorder, int reorder_offset, int printflag, int *ioff, FILE *out)
void iwl_buf_wrt_mp2 (struct iwlbuf *Buf, int p, int q, int pq, int pqsym, double **arr, int rsym, int *firstr, int *lastr, int *firsts, int *lasts, int *occ, int *vir, int *ioff, int printflag, FILE *out)
void iwl_buf_wrt_mp2r12a (struct iwlbuf *Buf, int p, int q, int pq, int pqsym, double **arr, int rsym, int *firstr, int *lastr, int *firsts, int *lasts, int *occ, int bra_ket_symm, int *ioff, int printflag, FILE *out)
void iwl_buf_wrt_val (struct iwlbuf *Buf, int p, int q, int r, int s, double value, int printflag, FILE *out, int dirac)
void iwl_buf_wrt_val_SI (struct iwlbuf *Buf, short int p, short int q, short int r, short int s, double value, int printflag, FILE *out, int dirac)
int iwl_rdone (int itap, const char *label, double *ints, int ntri, int erase, int printflg, FILE *outfile)
void iwl_wrtone (int itap, const char *label, int ntri, double *onel_ints)
void iwl_rdtwo (int itap, double *ints, int *ioff, int norbs, int nfzc, int nfzv, int printflg, FILE *outfile)
void iwl_wrttwo (int itap, int nbfso, double *ints, int *ioff, double toler, int printflg, FILE *outfile)
void sortbuf (struct iwlbuf *inbuf, struct iwlbuf *outbuf, double *ints, int fpq, int lpq, int *ioff, int *ioff2, int nbfso, int elbert, int intermediate, int no_pq_perm, int qdim, int add, int printflg, FILE *outfile)
Vector3 operator* (double, const Vector3 &)
int psio_close (unsigned int unit, int keep)
int psio_done (void)
void psio_error (unsigned int unit, unsigned int errval)
std::string fullkwd (const char *kwdgrp, const char *kwd, int unit)
int psio_set_filescfg_kwd (const char *kwdgrp, const char *kwd, int unit, const char *kwdval)
const char * psio_get_filescfg_kwd (const char *kwdgrp, const char *kwd, int unit)
psio_address psio_get_address (psio_address start, ULI shift)
int psio_get_filename_default (char **name)
psio_address psio_get_global_address (psio_address entry_start, psio_address rel_address)
ULI psio_get_length (psio_address sadd, psio_address eadd)
unsigned int psio_get_numvols_default (void)
int psio_get_volpath_default (unsigned int volume, char **path)
int psio_init (void)
int psio_state ()
int psiopp_ipv1_config (PSIO *psio_obj)
int psiopp_ipv1_config (shared_ptr< PSIO > psio_obj)
int psio_ipv1_config ()
int psio_open (unsigned int unit, int status)
int psio_open_check (unsigned int unit)
int psio_volseek (psio_vol *vol, ULI page, ULI offset, ULI numvols)
psio_address psio_get_entry_end (unsigned int unit, const char *key)
int psio_tocwrite (unsigned int unit)
int psio_tocread (unsigned int unit)
void psio_tocprint (unsigned int unit, FILE *output)
psio_tocentry * psio_tocscan (unsigned int unit, const char *key)
psio_tocentry * psio_toclast (unsigned int unit)
unsigned int psio_toclen (unsigned int unit)
int psio_tocclean (unsigned int unit, const char *key)
int psio_write (unsigned int unit, const char *key, char *buffer, ULI size, psio_address sadd, psio_address *eadd)
int psio_read (unsigned int unit, const char *key, char *buffer, ULI size, psio_address sadd, psio_address *eadd)
int psio_write_entry (unsigned int unit, const char *key, char *buffer, ULI size)
int psio_read_entry (unsigned int unit, const char *key, char *buffer, ULI size)
int psio_write_block (unsigned int unit, const char *key, char *buffer, ULI blksiz, ULI start_blk, ULI end_blk)
int psio_read_block (unsigned int unit, const char *key, char *buffer, ULI blksiz, ULI start_blk, ULI end_blk)
int psio_rw (unsigned int unit, char *buffer, psio_address address, ULI size, int wrt)
ULI psio_rd_toclen (unsigned int unit)
void psio_wt_toclen (unsigned int unit, ULI toclen)
double *** init_3d_array (int p, int q, int r)
void free_3d_array (double ***A, int p, int q)
void C_DAXPY (int length, double a, double *x, int inc_x, double *y, int inc_y)
void C_DCOPY (int length, double *x, int inc_x, double *y, int inc_y)
void C_DSCAL (int length, double alpha, double *vec, int inc)
void C_DROT (int length, double *x, int inc_x, double *y, int inc_y, double costheta, double sintheta)
void C_DGEMM (char transa, char transb, int m, int n, int k, double alpha, double *A, int nca, double *B, int ncb, double beta, double *C, int ncc)
void C_DGEMV (char transa, int m, int n, double alpha, double *A, int nca, double *X, int inc_x, double beta, double *Y, int inc_y)
void C_DSPMV (char uplo, int n, double alpha, double *A, double *X, int inc_x, double beta, double *Y, int inc_y)
double C_DDOT (int n, double *x, int inc_x, double *y, int inc_y)
int cc_excited (char *wfn)
int cc_excited (std::string wfn)
int cc_wfn (char *wfn)
int cc_wfn (std::string wfn)
int ci_wfn (char *wfn)
int ci_wfn (std::string wfn)
int david (double **A, int N, int M, double *eps, double **v, double cutoff, int print)
void dirprd_block (double **A, double **B, int rows, int cols)
double dot_block (double **A, double **B, int rows, int cols, double alpha)
double eri (unsigned int l1, unsigned int m1, unsigned int n1, double alpha1, double A[3], unsigned int l2, unsigned int m2, unsigned int n2, double alpha2, double B[3], unsigned int l3, unsigned int m3, unsigned int n3, double alpha3, double C[3], unsigned int l4, unsigned int m4, unsigned int n4, double alpha4, double D[3], int norm_flag)
double norm_const (unsigned int l1, unsigned int m1, unsigned int n1, double alpha1, double A[3])
void fill_sym_matrix (double **A, int size)
void filter (double *input, double *output, int *ioff, int norbs, int nfzc, int nfzv)
int * get_frzcpi ()
int * get_frzvpi ()
double invert_matrix (double **a, double **y, int N, FILE *outfile)
int C_DGEEV (int n, double **a, int lda, double *wr, double *wi, double **vl, int ldvl, double **vr, int ldvr, double *work, int lwork, int info)
int C_DGESV (int n, int nrhs, double *a, int lda, int *ipiv, double *b, int ldb)
int C_DGETRF (int nrow, int ncol, double *a, int lda, int *ipiv)
int C_DGETRI (int n, double *a, int lda, int *ipiv, double *work, int lwork)
int C_DGESVD (char jobu, char jobvt, int m, int n, double *A, int lda, double *s, double *u, int ldu, double *vt, int ldvt, double *work, int lwork)
int C_DSYEV (char jobz, char uplo, int n, double *A, int lda, double *w, double *work, int lwork)
int mat_in (FILE *fp, double **array, int width, int max_length, int *stat)
int mat_print (double **matrix, int rows, int cols, FILE *outfile)
void newmm_rking (double **A, int transa, double **B, int transb, double **C, int num_rows, int num_links, int num_cols, double alpha, double beta)
void normalize (double **A, int rows, int cols)
double dot_prod (double *v1, double *v2)
void cross_prod (double *v1, double *v2, double *out)
void unit_vec (double *B, double *A, double *AB)
void orient_fragment (int natom_A, int natom_B, int P_A, int P_B, double **geom_A, double **geom_B, double **ref_coeff_A, double **ref_coeff_B, double R_AB, double theta_A, double theta_B, double tau, double phi_A, double phi_B, FILE *outfile)
int pople (double **A, double *x, int dimen, int num_vecs, double tolerance, FILE *outfile, int print_lvl)
double combinations (int n, int k)
double factorial (int n)
void schmidt (double **A, int rows, int cols, FILE *outfile)
int schmidt_add (double **A, int rows, int cols, double *v)
void solve_2x2_pep (double **H, double S, double *evals, double **evecs)
void reorder_qt (int *docc_in, int *socc_in, int *frozen_docc_in, int *frozen_uocc_in, int *order, int *orbs_per_irrep, int nirreps)
void reorder_qt_uhf (int *docc, int *socc, int *frozen_docc, int *frozen_uocc, int *order_alpha, int *order_beta, int *orbspi, int nirreps)
void reorder_ras (int *docc_in, int *socc_in, int *frozen_docc_in, int *frozen_uocc_in, int *order, int *orbs_per_irrep, int *ras1, int *ras2, int *ras3, int *ras4, int do_ras4, int nirreps)
void reorder_ras2 (int *docc_in, int *socc_in, int *frozen_docc_in, int *frozen_uocc_in, int *order, int *orbs_per_irrep, int *ras1, int *ras2, int *ras3, int *ras4, int parsed_ras1, int parsed_ras2, int do_ras4, int nirreps)
int ras_set (int nirreps, int nbfso, int freeze_core, int *orbspi, int *docc, int *socc, int *frdocc, int *fruocc, int **ras_opi, int *order, int ras_type)
int ras_set2 (int nirreps, int nbfso, int delete_fzdocc, int delete_restrdocc, int *orbspi, int *docc, int *socc, int *frdocc, int *fruocc, int *restrdocc, int *restruocc, int **ras_opi, int *order, int ras_type, int hoffmann)
void timer_init (void)
void timer_done (void)
void timer_on (const char *key)
void timer_off (const char *key)
void print_block (double *, int, int, FILE *)
void sort (double *A, double **B, int n)
void sort_vector (double *A, int n)
void zmat_point (double *A, double *B, double *C, double R_CD, double theta_BCD, double phi_ABCD, double *D)
void rotate_vecs (double *axis, double phi, double **vectors, int num_vectors)
char * strncpy (char *dest, const char *source, size_t n)
 Same as strncpy(), but make sure that dest ends in .
double bisect (double(*function)(double), double low, double high, double tolerance, int maxiter, int printflag)
double newton (double(*F)(double), double(*dF)(double), double x, double tolerance, int maxiter, int printflag)
double secant (double(*F)(double), double x0, double x1, double tolerance, int maxiter, int printflag)
void stringset_init (StringSet *sset, int size, int nelec, int nfzc, short int *frozen_occ)
void stringset_delete (StringSet *sset)
void stringset_add (StringSet *sset, int index, unsigned char *Occ)
void stringset_reindex (StringSet *sset, short int *mo_map)
void stringset_write (ULI unit, char *prefix, StringSet *sset)
void stringset_read (ULI unit, char *prefix, StringSet **stringset)
void slaterdetset_init (SlaterDetSet *sdset, int size, StringSet *alphastrings, StringSet *betastrings)
void slaterdetset_delete (SlaterDetSet *sdset)
void slaterdetset_delete_full (SlaterDetSet *sdset)
void slaterdetset_add (SlaterDetSet *sdset, int index, int alphastring, int betastring)
void slaterdetset_write (ULI unit, char *prefix, SlaterDetSet *sdset)
void slaterdetset_read (ULI unit, char *prefix, SlaterDetSet **slaterdetset)
void slaterdetvector_init (SlaterDetVector *sdvector, SlaterDetSet *sdset)
void slaterdetvector_delete (SlaterDetVector *sdvector)
void slaterdetvector_delete_full (SlaterDetVector *sdvector)
void slaterdetvector_add (SlaterDetVector *sdvector, int index, double coeff)
void slaterdetvector_set (SlaterDetVector *sdvector, double *coeffs)
void slaterdetvector_write (ULI unit, char *prefix, SlaterDetVector *vector)
void slaterdetset_write_vect (ULI unit, char *prefix, double *coeffs, int size, int vectnum)
void slaterdetvector_read (ULI unit, char *prefix, SlaterDetVector **sdvector)
void slaterdetset_read_vect (ULI unit, char *prefix, double *coeffs, int size, int vectnum)
struct timer * timer_scan (const char *key)
struct timer * timer_last (void)
void generate_combinations (int n, int k, std::vector< std::vector< int > > &combinations)
std::string file_to_string (std::string const &name)
bool space (char c)
bool not_space (char c)
std::vector< std::string > split (const std::string &str)
std::vector< std::string > split_indices (const std::string &str)
void to_lower (std::string &str)
void to_upper (std::string &str)
std::string to_string (const int val)
std::string to_string (const double val)
double to_double (const std::string str)
double ToDouble (const std::string inString)
int string_to_integer (const std::string inString)
void append_reference (std::string &str, int reference)
std::string add_reference (std::string &str, int reference)
std::string find_and_replace (std::string &source, const std::string &target, const std::string &replace)
void trim_spaces (std::string &str)
double bytes_to_MiB (size_t n)
template<typename T>
double type_to_MiB (size_t n)
bool opening_square_bracket (char c)
bool closing_square_bracket (char c)
double to_MB (size_t n)
unsigned long int init_smatrix (short **&matrix, int size1, int size2)
unsigned long int free_smatrix (short **&matrix, int size1, int size2)
unsigned long int init_smatrix (short ***&matrix, int size1, int size2, int size3)
unsigned long int free_smatrix (short ***matrix, int size1, int size2, int size3)
void punt (const char *mess)
 Handles unexpected termination.
double ** symm_matrix_invert (double **_A, int dim, int print_det, int redundant)
 Inverts a symmetric matrix.
void psiclean (void)
void register_modules ()
void enable_modules ()
int read_options (std::string name, Options &options)
void launch_module (std::string modname, Options &options, int argc, char *argv[], std::map< std::string, PsiReturnType(*)(Options &, int argc, char *argv[])> &dispatch_table)
void execute_sequence (std::string sequence[], Options &options, int argc, char *argv[], std::map< std::string, PsiReturnType(*)(Options &, int argc, char *argv[])> &dispatch_table)
int psi3_simulator (Options &options, int argc, char *argv[])
int psi_start (int argc, char *argv[])
void print_version (FILE *)
void set_memory (FILE *infile, FILE *outfile)
int psi4_driver (Options &options, int argc, char *argv[])
int read_options (const std::string &name, Options &options)
void read_atom_basis (char **&atom_basis, int num_atoms)
bool initialize_ruby ()
void load_input_file_into_ruby ()
void process_input_file ()
void finalize_ruby ()
int run_interactive_ruby ()
bool create_global_task ()
void setup_driver (Options &options)
void print_usage ()

Variables

Chkpt_default_chkpt_lib_ = 0
time_t time_start
time_t time_end
FILE * outfile
FILE * infile
ModelSpace * model_space
MOInfo * moinfo
MOInfoSCF * moinfo_scf
psio_address PSIO_ZERO = { 0, 0 }
PSIO_default_psio_lib_ = 0
struct timer * global_timer
time_t timer_start
time_t timer_end
MemoryManager * _memory_manager_
int myid
int nprocs
Chkptchkpt
ModuleInformation modules_ []
PSIOpsio = NULL
std::map< std::string,
PsiReturnType(*)(Options
&, int argc, char *argv[])> 
dispatch_table
EXT char ** atom_basis
EXT std::string g_szInputFile
EXT std::string g_szOutputFilename
EXT bool g_bVerbose
EXT bool check_only
EXT bool clean_only
int g_iPutsIndent
bool g_bQuietRuby
bool g_bIRB
void * g_rbExecNode
Module module
char * psi_file_prefix
const std::string Z_to_element []


Detailed Description

Rotate a set of vectors around an arbitrary axis Vectors are rows of input matrix.

rotate_vecs(): Rotate a set of vectors around an arbitrary axis

Parameters:
w double * : axis to rotate around (wx, wy, wz) - gets normalized here
phi double : magnitude of rotation
v double ** : points to rotate - column dim is 3; overwritten on exit
num_v int :
Returns: none

Rollin King, Feb. 2008

AEL() computes the approximate excitation level according to Stanton and Bartlett, JCP, 98, 1993, 7034. Trace [rho(excited) - rho(ground)] = AEL where both densities are expressed in the basis that diagonalizes the ground-state CCSD density. I was never able to get these results to agree with those of JFS or the current ACES2 so I'm not going to use this right now. --RAK


Function Documentation

int psi::dpd_file4_init_nocache ( dpdfile4 *  File,
int  filenum,
int  irrep,
int  pqnum,
int  rsnum,
const char *  label 
)

This file4_init() does not add the file4 to the cache

void psi::generate_combinations ( int  n,
int  k,
std::vector< std::vector< int > > &  combinations 
)

Generate combinations of 0,1,...,(n-1) taken k at a time

Parameters:
n 
k 
combinations a vector<vector<int> > that will store all the combinations

int psi::iwl_buf_rd_arr2 ( struct iwlbuf *  Buf,
double *  ints,
int *  plist,
int *  qlist,
int *  rlist,
int *  slist,
int *  size,
int *  ioff,
int  printflg,
FILE *  out 
)

iwl_buf_rd_arr2()

Read from an Integrals With Labels formatted PSI buffer. The buffer must have been initialized with iwl_buf_init(). The integrals and their labels are returned in the arrays ints, plist, qlist, rlist, and slist, and the size of these arrays is returned in 'size.'

Returns: 0 if end of file, otherwise 1

Revised 6/27/96 by CDS for new format

void psi::print_usage ( void   ) 

Print command-line usage information.

void psi::print_version ( FILE *  myout  ) 

Print PSI version information that was set in configure.ac

void psi::psiclean ( void   ) 

psiclean():

Remove all psio files. This should serve as a more elegant replacement for the PSI3 utility psiclean, which executed system calls to delete the files.

int psi::psiopp_ipv1_config ( PSIO *  psio_obj  ) 

This function initializes the libpsio library using the .psirc file + input file

int psi::run_interactive_ruby (  ) 

Handles running Ruby interactively. This version makes use of the irb module found in Ruby to handle Ruby input parsing.

char * psi::strncpy ( char *  dest,
const char *  source,
size_t  n 
)

Same as strncpy(), but make sure that dest ends in .

strncpy(): Override default strncpy to ensure last byte is a string terminating character.

Parameters:
dest = destination string
source = source string
n = number of characters to copy
Returns: pointer to destination string

psi::symm_matrix_invert ( double **  _A,
int  dim,
int  print_det,
int  redundant 
)

Inverts a symmetric matrix.

Parameters:
**_A the matrix to invert
dim dimension of the matrix
print_det 1 to print determinant
redundant 1 if redundant coordinates

double psi::to_MB ( size_t  n  ) 

Convert the size of a doubles array in Mb using the definition 1Mb = 1048576 bytes

Parameters:
n size of the array
Returns:


Variable Documentation

EXT bool psi::check_only

sanity check boolean

Verbosity

Global task object

EXT std::string psi::g_szInputFile

The name of the input file, could be useful for something

EXT std::string psi::g_szOutputFilename

Name of the output file

ModuleInformation psi::modules_[]

Initial value:

 {
    { "input", &input::input, &input::register_input_options },
    { "",       NULL,          NULL}                       
  }

int psi::myid

This is called immediately before a module is run. Any options expected by that module must be added here

Parameters:
name - the name of the module.
options - the liboptions module used in the computations.

psio_address psi::PSIO_ZERO = { 0, 0 }

A convenient address initialization struct

const std::string psi::Z_to_element[]

Initial value:

 {

"GHOST", "HYDROGEN", "HELIUM",


"LITHIUM", "BERYLLIUM", "BORON", "CARBON", "NITROGEN", "OXYGEN", "FLUORINE", "NEON",


"SODIUM", "MAGNESIUM", "ALUMINUM", "SILICON", "PHOSPHORUS", "SULFUR", "CHLORINE", "ARGON",
"POTASSIUM", "CALCIUM", "SCANDIUM", "TITANIUM", "VANADIUM", "CHROMIUM", "MANGANESE",
"IRON", "COBALT", "NICKEL", "COPPER", "ZINC", "GALLIUM", "GERMANIUM", "ARSENIC", "SELENIUM",
"BROMINE", "KRYPTON",


"RUBIDIUM", "STRONTIUM", "YTTRIUM", "ZIRCONIUM", "NIOBIUM", "MOLYBDENUM", "TECHNETIUM",
"RUTHENIUM", "RHODIUM", "PALLADIUM", "SILVER", "CADMIUM", "INDIUM", "TIN", "ANTIMONY",
"TELLURIUM", "IODINE", "XENON",

"CESIUM", "BARIUM", "LANTHANUM", "CERIUM", "PRASEODYMIUM", "NEODYMIUM", "PROMETHIUM",
"SAMARIUM", "EUROPIUM", "GADOLINIUM", "TERBIUM", "DYSPROSIUM", "HOLMIUM", "ERBIUM",
"THULIUM", "YTTERBIUM", "LUTETIUM", "HAFNIUM", "TANTALUM", "TUNGSTEN", "RHENIUM",
"OSMIUM", "IRIDIUM", "PLATINUM", "GOLD", "MERCURY", "THALLIUM", "LEAD", "BISMUTH",
"POLONIUM", "ASTATINE", "RADON",

"FRANCIUM", "RADIUM", "ACTINIUM", "THORIUM", "PROTACTINIUM", "URANIUM", "NEPTUNIUM",
"PLUTONIUM", "AMERICIUM", "CURIUM", "BERKELIUM", "CALIFORNIUM", "EINSTEINIUM", "FERMIUM",
"MENDELEVIUM", "NOBELIUM", "LAWRENCIUM", "UNQ", "UNP", "UNH", "UNS",

}


Generated on Mon Dec 21 14:14:46 2009 for PSI by  doxygen 1.5.6