ALPS MPS Codes
Reference documentation.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Macros | Enumerations | Functions
optimize.h File Reference
#include <boost/random.hpp>
#include <boost/algorithm/string.hpp>
#include "utils/sizeof.h"
#include "ietl_lanczos_solver.h"
#include "ietl_jacobi_davidson.h"
#include "dmrg/utils/BaseParameters.h"
#include "dmrg/utils/results_collector.h"
#include "dmrg/utils/storage.h"
#include "dmrg/utils/time_limit_exception.h"
#include "dmrg/utils/placement.h"
#include "ss_optimize.hpp"
#include "ts_optimize.hpp"

Go to the source code of this file.

Classes

struct  SiteProblem< Matrix, SymmGroup >
 
class  optimizer_base< Matrix, SymmGroup, Storage >
 

Macros

#define BEGIN_TIMING(name)   now = boost::chrono::high_resolution_clock::now();
 
#define END_TIMING(name)
 

Enumerations

enum  OptimizeDirection { Both, LeftOnly, RightOnly }
 

Functions

double log_interpolate (double y0, double y1, int N, int i)
 

Macro Definition Documentation

#define BEGIN_TIMING (   name)    now = boost::chrono::high_resolution_clock::now();

Definition at line 68 of file optimize.h.

#define END_TIMING (   name)
Value:
then = boost::chrono::high_resolution_clock::now(); \
maquis::cout << "Time elapsed in " << name << ": " << boost::chrono::duration<double>(then-now).count() << std::endl;

Definition at line 70 of file optimize.h.

Enumeration Type Documentation

Enumerator
Both 
LeftOnly 
RightOnly 

Definition at line 84 of file optimize.h.

84 { Both, LeftOnly, RightOnly };
Definition: optimize.h:84

Function Documentation

double log_interpolate ( double  y0,
double  y1,
int  N,
int  i 
)
inline

Definition at line 74 of file optimize.h.

75 {
76  if (N < 2)
77  return y1;
78  if (y0 == 0)
79  return 0;
80  double x = log(y1/y0)/(N-1);
81  return y0*exp(x*i);
82 }
Logger< storage::archive > log
Definition: utils.cpp:40