|
MADNESS
version 0.9
|
Example propagation of TDSE (translating atom) using various propagators. More...
#include <madness/mra/mra.h>#include <madness/mra/qmprop.h>#include <madness/mra/operator.h>#include <madness/constants.h>#include <string>
Macros | |
| #define | NO_GENTENSOR |
| #define | MAKE_PROPAGATOR(world, t) qm_1d_free_particle_propagator(k, c, t, 2.0*L) |
Typedefs | |
| typedef Convolution1D < double_complex > | complex_operatorT |
| typedef std::shared_ptr < complex_operatorT > | pcomplex_operatorT |
Functions | |
| complex_function_1d | APPLY (complex_operatorT *q1d, const complex_function_1d &psi) |
| double | atom_position () |
| double_complex | psi_exact (const coord_1d &r) |
| double | V (const coord_1d &r) |
| double | dVsq (const coord_1d &r) |
| complex_function_1d | expV (World &world, double vcoeff, double dcoeff) |
| complex_function_1d | sympgrad4 (World &world, const complex_function_1d &psi0, const double tstep, const double xi, const double chi) |
| complex_function_1d | sympgrad6 (World &world, const complex_function_1d &psi0, const double tstep) |
| complex_function_1d | trotter (World &world, const complex_function_1d &psi0, const double tstep, complex_operatorT *G0=0) |
| void | print_info (World &world, const complex_function_1d &psi, int step) |
| double | icoeff (const int np, const int j, const double t) |
| template<typename T > | |
| T | myp (const std::vector< T > &ps, const double t) |
| complex_function_1d | q_c (World &world, const int np, const complex_function_1d psi0, const double tstep) |
| int | main (int argc, char **argv) |
Variables | |
| int | np |
| Tensor< double > | B |
| Tensor< double > | tc |
| pcomplex_operatorT | G |
| std::vector< pcomplex_operatorT > | Gs |
| std::vector< pcomplex_operatorT > | Gss |
| std::vector< pcomplex_operatorT > | Gtrs |
| const int | maxiter = 20 |
| double | fix_iter_tol = thresh*10.0 |
Example propagation of TDSE (translating atom) using various propagators.
Referenced by main(), sympgrad4(), sympgrad6(), and trotter().
| #define NO_GENTENSOR |
| typedef Convolution1D<double_complex> complex_operatorT |
| complex_function_1d APPLY | ( | complex_operatorT * | q1d, |
| const complex_function_1d & | psi | ||
| ) |
| double atom_position | ( | ) |
Referenced by dVsq(), print_info(), psi_exact(), and V().
| double dVsq | ( | const coord_1d & | r | ) |
References atom_position(), mpfr::exp(), and mpfr::fabs().
Referenced by expV().
| complex_function_1d expV | ( | World & | world, |
| double | vcoeff, | ||
| double | dcoeff | ||
| ) |
References madness::Function< T, NDIM >::compress(), dVsq(), madness::Function< T, NDIM >::gaxpy(), madness::Function< T, NDIM >::scale(), madness::Function< T, NDIM >::truncate(), madness::Function< T, NDIM >::unaryop(), and V().
Referenced by converge(), make_exp(), propagate(), sympgrad4(), sympgrad6(), and trotter().
| int main | ( | int | argc, |
| char ** | argv | ||
| ) |
References madness::WorldGopInterface::broadcast(), SafeMPI::COMM_WORLD, madness::finalize(), madness::World::gop, Gs, Gss, Gtrs, madness::initialize(), k, L, MAKE_PROPAGATOR, np, madness::plot_line(), madness::print(), print_info(), psi(), psi_exact(), q_c(), madness::World::rank(), madness::FunctionDefaults< NDIM >::set_autorefine(), madness::FunctionDefaults< NDIM >::set_cubic_cell(), madness::FunctionDefaults< NDIM >::set_initial_level(), madness::FunctionDefaults< NDIM >::set_k(), madness::FunctionDefaults< NDIM >::set_thresh(), madness::FunctionDefaults< NDIM >::set_truncate_mode(), madness::startup(), sympgrad4(), sympgrad6(), thresh, trotter(), and madness::Function< T, NDIM >::truncate().
| T myp | ( | const std::vector< T > & | ps, |
| const double | t | ||
| ) |
References icoeff(), np, and std::tr1::T().
Referenced by q_c().
| void print_info | ( | World & | world, |
| const complex_function_1d & | psi, | ||
| int | step | ||
| ) |
| double_complex psi_exact | ( | const coord_1d & | r | ) |
References madness::arg(), atom_position(), mpfr::exp(), mpfr::fabs(), and psi().
Referenced by main(), and print_info().
| complex_function_1d q_c | ( | World & | world, |
| const int | np, | ||
| const complex_function_1d | psi0, | ||
| const double | tstep | ||
| ) |
References madness::APPLY(), madness::compress(), madness::Function< T, NDIM >::compress(), fix_iter_tol, madness::gaxpy(), madness::Function< T, NDIM >::gaxpy(), madness::tr1::shptr::shared_ptr< T >::get(), Gs, Gss, Gtrs, I(), k, maxiter, myp(), madness::norm2(), np, madness::World::rank(), madness::scale(), madness::sub(), thresh, trotter(), madness::Function< T, NDIM >::truncate(), and V().
Referenced by main().
| complex_function_1d sympgrad4 | ( | World & | world, |
| const complex_function_1d & | psi0, | ||
| const double | tstep, | ||
| const double | xi, | ||
| const double | chi | ||
| ) |
References madness::APPLY(), expV(), MAKE_PROPAGATOR, psi(), and madness::Function< T, NDIM >::truncate().
Referenced by main().
| complex_function_1d sympgrad6 | ( | World & | world, |
| const complex_function_1d & | psi0, | ||
| const double | tstep | ||
| ) |
References madness::APPLY(), expV(), MAKE_PROPAGATOR, psi(), and madness::Function< T, NDIM >::truncate().
Referenced by main().
| complex_function_1d trotter | ( | World & | world, |
| const complex_function_1d & | psi0, | ||
| const double | tstep, | ||
| complex_operatorT * | G0 = 0 |
||
| ) |
References madness::APPLY(), expV(), MAKE_PROPAGATOR, psi(), and madness::Function< T, NDIM >::truncate().
| double V | ( | const coord_1d & | r | ) |
References atom_position(), mpfr::exp(), and mpfr::fabs().
Referenced by expV(), print_info(), and q_c().
| Tensor<double> B |
Referenced by DirichletCondIntOp< NDIM >::action(), main(), propagate(), and madness::SCF::propagate().
| std::vector<pcomplex_operatorT> Gs |
| std::vector<pcomplex_operatorT> Gss |
| std::vector<pcomplex_operatorT> Gtrs |
| const int maxiter = 20 |
Referenced by q_c().
| int np |
Referenced by SafeMPI::Intracomm::binary_tree_info(), icoeff(), main(), myp(), and q_c().
| Tensor<double> tc |
1.8.8