MADNESS 0.10.1
Classes | Typedefs | Functions
test_cloud.cc File Reference
#include <madness/mra/mra.h>
#include <madness/world/cloud.h>
#include <madness/mra/macrotaskq.h>
#include <madness/world/test_utilities.h>
Include dependency graph for test_cloud.cc:

Classes

class  custom_serialize_tester
 this class stores different member variables in different records of the cloud More...
 
struct  gaussian
 

Typedefs

template<typename T >
using is_world_constructible = std::is_constructible< T, World & >
 

Functions

int chunk_example (World &universe)
 test the cloud with message larger than chunk size set in cloud.replicate()
 
int main (int argc, char **argv)
 
template<typename T , std::size_t NDIM>
double norm (const Function< T, NDIM > &f1)
 
template<typename T , std::size_t NDIM>
double norm (const std::vector< Function< T, NDIM > > &f1)
 
template<typename T >
double norm (const std::vector< T > &v)
 
template<typename T >
double norm (const T i1)
 
template<typename T >
double norm (const Tensor< T > &t)
 
void simple_example (World &universe)
 a simple example for how to use the cloud for inter-world communication
 
int test_custom_serialization (World &universe, Cloud &cloud)
 
int test_custom_worldobject (World &universe, World &subworld, Cloud &cloud)
 test storing and loading a custom WorldObject, used e.g. for the scalar output of a macrotask
 

Typedef Documentation

◆ is_world_constructible

template<typename T >
using is_world_constructible = std::is_constructible<T, World &>

Function Documentation

◆ chunk_example()

int chunk_example ( World universe)

test the cloud with message larger than chunk size set in cloud.replicate()

References std::abs(), madness::test_output::end(), madness::Cloud::load(), madness::Cloud::replicate(), madness::Cloud::store(), sum, and test_size().

Referenced by main().

◆ main()

int main ( int  argc,
char **  argv 
)

◆ norm() [1/5]

template<typename T , std::size_t NDIM>
double norm ( const Function< T, NDIM > &  f1)

References f1.

◆ norm() [2/5]

template<typename T , std::size_t NDIM>
double norm ( const std::vector< Function< T, NDIM > > &  f1)

References f1, and madness::norm2().

◆ norm() [3/5]

template<typename T >
double norm ( const std::vector< T > &  v)

References e(), and v.

◆ norm() [4/5]

template<typename T >
double norm ( const T  i1)

Referenced by slymer::PrimitiveGaussian::PrimitiveGaussian(), a_fit(), madness::adq1(), apbar_fit(), bshrel_fit(), madness::SRConf< T >::check_right_orthonormality(), compute_energy(), compute_energy_with_U(), madness::Function< T, NDIM >::constexpr(), converge(), converge(), converge2s(), madness::Znemo::custom_guess(), madness::FunctionImpl< T, NDIM >::do_apply_directed_screening(), madness::FunctionImpl< T, NDIM >::do_apply_kernel2(), doit(), gauss_3d(), gauss_3d(), gauss_6d(), sgl_guess::get_wf(), madness::GMRES(), madness::CCTimer::info(), iterate(), iterate(), iterate(), iterate(), iterate(), iterate(), iterate(), iterate_ground(), iterate_ground(), madness::CC2::iterate_singles(), main(), main(), madness::ConvolutionData1D< Q >::make_approx(), madness::TDHF::make_virtuals(), madness::FunctionImpl< T, NDIM >::norm_tree_spawn(), Fcwf::normalize(), madness::SRConf< T >::normalize(), AnsatzBase::normalize(), madness::GenTensor< T >::normf(), madness::op_leaf_op< T, NDIM, opT >::operator()(), madness::hartree_leaf_op< T, NDIM >::operator()(), madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::operator()(), madness::FunctionImpl< T, NDIM >::do_norm2sq_local::operator()(), madness::FunctionImpl< T, NDIM >::do_check_symmetry_local::operator()(), madness::operator<<(), pbar_fit(), madness::Leaf_op< T, NDIM, opT, specialboxT >::post_screening(), print_info(), print_info(), madness::FunctionNode< T, NDIM >::print_json(), madness::FunctionImpl< T, NDIM >::print_size(), madness::CCPairFunction< T, NDIM >::print_size(), print_stats(), print_stats(), Calculation::project_potential_basis(), projector_external_dof(), madness::MolecularOptimizer::projector_external_dof(), propagate(), slymer::NWChem_Interface::read_basis_set(), madness::FunctionNode< T, NDIM >::recompute_snorm_and_dnorm(), run(), simple_example(), madness::Nemo::solve_cphf(), madness::GenTensor< T >::svd_normf(), tbar_fit(), test_adaptive_tree(), test_basic(), test_bsh(), madness::Znemo::test_compute_current_density(), test_construction_optimization(), test_conversion(), test_convolution(), test_coulomb(), test_exchange(), test_inner(), test_molecular_grid(), test_opdir(), test_orthogonalization(), test_partial_inner_3d(), test_qm(), test_recursive_application(), test_unaryop(), madness::Diamagnetic_potential_factor::test_vector_potentials(), tightgauss_3d(), madness::unitvec(), and madness::FunctionImpl< T, NDIM >::vtransform_doit().

◆ norm() [5/5]

template<typename T >
double norm ( const Tensor< T > &  t)

◆ simple_example()

void simple_example ( World universe)

a simple example for how to use the cloud for inter-world communication

Notes:

  • during the subworld section no universe-wide fence must be invoked, including the creation of universe WorldObjects – they must be constructed before
  • Certain operation can be performed between objects living in different world (e.g. Function::operator+=) – store/lood pointers to these universe-wide world objects
  • when the subworld is destroyed all subworld objects must have been destroyed
  • subworld objects will be destroyed only at subworld fences

References madness::Cloud::clear_cache(), madness::MacroTaskQ::create_worlds(), madness::WorldGopInterface::fence(), madness::World::gop, madness::World::id(), madness::Cloud::load(), norm(), madness::Function< T, NDIM >::norm2(), madness::print(), madness::World::rank(), madness::MacroTaskQ::set_pmap(), madness::World::size(), and madness::Cloud::store().

Referenced by main().

◆ test_custom_serialization()

int test_custom_serialization ( World universe,
Cloud cloud 
)

◆ test_custom_worldobject()

int test_custom_worldobject ( World universe,
World subworld,
Cloud cloud 
)