CosmoBolognaLib
Free Software C++/Python libraries for cosmological calculations
HostHalo.h
Go to the documentation of this file.
1 /********************************************************************
2  * Copyright (C) 2015 by Federico Marulli and Tommaso Ronconi *
3  * federico.marulli3@sissa.it tronconi@sissa.it *
4  * *
5  * This program is free software; you can redistribute it and/or *
6  * modify it under the terms of the GNU General Public License as *
7  * published by the Free Software Foundation; either version 2 of *
8  * the License, or (at your option) any later version. *
9  * *
10  * This program is distributed in the hope that it will be useful, *
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13  * GNU General Public License for more details. *
14  * *
15  * You should have received a copy of the GNU General Public *
16  * License along with this program; if not, write to the Free *
17  * Software Foundation, Inc., *
18  * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
19  ********************************************************************/
20 
34 #ifndef __HOSTHALO__
35 #define __HOSTHALO__
36 
37 
38 // ===================================================================================================
39 
40 
41 namespace cbl {
42 
43  namespace catalogue {
44 
53  class HostHalo : public Halo {
54 
55  private :
56 
58  double m_tot_mass;
59 
61  double m_SFR;
62 
65 
68 
71 
73  double m_xcm;
74 
76  double m_ycm;
77 
79  double m_zcm;
80 
82  double m_spin_x;
83 
85  double m_spin_y;
86 
88  double m_spin_z;
89 
91  double m_veldisp;
92 
94  double m_vmax;
95 
97  double m_vmax_rad;
98 
100  double m_radius;
101 
103  int m_parent;
104 
106  int m_nsub;
107 
109  std::vector<std::shared_ptr<Object>> m_satellites;
110 
111  public :
112 
117 
124 
132  std::shared_ptr<Object> getShared() {
133  return std::make_shared<HostHalo>(*this);
134  }
135 
196  HostHalo (const comovingCoordinates coord, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector<std::shared_ptr<Object>> satellites = {})
198 
267  HostHalo (const comovingCoordinates coord, const cosmology::Cosmology &cosm, const double z1_guess=0., const double z2_guess=10., const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector<std::shared_ptr<Object>> satellites = {})
269 
330  HostHalo (const observedCoordinates coord, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector<std::shared_ptr<Object>> satellites = {})
332 
396  HostHalo (const observedCoordinates coord, const CoordinateUnits inputUnits, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector<std::shared_ptr<Object>> satellites = {})
398 
464  HostHalo (const observedCoordinates coord, const cosmology::Cosmology &cosm, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector<std::shared_ptr<Object>> satellites = {})
466 
532  HostHalo (const observedCoordinates coord, const CoordinateUnits inputUnits, const cosmology::Cosmology &cosm, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector<std::shared_ptr<Object>> satellites = {})
534 
603  HostHalo (const double xx, const double yy, const double zz, const double ra, const double dec, const double redshift, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector<std::shared_ptr<Object>> satellites = {})
605 
609  ~HostHalo () = default;
610 
612 
613 
618 
623  double tot_mass () const override { return m_tot_mass; }
624 
629  double mass_estimate () const override { return m_mass_estimate; }
630 
635  double radius_estimate () const override { return m_radius_estimate; }
636 
641  double veldisp_estimate () const override { return m_veldisp_estimate; }
642 
647  double xcm () const override { return m_xcm; }
648 
653  double ycm () const override { return m_ycm; }
654 
659  double zcm () const override { return m_zcm; }
660 
665  double spin_x () const override { return m_spin_x; }
666 
671  double spin_y () const override { return m_spin_y; }
672 
677  double spin_z () const override { return m_spin_z; }
678 
683  double veldisp () const override { return m_veldisp; }
684 
689  double vmax () const override { return m_vmax; }
690 
695  double vmax_rad () const override { return m_vmax_rad; }
696 
701  double radius () const override { return m_radius; }
702 
707  int parent () const override { return m_parent; }
708 
713  int nsub () const override { return m_nsub; }
714 
719  std::vector<std::shared_ptr<Object>> satellites () const override { return m_satellites; }
720 
722 
723 
728 
733  void set_tot_mass (const double tot_mass=par::defaultDouble) override { m_tot_mass = tot_mass; }
734 
740 
746 
747 
753 
758  void set_xcm (const double xcm=par::defaultDouble) override { m_xcm = xcm; }
759 
764  void set_ycm (const double ycm=par::defaultDouble) override { m_ycm = ycm; }
765 
770  void set_zcm (const double zcm=par::defaultDouble) override { m_zcm = zcm; }
771 
776  void set_spin_x (const double spin_x=par::defaultDouble) override { m_spin_x = spin_x; }
777 
782  void set_spin_y (const double spin_y=par::defaultDouble) override { m_spin_y = spin_y; }
783 
788  void set_spin_z (const double spin_z=par::defaultDouble) override { m_spin_z = spin_z; }
789 
794  void set_veldisp (const double veldisp=par::defaultDouble) override { m_veldisp = veldisp; }
795 
800  void set_vmax (const double vmax=par::defaultDouble) override { m_vmax = vmax; }
801 
806  void set_vmax_rad (const double vmax_rad=par::defaultDouble) override { m_vmax_rad = vmax_rad; }
807 
812  void set_radius (const double radius=par::defaultDouble) override { m_radius = radius; }
813 
818  void set_parent (const int parent=par::defaultInt) override { m_parent = parent; }
819 
824  void set_nsub (const int nsub=par::defaultInt) override { m_nsub = nsub; }
825 
831  void set_satellite (const std::shared_ptr<Object> satellite={}) override {
832  m_satellites.push_back(satellite);
833  }
834 
839  void set_satellites (const std::vector<std::shared_ptr<Object>> satellites={}) override {
840  for (size_t ii = 0; ii<satellites.size(); ii++) m_satellites.push_back(satellites[ii]);
841  }
842 
844 
845 
850 
856  bool isSet_tot_mass () override
857  { return (cbl::isSet(m_tot_mass)) ? true : false; }
858 
864  bool isSet_mass_estimate () override
865  { return (cbl::isSet(m_mass_estimate)) ? true : false; }
866 
872  bool isSet_radius_estimate () override
873  { return (cbl::isSet(m_radius_estimate)) ? true : false; }
874 
880  bool isSet_veldisp_estimate () override
881  { return (cbl::isSet(m_veldisp_estimate)) ? true : false; }
882 
888  bool isSet_xcm () override
889  { return (cbl::isSet(m_xcm)) ? true : false; }
890 
896  bool isSet_ycm () override
897  { return (cbl::isSet(m_ycm)) ? true : false; }
898 
904  bool isSet_zcm () override
905  { return (cbl::isSet(m_zcm)) ? true : false; }
906 
912  bool isSet_spin_x () override
913  { return (cbl::isSet(m_spin_x)) ? true : false; }
914 
920  bool isSet_spin_y () override
921  { return (cbl::isSet(m_spin_y)) ? true : false; }
922 
928  bool isSet_spin_z () override
929  { return (cbl::isSet(m_spin_z)) ? true : false; }
930 
936  bool isSet_veldisp () override
937  { return (cbl::isSet(m_veldisp)) ? true : false; }
938 
944  bool isSet_vmax () override
945  { return (cbl::isSet(m_vmax)) ? true : false; }
946 
952  bool isSet_vmax_rad () override
953  { return (cbl::isSet(m_vmax_rad)) ? true : false; }
954 
960  bool isSet_radius () override
961  { return (cbl::isSet(m_radius)) ? true : false; }
962 
968  bool isSet_parent () override
969  { return (cbl::isSet(m_parent)) ? true : false; }
970 
976  bool isSet_nsub () override
977  { return (cbl::isSet(m_nsub)) ? true : false; }
978 
980 
981  }; //class HostHalo
982 
983  } //namespace catalogue
984 
985 } //namespace cbl
986 
987 #endif //__HOSTHALO__
The class CatalogueChainMesh.
Definition: Halo.h:53
double vx() const override
get the protected member m_vx
Definition: Halo.h:375
double vy() const override
get the protected member m_vy
Definition: Halo.h:382
double vz() const override
get the protected member m_vz
Definition: Halo.h:389
double mass() const override
get the protected member m_mass
Definition: Halo.h:396
Halo()
default constructor
Definition: Halo.h:81
The class HostHalo.
Definition: HostHalo.h:53
void set_spin_x(const double spin_x=par::defaultDouble) override
set the private member HostHalo::m_spin_x
Definition: HostHalo.h:776
bool isSet_spin_z() override
get the private member m_spin_z
Definition: HostHalo.h:928
int nsub() const override
get the private member HostHalo::m_nsub
Definition: HostHalo.h:713
HostHalo(const comovingCoordinates coord, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector< std::shared_ptr< Object >> satellites={})
constructor that uses comoving coordinates
Definition: HostHalo.h:196
double m_veldisp
velocity dispersion
Definition: HostHalo.h:91
HostHalo(const observedCoordinates coord, const cosmology::Cosmology &cosm, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector< std::shared_ptr< Object >> satellites={})
constructor that uses observed coordinates in radians and a cosmological model to estimate the comovi...
Definition: HostHalo.h:464
double m_vmax_rad
maximum radial velocity
Definition: HostHalo.h:97
void set_spin_y(const double spin_y=par::defaultDouble) override
set the private member HostHalo::m_spin_y
Definition: HostHalo.h:782
bool isSet_zcm() override
get the private member m_zcm
Definition: HostHalo.h:904
double m_ycm
y-coordinate of the centre of mass
Definition: HostHalo.h:76
void set_satellites(const std::vector< std::shared_ptr< Object >> satellites={}) override
set the private member HostHalo::m_satellites
Definition: HostHalo.h:839
void set_spin_z(const double spin_z=par::defaultDouble) override
set the private member HostHalo::m_spin_z
Definition: HostHalo.h:788
bool isSet_spin_y() override
get the private member m_spin_y
Definition: HostHalo.h:920
double veldisp_estimate() const override
get the private member HostHalo::m_veldisp_estimate
Definition: HostHalo.h:641
double m_spin_y
y-axis component of the spin
Definition: HostHalo.h:85
bool isSet_veldisp_estimate() override
get the private member m_veldisp_estimate
Definition: HostHalo.h:880
HostHalo(const double xx, const double yy, const double zz, const double ra, const double dec, const double redshift, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector< std::shared_ptr< Object >> satellites={})
constructor that uses both comoving and observed coordinates
Definition: HostHalo.h:603
double spin_y() const override
get the private member HostHalo::m_spin_y
Definition: HostHalo.h:671
HostHalo()
default constructor
Definition: HostHalo.h:122
int m_nsub
number of sub-haloes within the main group
Definition: HostHalo.h:106
double m_radius_estimate
radius estimate
Definition: HostHalo.h:67
bool isSet_spin_x() override
get the private member m_spin_x
Definition: HostHalo.h:912
bool isSet_radius() override
get the private member m_radius
Definition: HostHalo.h:960
void set_nsub(const int nsub=par::defaultInt) override
set the private member HostHalo::m_nsub
Definition: HostHalo.h:824
bool isSet_ycm() override
get the private member m_ycm
Definition: HostHalo.h:896
~HostHalo()=default
default destructor
void set_xcm(const double xcm=par::defaultDouble) override
set the private member HostHalo::m_xcm
Definition: HostHalo.h:758
HostHalo(const observedCoordinates coord, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector< std::shared_ptr< Object >> satellites={})
constructor that uses observed coordinates in radians
Definition: HostHalo.h:330
void set_tot_mass(const double tot_mass=par::defaultDouble) override
set the private member HostHalo::m_tot_mass
Definition: HostHalo.h:733
std::vector< std::shared_ptr< Object > > m_satellites
vector of pointers to satellites
Definition: HostHalo.h:109
void set_parent(const int parent=par::defaultInt) override
set the private member HostHalo::m_parent
Definition: HostHalo.h:818
double vmax_rad() const override
get the private member HostHalo::m_vmax_rad
Definition: HostHalo.h:695
bool isSet_mass_estimate() override
get the private member m_mass_estimate
Definition: HostHalo.h:864
double m_radius
half-mass radius
Definition: HostHalo.h:100
bool isSet_xcm() override
get the private member m_xcm
Definition: HostHalo.h:888
void set_radius(const double radius=par::defaultDouble) override
set the private member HostHalo::m_radius
Definition: HostHalo.h:812
bool isSet_parent() override
get the private member m_parent
Definition: HostHalo.h:968
void set_ycm(const double ycm=par::defaultDouble) override
set the private member HostHalo::m_ycm
Definition: HostHalo.h:764
double mass_estimate() const override
get the private member HostHalo::m_mass_estimate
Definition: HostHalo.h:629
double xcm() const override
get the private member HostHalo::m_xcm
Definition: HostHalo.h:647
double m_spin_x
x-axis component of the spin
Definition: HostHalo.h:82
double m_zcm
z-coordinate of the centre of mass
Definition: HostHalo.h:79
void set_veldisp(const double veldisp=par::defaultDouble) override
set the private member HostHalo::m_veldisp
Definition: HostHalo.h:794
HostHalo(const observedCoordinates coord, const CoordinateUnits inputUnits, const cosmology::Cosmology &cosm, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector< std::shared_ptr< Object >> satellites={})
constructor that uses observed coordinates and a cosmological model to estimate the comoving coordina...
Definition: HostHalo.h:532
double tot_mass() const override
get the private member HostHalo::m_tot_mass
Definition: HostHalo.h:623
double m_vmax
maximum velocity
Definition: HostHalo.h:94
double veldisp() const override
get the private member HostHalo::m_veldisp
Definition: HostHalo.h:683
double m_veldisp_estimate
velocity dispersion estimate
Definition: HostHalo.h:70
double m_spin_z
z-axis component of the spin
Definition: HostHalo.h:88
double m_xcm
x-coordinate of the centre of mass
Definition: HostHalo.h:73
double ycm() const override
get the private member HostHalo::m_ycm
Definition: HostHalo.h:653
double m_SFR
star formation rate
Definition: HostHalo.h:61
std::vector< std::shared_ptr< Object > > satellites() const override
get the private member HostHalo::m_satellites
Definition: HostHalo.h:719
void set_satellite(const std::shared_ptr< Object > satellite={}) override
set the private member HostHalo::m_satellites
Definition: HostHalo.h:831
double vmax() const override
get the private member HostHalo::m_vmax
Definition: HostHalo.h:689
double spin_x() const override
get the private member HostHalo::m_spin_x
Definition: HostHalo.h:665
std::shared_ptr< Object > getShared()
function that allows copying private variables of the class when an object of class Catalogue is copi...
Definition: HostHalo.h:132
bool isSet_tot_mass() override
get the private member m_tot_mass
Definition: HostHalo.h:856
HostHalo(const observedCoordinates coord, const CoordinateUnits inputUnits, const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector< std::shared_ptr< Object >> satellites={})
constructor that uses observed coordinates in any angular units
Definition: HostHalo.h:396
HostHalo(const comovingCoordinates coord, const cosmology::Cosmology &cosm, const double z1_guess=0., const double z2_guess=10., const double weight=1., const long region=par::defaultLong, const int ID=par::defaultInt, const std::string field=par::defaultString, const double x_displacement=par::defaultDouble, const double y_displacement=par::defaultDouble, const double z_displacement=par::defaultDouble, const double vx=par::defaultDouble, const double vy=par::defaultDouble, const double vz=par::defaultDouble, const double mass=par::defaultDouble, const double tot_mass=par::defaultDouble, const double mass_estimate=par::defaultDouble, const double radius_estimate=par::defaultDouble, const double veldisp_estimate=par::defaultDouble, const comovingCoordinates cm_coord={par::defaultDouble, par::defaultDouble, par::defaultDouble}, const double spin_x=par::defaultDouble, const double spin_y=par::defaultDouble, const double spin_z=par::defaultDouble, const double veldisp=par::defaultDouble, const double vmax=par::defaultDouble, const double vmax_rad=par::defaultDouble, const double radius=par::defaultDouble, const int parent=par::defaultInt, const int nsub=par::defaultInt, std::vector< std::shared_ptr< Object >> satellites={})
constructor that uses comoving coordinates and a cosmological model to estimate the redshift
Definition: HostHalo.h:267
void set_vmax_rad(const double vmax_rad=par::defaultDouble) override
set the private member HostHalo::m_vmax_rad
Definition: HostHalo.h:806
double m_tot_mass
gas component of the total group mass
Definition: HostHalo.h:58
double m_mass_estimate
mass estimate
Definition: HostHalo.h:64
double spin_z() const override
get the private member HostHalo::m_spin_z
Definition: HostHalo.h:677
double zcm() const override
get the private member HostHalo::m_zcm
Definition: HostHalo.h:659
void set_mass_estimate(const double mass_estimate=par::defaultDouble) override
set the private member HostHalo::m_mass_estimate
Definition: HostHalo.h:739
bool isSet_vmax() override
get the private member m_vmax
Definition: HostHalo.h:944
double radius_estimate() const override
get the private member HostHalo::m_radius_estimate
Definition: HostHalo.h:635
int m_parent
ID of the parent halo.
Definition: HostHalo.h:103
bool isSet_veldisp() override
get the private member m_veldisp
Definition: HostHalo.h:936
void set_zcm(const double zcm=par::defaultDouble) override
set the private member HostHalo::m_zcm
Definition: HostHalo.h:770
void set_radius_estimate(const double radius_estimate=par::defaultDouble) override
set the private member HostHalo::m_radius_estimate
Definition: HostHalo.h:745
bool isSet_nsub() override
get the private member m_nsub
Definition: HostHalo.h:976
double radius() const override
get the private member HostHalo::m_radius
Definition: HostHalo.h:701
int parent() const override
get the private member HostHalo::m_parent
Definition: HostHalo.h:707
void set_vmax(const double vmax=par::defaultDouble) override
set the private member HostHalo::m_vmax
Definition: HostHalo.h:800
bool isSet_vmax_rad() override
get the private member m_vmax_rad
Definition: HostHalo.h:952
void set_veldisp_estimate(const double veldisp_estimate=par::defaultDouble) override
set the private member HostHalo::m_veldisp_estimate
Definition: HostHalo.h:752
bool isSet_radius_estimate() override
get the private member m_radius_estimate
Definition: HostHalo.h:872
double zz() const
get the member m_zz
Definition: Object.h:758
long region() const
get the member m_region
Definition: Object.h:835
double dec() const
get the member m_dec
Definition: Object.h:779
double y_displacement() const
get the member m_y_displacement
Definition: Object.h:867
double weight() const
get the member m_weight
Definition: Object.h:828
double ra() const
get the member m_ra
Definition: Object.h:772
std::string field() const
get the member m_field
Definition: Object.h:850
double yy() const
get the member m_yy
Definition: Object.h:751
double redshift() const
get the member m_redshift
Definition: Object.h:807
double x_displacement() const
get the member m_x_displacement
Definition: Object.h:860
int ID() const
get the member m_radius
Definition: Object.h:843
double xx() const
get the member m_xx
Definition: Object.h:744
double z_displacement() const
get the member m_z_displacement
Definition: Object.h:874
The class Cosmology.
Definition: Cosmology.h:277
static const std::string defaultString
default std::string value
Definition: Constants.h:336
static const long defaultLong
default long value
Definition: Constants.h:342
static const double defaultDouble
default double value
Definition: Constants.h:348
static const int defaultInt
default integer value
Definition: Constants.h:339
The global namespace of the CosmoBolognaLib
Definition: CAMB.h:38
bool isSet(const std::string var)
check if the value of a [string] variable has already been set
Definition: Kernel.h:803
CoordinateUnits
the coordinate units
Definition: Kernel.h:562