80 const Scalar& lapconf =
star.get_lapconf_tot() ;
86 int ii = (
star.get_mp()).get_mg()->get_nr(0) - 1 ;
87 int jj = (
star.get_mp()).get_mg()->get_nt(0) - 1 ;
89 int kb = (
star.get_mp()).get_mg()->get_np(0) / 2 ;
105 double shiftx_a = shift(1).val_grid_point(0,ka,jj,ii) ;
106 double shiftx_b = shift(1).val_grid_point(0,kb,jj,ii) ;
107 double shifty_a = shift(2).val_grid_point(0,ka,jj,ii) ;
108 double shifty_b = shift(2).val_grid_point(0,kb,jj,ii) ;
109 double shiftz_a = shift(3).val_grid_point(0,ka,jj,ii) ;
110 double shiftz_b = shift(3).val_grid_point(0,kb,jj,ii) ;
112 double xns_rot = (
star.get_mp()).get_ori_x() -
x_rot ;
113 double yns_rot = (
star.get_mp()).get_ori_y() -
y_rot ;
115 double ra =
star.ray_eq() ;
116 double rb =
star.ray_eq_pi() ;
118 if (
hole.is_kerrschild()) {
120 cout <<
"!!!!! WARNING: Not yet available !!!!!" << endl ;
192 double sa = shiftx_a*shiftx_a+shifty_a*shifty_a+shiftz_a*shiftz_a ;
193 double sb = shiftx_b*shiftx_b+shifty_b*shifty_b+shiftz_b*shiftz_b ;
195 double ta = -shiftx_a*yns_rot + shifty_a*(ra+xns_rot) ;
196 double tb = -shiftx_b*yns_rot + shifty_b*(-rb+xns_rot) ;
198 double ua = yns_rot*yns_rot + (ra+xns_rot)*(ra+xns_rot) ;
199 double ub = yns_rot*yns_rot + (-rb+xns_rot)*(-rb+xns_rot) ;
204 double aaa = psi4_a * gam2_a * ua - psi4_b * gam2_b * ub ;
205 double bbb = psi4_a * gam2_a * ta - psi4_b * gam2_b * tb ;
206 double ccc = psi4_a * gam2_a * sa - psi4_b * gam2_b * sb
207 - lap2_a * gam2_a / con2_a + lap2_b * gam2_b / con2_b ;
212 double ddd = bbb*bbb - aaa*ccc ;
216 "!!! WARNING : Omega (from two points) does not exist !!!"
223 double omega_1 = (-bbb +
sqrt(ddd)) / aaa ;
224 double omega_2 = (-bbb -
sqrt(ddd)) / aaa ;
226 cout <<
"Bin_bhns::omega_two_points:" << endl ;
227 cout <<
" omega_1 : " << omega_1 * f_unit <<
" [rad/s]"
229 cout <<
" omega_2 : " << omega_2 * f_unit <<
" [rad/s]"
232 omega_two = omega_1 ;