61#include "utilitaires.h"
100 ll.
set(2) = st % sp ;
113 orb_rot_x = omega_orb * (
mp.get_ori_x() - x_rot) ;
117 orb_rot_y = omega_orb * (
mp.get_ori_y() - y_rot) ;
122 uv.
set(1) = - orb_rot_y ;
123 uv.
set(2) = orb_rot_x ;
133 for (
int i=1; i<=3; i++) {
134 for (
int j=1; j<=3; j++) {
138 - 2. * divshift *
flat.con()(i,j) / 3. ;
147 for (
int i=1; i<=3; i++) {
148 for (
int j=1; j<=3; j++) {
159 - 2. * ll(i) * ll(j) * divshift / 3.) / rr ;
168 for (
int i=1; i<=3; i++) {
169 for (
int j=1; j<=3; j++) {
176 *(9.+14.*mass/rr)*ll(i)*ll(j) )
188 * (flat_taij + curv_taij + resi_taij) /
lapconf_tot ;
195 for (
int i=1; i<=3; i++) {
196 for (
int j=1; j<=3; j++) {
199 * ( ll(i) * uv(j) + ll(j) * uv(i)
202 *(9.+14.*mass/rr)*ll(i)*ll(j) )
203 * (ll(2)*orb_rot_x - ll(1)*orb_rot_y) / 3. )
214 for (
int i=1; i<=3; i++) {
215 for (
int j=1; j<=3; j++) {
218 * ( (1.+2.*mass/rr)*
flat.con()(i,j)
219 - (3.+2.*mass/rr) * ll(i) * ll(j) )
239 for (
int i=1; i<=3; i++) {
240 for (
int j=1; j<=3; j++) {
241 flat_dshift.
set(i,j) =
254 - 2. * divshift *
flat.cov()(i,j) / 3. ;
263 for (
int i=1; i<=3; i++) {
264 for (
int j=1; j<=3; j++) {
265 curv_dshift.
set(i,j) = 2. * mass
278 - 2. * divshift * ll(i) * ll(j) / 3. ) / rr ;
287 for (
int i=1; i<=3; i++) {
288 for (
int j=1; j<=3; j++) {
289 tmp1.
set(i,j) = 2. * mass
290 *(ll(j)*( (
flat.cov()(i,1)+2.*mass*ll(i)*ll(1)/rr)
292 + (
flat.cov()(i,2)+2.*mass*ll(i)*ll(2)/rr)
294 + (
flat.cov()(i,3)+2.*mass*ll(i)*ll(3)/rr)
297 + ll(i)*( (
flat.cov()(j,1)+2.*mass*ll(j)*ll(1)/rr)
299 + (
flat.cov()(j,2)+2.*mass*ll(j)*ll(2)/rr)
301 + (
flat.cov()(j,3)+2.*mass*ll(j)*ll(3)/rr)
312 for (
int i=1; i<=3; i++) {
313 for (
int j=1; j<=3; j++) {
319 - (9.+28.*mass/rr+24.*mass*mass/rr/rr)*ll(i)*ll(j))
330 * (flat_dshift + curv_dshift + tmp1 + tmp2) /
lapconf_tot ;
338 for (
int i=1; i<=3; i++) {
339 for (
int j=1; j<=3; j++) {
341 * ( ll(j)*uv(i) + ll(i)*uv(j)
343 * (ll(2)*orb_rot_x - ll(1)*orb_rot_y)
344 * (
flat.cov()(i,j) - (9.+16.*mass/rr)*ll(i)*ll(j) ) / 3.
355 for (
int i=1; i<=3; i++) {
356 for (
int j=1; j<=3; j++) {
359 * (
flat.cov()(i,j) - (3.+4.*mass/rr) * ll(i) * ll(j))
368 taij_quad_rstot = 0. ;
370 for (
int i=1; i<=3; i++) {
371 for (
int j=1; j<=3; j++) {
372 taij_quad_rstot += taij_down_rs(i,j) *
taij_tot(i,j) ;
378 taij_quad_rsrotbh = 0. ;
380 for (
int i=1; i<=3; i++) {
381 for (
int j=1; j<=3; j++) {
383 * (taij_down_rot(i,j) + taij_down_bh(i,j)) ;
393 * (ll(2)*orb_rot_x - ll(1)*orb_rot_y)
396 * (3.*(1.+2.*mass/rr)*(orb_rot_x*orb_rot_x+orb_rot_y*orb_rot_y)
397 -2.*(1.+3.*mass/rr)*(ll(2)*orb_rot_x-ll(1)*orb_rot_y)
398 *(ll(2)*orb_rot_x-ll(1)*orb_rot_y))
426 cc = 2. * (
sqrt(13.) - 1.) / 3. ;
438 cout <<
"!!!!! WARNING: Not yet prepared !!!!!" << endl ;
444 cout <<
"!!!!! WARNING: Not yet prepared !!!!!" << endl ;
460 for (
int i=1; i<=3; i++) {
461 for (
int j=1; j<=3; j++) {
465 - 2. * divshift %
flat.con()(i,j) / 3. ;
477 for (
int i=1; i<=3; i++) {
478 for (
int j=1; j<=3; j++) {
486 for (
int i=1; i<=3; i++) {
487 for (
int j=1; j<=3; j++) {
489 *
sqrt(1. - 2.*mass/r_are/rr + cc*cc*
pow(mass/r_are/rr,4.))
498 for (
int i=1; i<=3; i++) {
499 for (
int j=1; j<=3; j++) {
511 for (
int i=1; i<=3; i++) {
512 for (
int j=1; j<=3; j++) {
517 for (
int i=1; i<=3; i++) {
518 for (
int j=1; j<=3; j++) {
535 for (
int i=1; i<=3; i++) {
536 for (
int j=1; j<=3; j++) {
539 - 2. * divshift_auto %
flat.con()(i,j) / 3. ;
552 for (
int i=1; i<=3; i++) {
553 for (
int j=1; j<=3; j++) {
564 for (
int i=1; i<=3; i++) {
565 for (
int j=1; j<=3; j++) {
581 for (
int i=1; i<=3; i++) {
582 for (
int j=1; j<=3; j++) {
585 - 2. * divshift_comp %
flat.con()(i,j) / 3. ;
597 if (
taij_comp(1,2).get_etat() == ETATQCQ) {
598 for (
int i=1; i<=3; i++) {
599 for (
int j=1; j<=3; j++) {
611 for (
int i=1; i<=3; i++) {
612 for (
int j=1; j<=3; j++) {
613 flat_dshift.
set(i,j) =
626 - 2. * divshift *
flat.cov()(i,j) / 3. ;
641 for (
int i=1; i<=3; i++) {
642 for (
int j=1; j<=3; j++) {
644 *
sqrt(1. - 2.*mass/r_are/rr + cc*cc*
pow(mass/r_are/rr,4.))
652 for (
int i=1; i<=3; i++) {
653 for (
int j=1; j<=3; j++) {
661 taij_quad_rstot = 0. ;
663 for (
int i=1; i<=3; i++) {
664 for (
int j=1; j<=3; j++) {
665 taij_quad_rstot += taij_down_rs(i,j) %
taij_tot(i,j) ;
671 taij_quad_rsbh = 0. ;
673 for (
int i=1; i<=3; i++) {
674 for (
int j=1; j<=3; j++) {
675 taij_quad_rsbh +=
taij_tot_rs(i,j) % taij_down_bh(i,j) ;
687 * (1. - 2.*mass/r_are/rr + cc*cc*
pow(mass/r_are/rr,4.))
702 taij_quad_auto1 = 0. ;
703 for (
int i=1; i<=3; i++) {
704 for (
int j=1; j<=3; j++) {
714 taij_quad_auto2 = 0. ;
715 for (
int i=1; i<=3; i++) {
716 for (
int j=1; j<=3; j++) {
717 taij_quad_auto2 +=
taij_tot_bh(i,j) % taij_down_rs(i,j) ;
733 for (
int i=1; i<=3; i++) {
734 for (
int j=1; j<=3; j++) {
const Scalar r_coord(bool neumann, bool first) const
Expresses the areal radial coordinate by that in spatially isotropic coordinates.
Map & mp
Mapping associated with the black hole.
Metric_flat flat
Flat metric defined on the mapping (Spherical components with respect to the mapping of the black hol...
bool kerrschild
true for a Kerr-Schild background, false for a conformally flat background
double mass_bh
Gravitational mass of BH.
Sym_tensor taij_tot_bh
Part of the extrinsic curvature tensor from the analytic background.
Scalar lapconf_auto
Lapconf function generated by the black hole.
Sym_tensor taij_comp
Part of the extrinsic curvature tensor generated by the companion star.
Sym_tensor taij_auto
Part of the extrinsic curvature tensor generated by the black hole.
Sym_tensor taij_tot_rs
Part of the extrinsic curvature tensor from the numerical computation.
Scalar taij_quad_auto
Part of the scalar from the black hole.
Vector shift_auto_rs
Part of the shift vector from the numerical computation.
virtual void del_deriv() const
Deletes all the derived quantities.
bool bc_lapconf_fs
true for the first type BC for the lapconf function, false for the second type BH
Scalar taij_quad_tot_rot
Part of the scalar from the rotation shift vector.
Scalar taij_quad_tot
Total scalar generated by .
Sym_tensor taij_tot_rot
Part of the extrinsic curvature tensor from the rotation shift vector.
Sym_tensor taij_tot
Total extrinsic curvature tensor generated by shift_tot , lapse_tot , and confo_tot .
Scalar confo_comp
Conformal factor generated by the companion star.
Scalar lapconf_comp
Lapconf function generated by the companion star.
Scalar lapconf_auto_bh
Part of the lapconf function from the analytic background.
Scalar taij_quad_comp
Part of the scalar from the companion star.
void extr_curv_bhns(double omega_orb, double x_rot, double y_rot)
Computes taij_tot , taij_quad_tot from shift_tot , lapse_tot , confo_tot .
bool bc_lapconf_nd
true for the Neumann type BC for the lapconf function, false for the Dirichlet type BH
Scalar lapconf_tot
Total lapconf function.
Tensor d_shift_comp
Derivative of the shift vector generated by the companion star.
Vector shift_comp
Shift vector generated by the companion star.
Scalar confo_tot
Total conformal factor.
Sym_tensor taij_auto_rs
Part of the extrinsic curvature tensor numericalty computed for the black hole.
Scalar taij_quad_tot_rs
Part of the scalar from the numerical computation.
Scalar taij_quad_tot_bh
Part of the scalar from the analytic background.
Tensor field of valence 0 (or component of a tensorial field).
void raccord(int n)
Performs the matching of the nucleus with respect to the first shell.
virtual void std_spectral_base()
Sets the spectral bases of the Valeur va to the standard ones for a scalar field.
Class intended to describe valence-2 symmetric tensors.
Tensor field of valence 1.
virtual void std_spectral_base()
Sets the standard spectal bases of decomposition for each component.
Scalar & set(int)
Read/write access to a component.
Cmp sqrt(const Cmp &)
Square root.
Cmp pow(const Cmp &, int)
Power .
virtual void inc_dzpuis(int inc=1)
Increases by inc units the value of dzpuis and changes accordingly the values in the compactified ext...
void annule_domain(int l)
Sets the Tensor to zero in a given domain.
virtual void set_etat_qcq()
Sets the logical state of all components to ETATQCQ (ordinary state).
Scalar & set(const Itbl &ind)
Returns the value of a component (read/write version).
virtual void std_spectral_base()
Sets the standard spectal bases of decomposition for each component.
Standard units of space, time and mass.