12#include "quadTreeHalos.h"
13#include "lens_halos.h"
22 virtual void force(PosType *alpha,KappaType *kappa,KappaType *gamma,KappaType *phi,PosType *xx) = 0;
24 virtual void addHalo(
LensHalo* halo) = 0;
25 virtual void removeHalo(
LensHalo* halo) = 0;
27 virtual std::vector<LensHalo*> getHalos() = 0;
28 virtual std::vector<const LensHalo*> getHalos()
const = 0;
29 virtual void getNeighborHalos(PosType ray[],PosType rmax,std::vector<LensHalo*> &neighbors)
const{};
38 LensPlaneTree(
float z,
LensHalo **my_halos,IndexType Nhalos,PosType my_sigma_background,PosType my_inv_screening_scale = 0);
50 void force(PosType *alpha,KappaType *kappa,KappaType *gamma,KappaType *phi,PosType *xx);
54 std::vector<LensHalo*> getHalos();
55 std::vector<const LensHalo*> getHalos()
const;
57 void getNeighborHalos(PosType ray[],PosType rmax,std::vector<LensHalo*> &neighbors)
const;
61 std::vector<LensHalo *> halos;
62 TreeQuadHalos<LensHalo> * halo_tree;
77 std::swap(halos,p.halos);
91 std::swap(halos,p.halos);
96 void force(PosType *alpha,KappaType *kappa,KappaType *gamma,KappaType *phi,PosType *xx);
101 std::vector<LensHalo*> getHalos();
102 std::vector<const LensHalo*> getHalos()
const;
103 void getNeighborHalos(PosType ray[],PosType rmax,std::vector<LensHalo*> &neighbors)
const;
106 std::vector<LensHalo*> halos;
A base class for all types of lensing "halos" which are any mass distribution that cause lensing.
Definition lens_halos.h:56
Base class representing a plane in redshift onto which lenses are placed.
Definition planes.h:17
A LensPlane with a list of LensHalo's in it.
Definition planes.h:70
void addHalo(LensHalo *halo)
It is assumed that the position of halo is in physical Mpc.
Definition planes.cpp:164
void force(PosType *alpha, KappaType *kappa, KappaType *gamma, KappaType *phi, PosType *xx)
returns the lensing quantities of a ray in physical coordinates
Definition planes.cpp:114
A LensPlane with a TreeQuad on it to calculate the deflection caused by field lenses.
Definition planes.h:35
void getNeighborHalos(PosType ray[], PosType rmax, std::vector< LensHalo * > &neighbors) const
Get the halos on this plane that are wthin rmax of ray[].
Definition planes.cpp:88