|
Fast Methods for Cosmological Simulations
FastSim serves as a tool for quick N-body simulations in modified gravity.
|
class containing core variables and methods for approximations More...
#include <app_var.hpp>

Classes | |
| class | Impl |
Public Member Functions | |
| App_Var (const Sim_Param &sim, const std::string &app_short, const std::string &app_long) | |
| virtual | ~App_Var () |
| void | run_simulation () |
| virtual void | update_cosmo (Cosmo_Param &cosmo) |
| no truncation by default More... | |
| std::string | get_out_dir () const |
Protected Member Functions | |
| double | a () |
| double | a_half () |
| double | da () |
| std::string | get_z_suffix () const |
| virtual void | print_output () |
| virtual void | pot_corr (std::vector< Mesh > &vel_field, Mesh &pot_k) |
Protected Attributes | |
| const Sim_Param & | sim |
| uint64_t | memory_alloc |
| std::vector< Mesh > | app_field |
| std::vector< Mesh > | power_aux |
| std::vector< T > | particles |
| Data_Vec< double, 2 > | corr_func_binned |
| Data_Vec< double, 2 > | pwr_spec_binned |
| Data_Vec< double, 2 > | pwr_spec_binned_0 |
| Data_Vec< double, 2 > | vel_pwr_spec_binned_0 |
| FFTW_PLAN_TYPE | p_F |
| FFTW_PLAN_TYPE | p_B |
| FFTW_PLAN_TYPE | p_F_pwr |
| FFTW_PLAN_TYPE | p_B_pwr |
| std::vector< size_t > | dens_binned |
Private Member Functions | |
| virtual void | upd_pos ()=0 |
Private Attributes | |
| const std::unique_ptr< Impl > | m_impl |
Friends | |
| class | Impl |
class containing core variables and methods for approximations
| T | type of particle, implemented Particle_x and Particle_v |
Definition at line 41 of file app_var.hpp.
| App_Var< T >::App_Var | ( | const Sim_Param & | sim, |
| const std::string & | app_short, | ||
| const std::string & | app_long | ||
| ) |
Definition at line 451 of file app_var.cpp.
References App_Var< T >::m_impl, App_Var< T >::memory_alloc, and Sim_Param::out_opt.
Definition at line 468 of file app_var.cpp.
References FFTW_DEST_PLAN, FFTW_PLAN_OMP_CLEAN, App_Var< T >::p_B, App_Var< T >::p_B_pwr, App_Var< T >::p_F, and App_Var< T >::p_F_pwr.
Definition at line 523 of file app_var.cpp.
References App_Var< T >::m_impl.
Referenced by App_Var< T >::a_half().
Definition at line 529 of file app_var.cpp.
References App_Var< T >::a(), and App_Var< T >::da().
Referenced by App_Var_AA::AAImpl::aa_convolution().
Definition at line 535 of file app_var.cpp.
References App_Var< T >::m_impl.
Referenced by App_Var< T >::a_half().
| std::string App_Var< T >::get_out_dir | ( | ) | const |
|
protected |
|
protectedvirtual |
Reimplemented in App_Var_AA, App_Var_FP_mod, and App_Var_ZA.
Definition at line 506 of file app_var.cpp.
References fftw_execute_dft_c2r_triple(), gen_displ_k_cic(), and App_Var< T >::p_B.
Referenced by App_Var< T >::run_simulation().
|
protectedvirtual |
Reimplemented in App_Var_Chi.
Definition at line 517 of file app_var.cpp.
References App_Var< T >::m_impl.
Referenced by App_Var< T >::Impl< T >::integration(), and App_Var< T >::Impl< T >::print_init().
| void App_Var< T >::run_simulation | ( | ) |
Definition at line 478 of file app_var.cpp.
References App_Var< T >::app_field, App_Var< T >::m_impl, App_Var< T >::memory_alloc, App_Var< T >::pot_corr(), App_Var< T >::power_aux, and anonymous_namespace{app_var.cpp}::print_mem().
|
privatepure virtual |
Implemented in App_Var_Chi_FF, App_Var_PM, App_Var_AA, App_Var_FP_mod, App_Var_ZA, App_Var_Chi, App_Var_FP, and App_Var_FF.
Referenced by App_Var< T >::Impl< T >::integration().
|
virtual |
no truncation by default
Reimplemented in App_Var_TZA.
Definition at line 500 of file app_var.cpp.
References Cosmo_Param::truncated_pk.
|
friend |
Definition at line 85 of file app_var.hpp.
Definition at line 63 of file app_var.hpp.
Referenced by App_Var_AA::AAImpl::aa_convolution(), App_Var< T >::Impl< T >::alloc_mesh_vec(), App_Var< T >::Impl< T >::fftw_prep(), App_Var< T >::Impl< T >::print_input_realisation(), App_Var< T >::run_simulation(), App_Var< T >::Impl< T >::set_init_cond(), and App_Var< T >::Impl< T >::set_init_pos().
Definition at line 68 of file app_var.hpp.
Referenced by App_Var< T >::Impl< T >::alloc_bin_corr(), and App_Var< T >::Impl< T >::print_corr().
|
protected |
Definition at line 70 of file app_var.hpp.
Referenced by App_Var< T >::Impl< T >::print_density().
Definition at line 87 of file app_var.hpp.
Referenced by App_Var< T >::a(), App_Var< T >::App_Var(), App_Var< T >::da(), App_Var< T >::get_out_dir(), App_Var< T >::get_z_suffix(), App_Var< T >::print_output(), and App_Var< T >::run_simulation().
|
protected |
Definition at line 60 of file app_var.hpp.
Referenced by App_Var< T >::App_Var(), and App_Var< T >::run_simulation().
|
protected |
Definition at line 69 of file app_var.hpp.
Referenced by App_Var_AA::AAImpl::aa_convolution(), App_Var< T >::Impl< T >::fftw_prep(), App_Var< T >::pot_corr(), App_Var< T >::Impl< T >::set_init_cond(), and App_Var< T >::~App_Var().
|
protected |
Definition at line 69 of file app_var.hpp.
Referenced by App_Var< T >::Impl< T >::fftw_prep(), and App_Var< T >::~App_Var().
|
protected |
Definition at line 69 of file app_var.hpp.
Referenced by App_Var_AA::AAImpl::aa_convolution(), App_Var< T >::Impl< T >::fftw_prep(), App_Var< T >::Impl< T >::set_init_cond(), and App_Var< T >::~App_Var().
|
protected |
Definition at line 69 of file app_var.hpp.
Referenced by App_Var< T >::Impl< T >::fftw_prep(), App_Var< T >::Impl< T >::get_binned_power_spec(), App_Var< T >::Impl< T >::print_vel_pwr(), and App_Var< T >::~App_Var().
|
protected |
Definition at line 65 of file app_var.hpp.
Referenced by App_Var< T >::Impl< T >::alloc_particles(), App_Var< T >::Impl< T >::integration(), App_Var< T >::Impl< T >::print_init(), App_Var< T >::Impl< T >::print_output(), App_Var< T >::Impl< T >::print_position(), and App_Var< T >::Impl< T >::set_init_pos().
Definition at line 64 of file app_var.hpp.
Referenced by App_Var< T >::Impl< T >::alloc_mesh_vec(), App_Var< T >::Impl< T >::fftw_prep(), App_Var< T >::Impl< T >::get_binned_power_spec(), App_Var< T >::Impl< T >::print_density(), App_Var< T >::Impl< T >::print_input_realisation(), App_Var< T >::Impl< T >::print_output(), App_Var< T >::Impl< T >::print_vel_pwr(), App_Var< T >::run_simulation(), and App_Var< T >::Impl< T >::set_init_cond().
Definition at line 68 of file app_var.hpp.
Referenced by App_Var< T >::Impl< T >::alloc_bin_spec(), App_Var< T >::Impl< T >::get_binned_power_spec(), App_Var< T >::Impl< T >::print_extrap_pwr(), App_Var< T >::Impl< T >::print_output(), App_Var< T >::Impl< T >::print_power_spec(), and App_Var< T >::Impl< T >::print_vel_pwr().
Definition at line 68 of file app_var.hpp.
Referenced by App_Var< T >::Impl< T >::alloc_bin_spec(), App_Var< T >::Impl< T >::print_input_realisation(), and App_Var< T >::Impl< T >::print_power_spec().
Definition at line 59 of file app_var.hpp.
Referenced by App_Var_AA::AAImpl::aa_convolution(), App_Var< T >::Impl< T >::alloc_bin_corr(), App_Var< T >::Impl< T >::alloc_bin_spec(), App_Var< T >::Impl< T >::alloc_mesh_vec(), App_Var< T >::Impl< T >::alloc_particles(), App_Var< T >::Impl< T >::fftw_prep(), App_Var< T >::Impl< T >::get_binned_power_spec(), App_Var< T >::Impl< T >::integration(), App_Var< T >::Impl< T >::print_corr(), App_Var< T >::Impl< T >::print_density(), App_Var< T >::Impl< T >::print_extrap_pwr(), App_Var< T >::Impl< T >::print_input_realisation(), App_Var< T >::Impl< T >::print_output(), App_Var< T >::Impl< T >::print_position(), App_Var< T >::Impl< T >::print_power_spec(), App_Var< T >::Impl< T >::print_vel_pwr(), App_Var< T >::Impl< T >::set_init_cond(), and App_Var< T >::Impl< T >::set_init_pos().
Definition at line 68 of file app_var.hpp.
Referenced by App_Var< T >::Impl< T >::alloc_bin_spec(), and App_Var< T >::Impl< T >::print_vel_pwr().