ABACUS/include/ABACUS.h

109 lines
2.3 KiB
C++

/**********************************************************
This software is part of J.-S. Caux's ABACUS library.
Copyright (c) J.-S. Caux.
-----------------------------------------------------------
File: ABACUS.h
Purpose: Core header file, includes all descendents.
***********************************************************/
#ifndef ABACUS_H
#define ABACUS_H
// This core header file includes all the others
const char ABACUS_VERSION[20] = "ABACUS++G_8";
// Standard includes
#include <cmath>
#include <complex> // for complex number algebra
#include <string>
#include <iostream>
#include <fstream>
#include <iomanip>
#include <cstdlib> // for exit(), ...
#include <ctime> // for clock(), ...
#include <limits> // for numeric limits
#include <climits> // for numeric limits
// For file sizes, etc
#include "sys/types.h"
#include "sys/stat.h"
#include "unistd.h"
// Signal handling
#include <stdio.h> /* standard I/O functions */
#include <unistd.h> /* standard unix functions, like getpid() */
#include <sys/types.h> /* various type definitions, like pid_t */
#include <signal.h> /* signal name macros, and the signal() prototype */
// My own math functions and shortcuts
#include "ABACUS_Utils.h"
// Vectors and matrices
#include "ABACUS_Vect.h" // My vector class definitions
#include "ABACUS_Matrix.h" // My matrix class definitions
// Choose_Table
#include "ABACUS_Combi.h"
// Fitting, interpolating
#include "ABACUS_Fitting.h"
// Young tableaux
#include "ABACUS_Young.h"
// Integration
#include "ABACUS_Integ.h"
// Special functions:
#include "ABACUS_Spec_Fns.h"
//*** Integrable models:
// Heisenberg spin-1/2 antiferromagnet
#include "ABACUS_Heis.h"
// Lieb-Liniger
#include "ABACUS_LiebLin.h"
// One-d spinless fermions:
#include "ABACUS_ODSLF.h"
// General:
//#include "ABACUS_Bethe.h" // IN DEVELOPMENT
// Thermodynamic Bethe Ansatz utilities
#include "ABACUS_TBA.h"
// State ensembles
#include "ABACUS_State_Ensemble.h"
// XXX in zero field: Vertex Operator Approach
#include "ABACUS_XXX_VOA.h"
// XXZ in zero field: Vertex Operator Approach
#include "ABACUS_XXZ_VOA.h"
// *** Correlation functions:
// New scanning protocols for ABACUS++
#include "ABACUS_Scan.h"
// Numerical RG:
#include "ABACUS_NRG.h"
// Typedefs:
typedef double DP;
#endif // ABACUS_H