70 cout <<
"Bin_bhns::rotation_axis:" << endl ;
71 cout <<
" !!! WARNING : error_y is larger than +1 !!!" << endl ;
78 double gg =
pow( (2.-error_y)/(2.-2.*error_y), rot_exp_x) ;
80 double xbh_old =
hole.get_mp().get_ori_x() ;
82 cout <<
"Bin_bhns::rotation_axis:" << endl ;
83 cout <<
" error_y : " << error_y <<
" gg : " << gg << endl ;
84 cout <<
" old X_BH : " <<
hole.get_mp().get_ori_x() / km <<
" [km]"
85 <<
" old X_NS : " <<
star.get_mp().get_ori_x() / km <<
" [km]"
88 double xbh_new = xbh_old * gg ;
89 double xns_new = xbh_new +
separ ;
91 cout <<
" new X_BH : " << xbh_new / km <<
" [km]"
92 <<
" new X_NS : " << xns_new / km <<
" [km]"
95 double yns_old =
star.get_mp().get_ori_y() ;
97 (
hole.set_mp()).set_ori(xbh_new, 0., 0.) ;
98 (
star.set_mp()).set_ori(xns_new, yns_old, 0.) ;
113 if (error_x <= -1.) {
114 cout <<
"Bin_bhns::rotation_axis:" << endl ;
115 cout <<
" !!! WARNING : error_x is smaller than -1 !!!" << endl ;
122 double ff =
pow( (2.+error_x)/(2.+2.*error_x), rot_exp_y) ;
124 double yns_old =
star.get_mp().get_ori_y() ;
126 if ( fabs(error_x) < thres_rot ) {
127 cout <<
"Bin_bhns::rotation_axis:" << endl ;
128 cout <<
" ff is set to 1 because error_x is smaller than" << endl ;
129 cout <<
" the threshold value (" << thres_rot <<
")" << endl ;
134 cout <<
"Local center of mass of NS:" << endl ;
138 cout <<
"Bin_bhns::rotation_axis:" << endl ;
139 cout <<
" error_x : " << error_x <<
" ff : " << ff << endl ;
140 cout <<
" old Y_BH : " <<
hole.get_mp().get_ori_y() / km <<
" [km]"
141 <<
" old Y_NS : " <<
star.get_mp().get_ori_y() / km <<
" [km]"
144 double aa = fact *
separ ;
145 double yns_new = yns_old + aa * (1. - ff) ;
147 cout <<
" new Y_BH : " << 0. / km <<
" [km]"
148 <<
" new Y_NS : " << yns_new / km <<
" [km]"
151 double xbh_old =
hole.get_mp().get_ori_x() ;
152 double xns_old =
star.get_mp().get_ori_x() ;
154 (
hole.set_mp()).set_ori(xbh_old, 0., 0.) ;
155 (
star.set_mp()).set_ori(xns_old, yns_new, 0.) ;
Hole_bhns hole
Black hole.
double ya_barycenter() const
Absolute coordinate Y of the barycenter of the baryon density.
double omega
Angular velocity with respect to an asymptotically inertial observer.
double & set_y_rot()
Sets the absolute coordinate Y of the rotation axis [{\tt r_unit}].
const Tbl & line_mom_bhns() const
Total linear momentum.
double xa_barycenter() const
Absolute coordinate X of the barycenter of the baryon density.
double separ
Absolute orbital separation between two centers of BH and NS.
void rotation_axis_y(double thres_rot, double rot_exp_y, double fact)
Computes the position of the rotation axis Y.
double & set_x_rot()
Sets the absolute coordinate X of the rotation axis [{\tt r_unit}].
Star_bhns star
Neutron star.
void rotation_axis_x(double rot_exp_x)
Computes the position of the rotation axis X.
Cmp pow(const Cmp &, int)
Power .
Standard units of space, time and mass.