[go: up one dir, main page]

Menu

Tree [a031aa] v0.0.2 /
 History

HTTPS access


File Date Author Commit
 deploy 2013-09-06 Ulf Lorenz Ulf Lorenz [8659fb] Cleanup: centralized the Makefile
 include 2013-10-24 Ulf Lorenz Ulf Lorenz [73f672] Minor cleanups in the code here and there
 src 2013-10-24 Ulf Lorenz Ulf Lorenz [73f672] Minor cleanups in the code here and there
 test 2013-10-26 Ulf Lorenz Ulf Lorenz [24d037] Minor changes to make the code suitable for ver...
 CONTRIBUTORS 2013-09-16 Ulf Lorenz Ulf Lorenz [135bb4] added a contributor and changelog file. A bit l...
 GPL.txt 2013-03-22 Ulf Lorenz Ulf Lorenz [9f157e] added license files
 LICENSE 2013-03-22 Ulf Lorenz Ulf Lorenz [9f157e] added license files
 Makefile 2013-09-06 Ulf Lorenz Ulf Lorenz [8659fb] Cleanup: centralized the Makefile
 Makefile.files 2013-10-17 Ulf Lorenz Ulf Lorenz [ffa27e] Task 19: Added a convenience class to easily bu...
 Makefile.rules.template 2013-10-27 Ulf Lorenz Ulf Lorenz [a031aa] This is the final version 0.0.2
 NEWS 2013-10-26 Ulf Lorenz Ulf Lorenz [24d037] Minor changes to make the code suitable for ver...
 README 2013-10-26 Ulf Lorenz Ulf Lorenz [24d037] Minor changes to make the code suitable for ver...

Read Me

Description
===========

This is (or will become) a C++ library to numerically solve the Schroedinger
equation for distinguishable particles.

The code is under the GNU General Public License; see the accompagnying license
file for the lawyer text.

As of now, the code is rather rudimentary; you can solve the Schroedinger
equation using ordinary differential equation solvers; however, nothing is
optimized yet, and operators are only implemented for a harmonic oscillator;
however, we naturally plan to extend this in the nearer future.


System requirements
===================

To be able to compile the code at all, you need the following:

* a compiler that implements the latest C++-11 standard.
  One of the later g++ (around version 4.7) or CLang++ version 3.2 should be fine.
* the tensor library that we use
  - clone it via git from https://github.com/juanjosegarciaripoll/tensor.git
  - compile and install it (usual autoconf setup)
  - note that you will need to enable FFTW support (thus, you also need the FFTW libraries)
* The boost libraries from http://www.boost.org
  - I _think_ boost 1.49 (stone old) should be fine, since you need a separate
    copy of odeint anyway.
* The odeint library; although this is part of boost, we use some features that
  will only become available in boost 1.55 or 1.56, so you need a separate copy.
  - get it from via git from https://github.com/headmyshoulder/odeint-v2.git
  - add the include path to the CXXFLAGS in Makefile.rules (see next section)
* googletest for compiling the tests (tested with 1.6.0) 
  - get it from http://code.google.com/p/googletest/
  - set GTEST_DIR in Makefile.rules (see next section)


Compilation and getting started
===============================

To compile the code, copy the file "Makefile.rules.template" to Makefile.rules,
modify the settings in there, and type "make".
This will build the code and all tests, and run all tests.

There is no real documentation as of now. However, the code is extensively
commented, and the acceptance tests (test/acceptance/*) are explicitly meant to
demonstrate how to use the code.