Fast Methods for Cosmological Simulations
FastSim serves as a tool for quick N-body simulations in modified gravity.
frozen_potential.hpp
Go to the documentation of this file.
1 
9 #pragma once
10 
11 #include "stdafx.h"
12 #include "app_var.hpp"
13 #include "precision.hpp"
14 #include "class_particles.hpp"
15 
16 /********************/
20 class Sim_Param;
21 
22 /**************/
26 /**************/
35 class App_Var_FP: public App_Var<Particle_v<FTYPE_t>>
36 {
37 public:
38  // CONSTRUCTORS & DESTRUCTOR
39  App_Var_FP(const Sim_Param &sim);
40 protected:
41  App_Var_FP(const Sim_Param &sim, const std::string& app_short, const std::string& app_long);
42 
43 private:
44  // Leapfrog method for frozen-potential
45  void upd_pos() override;
46 };
47 
48 
54 class App_Var_PM: public App_Var_FP
55 {
56 public:
57  // CONSTRUCTORS & DESTRUCTOR
58  App_Var_PM(const Sim_Param &sim);
59 
60 private:
61  // Leapfrog method
62  void upd_pos() override;
63 };
class containing core variables and methods for approximations
Definition: app_var.hpp:41
: class containing variables and methods for Frozen-potential approximation
: class storing simulation parameters
Definition: params.hpp:193
define container Particle (with and without velocity)
: class containing variables and methods for Particle-Mesh code
system include files and for project-specific include files that are used frequently but are changed ...
classes handling approximations data
App_Var_FP(const Sim_Param &sim)
single / double / long double definitions
void upd_pos() override