Lorene::Bhole Class Reference
Stars and black holes

Black hole. More...

`#include <bhole.h>`

## Public Member Functions

| Bhole (Map_af &mapping)
| Standard constructor.
| Bhole (const Bhole &)
| Constructor by copy.
| Bhole (Map_af &, FILE *, bool old=false)
| Constructor from a `Map_af` and a file.
| ~Bhole ()
| Destructor.
void | sauve (FILE *fich) const
| Write on a file.
void | operator= (const Bhole &)
| Affectation.
const Map_af & | get_mp () const
| Returns the mapping (readonly).
Map_af & | set_mp ()
| Read/write of the mapping.
double | get_rayon () const
| Returns the radius of the horizon.
void | set_rayon (double ray)
| Sets the radius of the horizon to `ray` .
double | get_omega () const
| Returns the angular velocity.
void | set_omega (double ome)
| Sets the angular velocity to `ome` .
double | get_omega_local () const
| Returns the local angular velocity.
void | set_omega_local (double ome)
| Sets the local angular velocity to `ome` .
double | get_rot_state () const
| Returns the state of rotation.
void | set_rot_state (int rotation)
| Returns the state of rotation.
double * | get_boost () const
| Returns the cartesian components of the boost with respect to the reference frame.
void | set_boost (double vx, double vy, double vz)
double | get_regul () const
| Returns the intensity of the regularisation on .
const Tenseur & | get_n_auto () const
| Returns the part of N generated by the hole.
Cmp | return_n_auto () const
| Returns the part of N generated by the hole as a cmp.
const Tenseur & | get_n_comp () const
| Returns the part of N generated by the companion hole.
const Tenseur & | get_n_tot () const
| Returns the total N .
const Tenseur & | get_psi_auto () const
| Returns the part of generated by the hole.
Cmp | return_psi_auto () const
| Returns the part of generated by the hole as a cmp.
const Tenseur & | get_psi_comp () const
| Returns the part of generated by the companion hole.
const Tenseur & | get_psi_tot () const
| Returns the total .
const Tenseur & | get_grad_psi_tot () const
| Returns the gradient of .
const Tenseur & | get_grad_n_tot () const
| Returns the gradient of N .
const Tenseur & | get_shift_auto () const
| Returns the part of generated by the hole.
Cmp | return_shift_auto (int i) const
const Tenseur & | get_taij_auto () const
| Returns the part of generated by the hole.
const Tenseur & | get_taij_comp () const
| Returns the part of generated by the companion hole.
const Tenseur & | get_taij_tot () const
| Returns the total .
const Tenseur & | get_tkij_tot () const
| Returns the total .
const Tenseur & | get_tkij_auto () const
| Returns the part of generated by the hole.
const Cmp | get_decouple () const
| Returns the function used to construct `tkij_auto` from `tkij_tot` .
Cmp & | set_n_auto ()
Cmp & | set_psi_auto ()
void | set_lapse_hori (double xx)
void | fait_n_comp (const Bhole &comp)
| Imports the part of N due to the companion hole `comp` .
void | fait_psi_comp (const Bhole &comp)
| Imports the part of due to the companion hole `comp` .
void | fait_n_comp (const Et_bin_nsbh &comp)
| Imports the part of N due to the companion ns `comp` .
void | fait_psi_comp (const Et_bin_nsbh &comp)
| Imports the part of due to the companion ns `comp` .
void | fait_taij_auto ()
| Calculates the part of generated by `shift_auto` .
void | regularise_shift (const Tenseur &comp)
| Corrects `shift_auto` in such a way that the total is equal to zero in the horizon, which should ensure the regularity of , using the stored values of the boost and the angular velocity.
double | viriel_seul () const
| Computes the viriel error, that is the difference between the ADM and the Komar masses, calculated by the asymptotic behaviours of respectively and N .
void | init_bhole ()
| Sets the values of the fields to :
void | init_kerr (double masse, double moment)
| Set the inital values to those of Kerr.
void | solve_lapse_seul (double relax)
| Solves the equation for N ~:
void | solve_psi_seul (double relax)
| Solves the equation for ~:
void | solve_shift_seul (double precis, double relax)
| Solves the equation for ~:
void | regularise_seul ()
| Corrects the shift in the innermost shell, so that it remains and that equals zero on the horizon.
void | solve_lapse_with_ns (double relax, int bound_nn, double lim_nn)
| Solves the equation for N ~:
void | solve_psi_with_ns (double relax)
| Solves the equation for ~:
void | solve_shift_with_ns (const Et_bin_nsbh &ns, double precis, double relax, int bound_nn, double lim_nn)
| Solves the equation for ~:
void | equilibrium (const Et_bin_nsbh &ns, double precis, double relax, int bound_nn, double lim_nn)
void | update_metric (const Et_bin_nsbh &ns)
void | fait_tkij ()
| Calculates the total .
double | area () const
| Computes the area of the throat.
double | masse_adm_seul () const
| Calculates the ADM mass of the black hole using : .
double | masse_komar_seul () const
| Calculates the Komar mass of the black hole using : .
double | moment_seul_inf () const
| Calculates the angular momentum of the black hole using the formula at infinity : where .
double | moment_seul_hor () const
| Calculates the angular momentum of the black hole using the formula on the horizon : where and H denotes the horizon.
double | local_momentum () const
void | init_bhole_phi ()
| Initiates the black hole for a resolution with .
void | init_bhole_seul ()
| Initiates for a single the black hole.

## Protected Attributes

Map_af & | mp
| Affine mapping.
double | rayon
| Radius of the horizon in LORENE's units.
double | omega
| Angular velocity in LORENE's units.
double | omega_local
| local angular velocity
int | rot_state
| State of rotation.
double | lapse_hori
double * | boost
| Lapse on the horizon.
double | regul
| Intensity of the correction on the shift vector.
Tenseur | n_auto
| Part of N generated by the hole.
Tenseur | n_comp
| Part of N generated by the companion hole.
Tenseur | n_tot
| Total N .
Tenseur | psi_auto
| Part of generated by the hole.
Tenseur | psi_comp
| Part of generated by the companion hole.
Tenseur | psi_tot
| Total .
Tenseur | grad_n_tot
| Total gradient of N .
Tenseur | grad_psi_tot
| Total gradient of .
Tenseur | shift_auto
| Part of generated by the hole.
Tenseur_sym | taij_auto
| Part of generated by the hole.
Tenseur_sym | taij_comp
| Part of generated by the companion hole.
Tenseur_sym | taij_tot
| Total , which must be zero on the horizon of the regularisation on the shift has been done.
Tenseur_sym | tkij_auto
| Auto .
Tenseur_sym | tkij_tot
| Total .
Cmp | decouple
| Function used to construct the part of generated by the hole from the total .

## Friends

class | Bhole_binaire
| Binary black hole system.
class | Bin_ns_bh
| Binary NS-BH.

## Detailed Description

Black hole.

()

This class represents a black hole in a comformaly flat approximation. It is defined with an affine mapping with a nucleus, not used in calculations, and must have, at least two shells. The horizon (i.e. the surface where N=0 ) is located at the inner boudary of the innermost shell (i.e. the domain number 1).

It can described either :

- an isolated black hole . The fields of the companion and the total fields being zero.
- a black hole in a binary system . The boost having no direct meaning in this case.

The tensor is the the extrinsic curavature tensor with the conformal factor extracted.

The tensor denotes , that is .

Definition at line 268 of file bhole.h.

## Constructor & Destructor Documentation

## Bhole() [1/3]

Lorene::Bhole::Bhole | ( | Map_af & | mapping | ) |

Standard constructor.

All the fields are set to zero, except `rayon` , which value is deducted from the `mapping`

Definition at line 177 of file bhole.C.

References boost, decouple, Lorene::get_bvect_cart(), grad_n_tot, grad_psi_tot, mp, n_auto, n_comp, n_tot, omega, omega_local, psi_auto, psi_comp, psi_tot, rayon, regul, rot_state, shift_auto, taij_auto, taij_comp, taij_tot, tkij_auto, and tkij_tot.

## Bhole() [2/3]

Lorene::Bhole::Bhole | ( | const Bhole & | source | ) |

Constructor by copy.

Definition at line 197 of file bhole.C.

References Bhole(), boost, decouple, grad_n_tot, grad_psi_tot, mp, n_auto, n_comp, n_tot, omega, omega_local, psi_auto, psi_comp, psi_tot, rayon, regul, rot_state, shift_auto, taij_auto, taij_comp, taij_tot, tkij_auto, and tkij_tot.

## Bhole() [3/3]

Lorene::Bhole::Bhole | ( | Map_af & | mpi,
|  | FILE * | fich,
|  | bool | old = false )

Constructor from a `Map_af` and a file.

Definition at line 496 of file bhole.C.

References boost, decouple, Lorene::fread_be(), Lorene::get_bvect_cart(), grad_n_tot, grad_psi_tot, mp, n_auto, n_comp, n_tot, omega, omega_local, psi_auto, psi_comp, psi_tot, rayon, regul, rot_state, shift_auto, taij_auto, taij_comp, taij_tot, tkij_auto, and tkij_tot.

## ~Bhole()

Lorene::Bhole::~Bhole | ( |  | ) |

Destructor.

Definition at line 213 of file bhole.C.

References boost.

## Member Function Documentation

## area()

double Lorene::Bhole::area | ( |  | ) | const

Computes the area of the throat.

Definition at line 545 of file bhole.C.

References mp, Lorene::pow(), psi_tot, Lorene::Cmp::raccord(), rayon, and Lorene::Cmp::std_base_scal().

## equilibrium()

void Lorene::Bhole::equilibrium | ( | const Et_bin_nsbh & | ns,
|  | double | precis,
|  | double | relax,
|  | int | bound_nn,
|  | double | lim_nn )

Definition at line 349 of file bhole_with_ns.C.

## fait_n_comp() [1/2]

void Lorene::Bhole::fait_n_comp | ( | const Bhole & | comp | ) |

Imports the part of N due to the companion hole `comp` .

The total N is then calculated.

It also imports the gradient of N and construct the total .

Definition at line 254 of file bhole.C.

References Bhole(), Lorene::Tenseur::change_triad(), Lorene::Tenseur::dec2_dzpuis(), Lorene::Tenseur::get_triad(), grad_n_tot, Lorene::Tenseur::gradient(), Lorene::Cmp::import_asymy(), Lorene::Cmp::import_symy(), Lorene::Tenseur::inc2_dzpuis(), mp, n_auto, n_comp, n_tot, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), and Lorene::Tenseur::set_std_base().

## fait_n_comp() [2/2]

void Lorene::Bhole::fait_n_comp | ( | const Et_bin_nsbh & | comp | ) |

Imports the part of N due to the companion ns `comp` .

The total N is then calculated.

It also imports the gradient of N and construct the total .

Definition at line 307 of file bhole.C.

References Lorene::Tenseur::change_triad(), Lorene::Tenseur::dec2_dzpuis(), Lorene::Et_bin_nsbh::get_d_n_auto(), Lorene::Et_bin_nsbh::get_n_auto(), Lorene::Tenseur::get_triad(), grad_n_tot, Lorene::Cmp::import(), Lorene::Cmp::import_asymy(), Lorene::Cmp::import_symy(), Lorene::Tenseur::inc2_dzpuis(), mp, n_auto, n_comp, n_tot, regul, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_std_base(), and Lorene::Tenseur::set_triad().

## fait_psi_comp() [1/2]

void Lorene::Bhole::fait_psi_comp | ( | const Bhole & | comp | ) |

Imports the part of due to the companion hole `comp` .

The total is then calculated.

It also imports the gradient of and construct the total .

Definition at line 280 of file bhole.C.

References Bhole(), Lorene::Tenseur::change_triad(), Lorene::Tenseur::dec2_dzpuis(), Lorene::Tenseur::get_triad(), grad_psi_tot, Lorene::Tenseur::gradient(), Lorene::Cmp::import_asymy(), Lorene::Cmp::import_symy(), Lorene::Tenseur::inc2_dzpuis(), mp, psi_auto, psi_comp, psi_tot, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), and Lorene::Tenseur::set_std_base().

## fait_psi_comp() [2/2]

void Lorene::Bhole::fait_psi_comp | ( | const Et_bin_nsbh & | comp | ) |

Imports the part of due to the companion ns `comp` .

The total is then calculated.

It also imports the gradient of and construct the total .

Definition at line 344 of file bhole.C.

References Lorene::Tenseur::change_triad(), Lorene::Tenseur::dec2_dzpuis(), Lorene::Et_bin_nsbh::get_confpsi_auto(), Lorene::Et_bin_nsbh::get_d_confpsi_auto(), Lorene::Tenseur::get_triad(), grad_psi_tot, Lorene::Cmp::import(), Lorene::Cmp::import_asymy(), Lorene::Cmp::import_symy(), Lorene::Tenseur::inc2_dzpuis(), mp, psi_auto, psi_comp, psi_tot, regul, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_std_base(), and Lorene::Tenseur::set_triad().

## fait_taij_auto()

void Lorene::Bhole::fait_taij_auto | ( |  | ) |

Calculates the part of generated by `shift_auto` .

Definition at line 379 of file bhole.C.

References mp, shift_auto, and taij_auto.

## fait_tkij()

void Lorene::Bhole::fait_tkij | ( |  | ) |

Calculates the total .

The regularisation of the shift must be done before to ensure regularity.

Definition at line 326 of file bhole_pseudo_kerr.C.

References fait_taij_auto(), mp, n_auto, taij_auto, and tkij_auto.

## get_boost()

double * Lorene::Bhole::get_boost | ( |  | ) | const

inline

Returns the cartesian components of the boost with respect to the reference frame.

Definition at line 382 of file bhole.h.

References boost.

## get_decouple()

const Cmp Lorene::Bhole::get_decouple | ( |  | ) | const

inline

Returns the function used to construct `tkij_auto` from `tkij_tot` .

Definition at line 468 of file bhole.h.

References decouple.

## get_grad_n_tot()

const Tenseur & Lorene::Bhole::get_grad_n_tot | ( |  | ) | const

inline

Returns the gradient of N .

Definition at line 434 of file bhole.h.

References grad_n_tot.

## get_grad_psi_tot()

const Tenseur & Lorene::Bhole::get_grad_psi_tot | ( |  | ) | const

inline

Returns the gradient of .

Definition at line 429 of file bhole.h.

References grad_psi_tot.

## get_mp()

const Map_af & Lorene::Bhole::get_mp | ( |  | ) | const

inline

Returns the mapping (readonly).

Definition at line 339 of file bhole.h.

References mp.

## get_n_auto()

const Tenseur & Lorene::Bhole::get_n_auto | ( |  | ) | const

inline

Returns the part of N generated by the hole.

Definition at line 395 of file bhole.h.

References n_auto.

## get_n_comp()

const Tenseur & Lorene::Bhole::get_n_comp | ( |  | ) | const

inline

Returns the part of N generated by the companion hole.

Definition at line 403 of file bhole.h.

References n_comp.

## get_n_tot()

const Tenseur & Lorene::Bhole::get_n_tot | ( |  | ) | const

inline

Returns the total N .

Definition at line 407 of file bhole.h.

References n_tot.

## get_omega()

double Lorene::Bhole::get_omega | ( |  | ) | const

inline

Returns the angular velocity.

Definition at line 357 of file bhole.h.

References omega.

## get_omega_local()

double Lorene::Bhole::get_omega_local | ( |  | ) | const

inline

Returns the local angular velocity.

Definition at line 365 of file bhole.h.

References omega_local.

## get_psi_auto()

const Tenseur & Lorene::Bhole::get_psi_auto | ( |  | ) | const

inline

Returns the part of generated by the hole.

Definition at line 412 of file bhole.h.

References psi_auto.

## get_psi_comp()

const Tenseur & Lorene::Bhole::get_psi_comp | ( |  | ) | const

inline

Returns the part of generated by the companion hole.

Definition at line 420 of file bhole.h.

References psi_comp.

## get_psi_tot()

const Tenseur & Lorene::Bhole::get_psi_tot | ( |  | ) | const

inline

Returns the total .

Definition at line 424 of file bhole.h.

References psi_tot.

## get_rayon()

double Lorene::Bhole::get_rayon | ( |  | ) | const

inline

Returns the radius of the horizon.

Definition at line 347 of file bhole.h.

References rayon.

## get_regul()

double Lorene::Bhole::get_regul | ( |  | ) | const

inline

Returns the intensity of the regularisation on .

Definition at line 390 of file bhole.h.

References regul.

## get_rot_state()

double Lorene::Bhole::get_rot_state | ( |  | ) | const

inline

Returns the state of rotation.

Definition at line 373 of file bhole.h.

References rot_state.

## get_shift_auto()

const Tenseur & Lorene::Bhole::get_shift_auto | ( |  | ) | const

inline

Returns the part of generated by the hole.

Definition at line 440 of file bhole.h.

References shift_auto.

## get_taij_auto()

const Tenseur & Lorene::Bhole::get_taij_auto | ( |  | ) | const

inline

Returns the part of generated by the hole.

Definition at line 447 of file bhole.h.

References taij_auto.

## get_taij_comp()

const Tenseur & Lorene::Bhole::get_taij_comp | ( |  | ) | const

inline

Returns the part of generated by the companion hole.

Definition at line 451 of file bhole.h.

References taij_comp.

## get_taij_tot()

const Tenseur & Lorene::Bhole::get_taij_tot | ( |  | ) | const

inline

Returns the total .

Definition at line 455 of file bhole.h.

References taij_tot.

## get_tkij_auto()

const Tenseur & Lorene::Bhole::get_tkij_auto | ( |  | ) | const

inline

Returns the part of generated by the hole.

Definition at line 464 of file bhole.h.

References tkij_auto.

## get_tkij_tot()

const Tenseur & Lorene::Bhole::get_tkij_tot | ( |  | ) | const

inline

Returns the total .

Definition at line 460 of file bhole.h.

References tkij_tot.

## init_bhole()

void Lorene::Bhole::init_bhole | ( |  | ) |

Sets the values of the fields to :

- `n_auto`
- `n_comp`
- `psi_auto`
- `psi_comp`

a being the radius of the hole, the other fields being set to zero.

Definition at line 409 of file bhole.C.

References Lorene::Cmp::annule(), decouple, grad_n_tot, grad_psi_tot, mp, n_auto, n_comp, n_tot, psi_auto, psi_comp, psi_tot, rayon, Lorene::Cmp::set_dzpuis(), shift_auto, taij_auto, taij_comp, taij_tot, tkij_auto, and tkij_tot.

## init_bhole_phi()

void Lorene::Bhole::init_bhole_phi | ( |  | ) |

Initiates the black hole for a resolution with .

Definition at line 75 of file bhole_solve_phi.C.

References Lorene::Cmp::annule(), decouple, grad_n_tot, grad_psi_tot, Lorene::log(), mp, n_auto, n_comp, n_tot, psi_auto, psi_comp, psi_tot, rayon, Lorene::Cmp::set_dzpuis(), shift_auto, taij_auto, taij_comp, taij_tot, tkij_auto, and tkij_tot.

## init_bhole_seul()

void Lorene::Bhole::init_bhole_seul | ( |  | ) |

Initiates for a single the black hole.

WARNING It supposes that the boost is zero and should only be used for an isolated black hole..

Definition at line 445 of file bhole.C.

References Lorene::Cmp::annule(), decouple, grad_n_tot, grad_psi_tot, mp, n_auto, n_comp, n_tot, psi_auto, psi_comp, psi_tot, rayon, Lorene::Cmp::set_dzpuis(), Lorene::Cmp::set_val_inf(), shift_auto, taij_auto, taij_comp, taij_tot, tkij_auto, and tkij_tot.

## init_kerr()

void Lorene::Bhole::init_kerr | ( | double | masse,
|  | double | moment )

Set the inital values to those of Kerr.

Parameters

  masse | [input] : ADM mass in LORENE's units.
  moment | [input] : , in LORENE's units.

The radius of `*this` is supposed to be equal to .

The fields have then the following values~:

- .
- \end {itemize} where~:

- .
- is equal to `rayon` .

Definition at line 61 of file bhole_init_kerr.C.

References Lorene::Cmp::annule(), mp, Lorene::Valeur::mult_cp(), Lorene::Valeur::mult_sp(), Lorene::Valeur::mult_st(), n_auto, omega, Lorene::pow(), psi_auto, Lorene::Cmp::raccord(), rayon, Lorene::Cmp::set_val_hor(), Lorene::Cmp::set_val_inf(), shift_auto, Lorene::sqrt(), Lorene::Cmp::std_base_scal(), and Lorene::Cmp::va.

## local_momentum()

double Lorene::Bhole::local_momentum | ( |  | ) | const

Definition at line 560 of file bhole.C.

## masse_adm_seul()

double Lorene::Bhole::masse_adm_seul | ( |  | ) | const

Calculates the ADM mass of the black hole using : .

WARNING this should only be used for an isolated black hole.

Definition at line 344 of file bhole_pseudo_kerr.C.

References Lorene::dsdr(), mp, and psi_auto.

## masse_komar_seul()

double Lorene::Bhole::masse_komar_seul | ( |  | ) | const

Calculates the Komar mass of the black hole using : .

WARNING this should only be used for an isolated black hole.

Definition at line 352 of file bhole_pseudo_kerr.C.

References Lorene::dsdr(), mp, and n_auto.

## moment_seul_hor()

double Lorene::Bhole::moment_seul_hor | ( |  | ) | const

Calculates the angular momentum of the black hole using the formula on the horizon : where and H denotes the horizon.

WARNING It supposes that the boost is zero and should only be used for an isolated black hole..

Definition at line 410 of file bhole_pseudo_kerr.C.

References Lorene::Tenseur::annule(), boost, Lorene::Tenseur::change_triad(), mp, omega, Lorene::pow(), psi_auto, rayon, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_std_base(), Lorene::Cmp::std_base_scal(), tkij_auto, Lorene::xa, and Lorene::ya.

## moment_seul_inf()

double Lorene::Bhole::moment_seul_inf | ( |  | ) | const

Calculates the angular momentum of the black hole using the formula at infinity : where .

WARNING It supposes that the boost is zero and should only be used for an isolated black hole..

Definition at line 363 of file bhole_pseudo_kerr.C.

References boost, Lorene::Tenseur::change_triad(), mp, Lorene::Valeur::mult_cp(), Lorene::Cmp::mult_r_zec(), Lorene::Valeur::mult_sp(), Lorene::Valeur::mult_st(), omega, Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), tkij_auto, and Lorene::Cmp::va.

## operator=()

void Lorene::Bhole::operator= | ( | const Bhole & | source | ) |

Affectation.

Definition at line 218 of file bhole.C.

References Bhole(), boost, decouple, grad_n_tot, grad_psi_tot, mp, n_auto, n_comp, n_tot, omega, omega_local, psi_auto, psi_comp, psi_tot, rayon, regul, rot_state, shift_auto, taij_auto, taij_comp, taij_tot, tkij_auto, and tkij_tot.

## regularise_seul()

void Lorene::Bhole::regularise_seul | ( |  | ) |

Corrects the shift in the innermost shell, so that it remains and that equals zero on the horizon.

`regul` is then, the relative difference between the shift before and after the regularisation.

WARNING this should only be used for an isolated black hole.

Definition at line 254 of file bhole_pseudo_kerr.C.

References Lorene::Cmp::annule(), Lorene::Valeur::annule(), Lorene::Valeur::annule_hard(), Lorene::Valeur::base, boost, Lorene::Tenseur::c, Lorene::Valeur::coef_i(), Lorene::diffrelmax(), mp, Lorene::norme(), omega, Lorene::pow(), regul, Lorene::Tenseur::set(), Lorene::Valeur::set(), Lorene::Valeur::set_etat_c_qcq(), Lorene::Tenseur::set_etat_qcq(), Lorene::Tenseur::set_std_base(), shift_auto, and Lorene::Cmp::va.

## regularise_shift()

void Lorene::Bhole::regularise_shift | ( | const Tenseur & | comp | ) |

Corrects `shift_auto` in such a way that the total is equal to zero in the horizon, which should ensure the regularity of , using the stored values of the boost and the angular velocity.

WARNING : this should only be used for a black hole in a binary system `Bhole_binaire` or `Bin_ns_bh` .

Parameters

  comp | [input] : the part of generated by the companion hole.

Definition at line 403 of file bhole.C.

References omega, omega_local, regul, and shift_auto.

## return_n_auto()

Cmp Lorene::Bhole::return_n_auto | ( |  | ) | const

inline

Returns the part of N generated by the hole as a cmp.

Definition at line 399 of file bhole.h.

References n_auto.

## return_psi_auto()

Cmp Lorene::Bhole::return_psi_auto | ( |  | ) | const

inline

Returns the part of generated by the hole as a cmp.

Definition at line 416 of file bhole.h.

References psi_auto.

## return_shift_auto()

Cmp Lorene::Bhole::return_shift_auto | ( | int | i | ) | const

inline

Definition at line 442 of file bhole.h.

## sauve()

void Lorene::Bhole::sauve | ( | FILE * | fich | ) | const

Write on a file.

Definition at line 482 of file bhole.C.

References boost, Lorene::fwrite_be(), n_auto, omega, omega_local, psi_auto, regul, rot_state, and shift_auto.

## set_boost()

void Lorene::Bhole::set_boost | ( | double | vx,
|  | double | vy,
|  | double | vz )

inline

Definition at line 383 of file bhole.h.

## set_lapse_hori()

void Lorene::Bhole::set_lapse_hori | ( | double | xx | ) |

inline

Definition at line 473 of file bhole.h.

## set_mp()

Map_af & Lorene::Bhole::set_mp | ( |  | ) |

inline

Read/write of the mapping.

Definition at line 342 of file bhole.h.

References mp.

## set_n_auto()

Cmp & Lorene::Bhole::set_n_auto | ( |  | ) |

inline

Definition at line 470 of file bhole.h.

## set_omega()

void Lorene::Bhole::set_omega | ( | double | ome | ) |

inline

Sets the angular velocity to `ome` .

Definition at line 361 of file bhole.h.

References omega.

## set_omega_local()

void Lorene::Bhole::set_omega_local | ( | double | ome | ) |

inline

Sets the local angular velocity to `ome` .

Definition at line 369 of file bhole.h.

References omega_local.

## set_psi_auto()

Cmp & Lorene::Bhole::set_psi_auto | ( |  | ) |

inline

Definition at line 471 of file bhole.h.

## set_rayon()

void Lorene::Bhole::set_rayon | ( | double | ray | ) |

inline

Sets the radius of the horizon to `ray` .

Definition at line 352 of file bhole.h.

References rayon.

## set_rot_state()

void Lorene::Bhole::set_rot_state | ( | int | rotation | ) |

inline

Returns the state of rotation.

Definition at line 377 of file bhole.h.

References rot_state.

## solve_lapse_seul()

void Lorene::Bhole::solve_lapse_seul | ( | double | relax | ) |

Solves the equation for N ~:

with the condition that `N` =0 on the horizon.

Parameters

  relax | [input] : the relaxation parameter.

WARNING this should only be used for an isolated black hole.

Definition at line 97 of file bhole_pseudo_kerr.C.

References Lorene::flat_scalar_prod(), mp, n_auto, Lorene::Cmp::poisson_dirichlet(), Lorene::pow(), psi_auto, Lorene::Cmp::raccord(), Lorene::Tenseur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Cmp::std_base_scal(), Lorene::Valeur::std_base_scal(), and tkij_auto.

## solve_lapse_with_ns()

void Lorene::Bhole::solve_lapse_with_ns | ( | double | relax,
|  | int | bound_nn,
|  | double | lim_nn )

Solves the equation for N ~:

with the condition that `N` =0 on the horizon.

Parameters

  relax | [input] : the relaxation parameter.

WARNING this should only be used for BH in a `Bin_ns_bh` .

Definition at line 89 of file bhole_with_ns.C.

References Lorene::Valeur::annule_hard(), Lorene::flat_scalar_prod(), grad_n_tot, mp, n_auto, n_comp, n_tot, Lorene::Cmp::poisson_dirichlet(), Lorene::Cmp::poisson_neumann(), Lorene::pow(), psi_auto, psi_tot, Lorene::Tenseur::set(), Lorene::Valeur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Cmp::std_base_scal(), Lorene::Valeur::std_base_scal(), tkij_auto, and tkij_tot.

## solve_psi_seul()

void Lorene::Bhole::solve_psi_seul | ( | double | relax | ) |

Solves the equation for ~:

with the condition that on the horizon, where `f` is the value of on the horizon at the preceeding step.

Parameters

  relax | [input] : the relaxation parameter.

WARNING this should only be used for an isolated black hole.

Definition at line 135 of file bhole_pseudo_kerr.C.

References Lorene::flat_scalar_prod(), mp, Lorene::Cmp::poisson_neumann(), Lorene::pow(), psi_auto, Lorene::Cmp::raccord(), rayon, Lorene::Tenseur::set(), Lorene::Valeur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::Cmp::std_base_scal(), Lorene::Valeur::std_base_scal(), and tkij_auto.

## solve_psi_with_ns()

void Lorene::Bhole::solve_psi_with_ns | ( | double | relax | ) |

Solves the equation for ~:

with the condition that on the horizon, where `f` is the value of on the horizon at the preceeding step.

Parameters

  relax | [input] : the relaxation parameter.

WARNING this should only be used for BH in a `Bin_ns_bh` .

Definition at line 153 of file bhole_with_ns.C.

References Lorene::cos(), Lorene::flat_scalar_prod(), mp, Lorene::phi, Lorene::Cmp::poisson_neumann(), Lorene::pow(), psi_auto, psi_comp, psi_tot, rayon, Lorene::Tenseur::set(), Lorene::Valeur::set(), Lorene::Tenseur::set_etat_qcq(), Lorene::sin(), Lorene::Cmp::std_base_scal(), Lorene::Valeur::std_base_scal(), Lorene::tet, tkij_auto, and tkij_tot.

## solve_shift_seul()

void Lorene::Bhole::solve_shift_seul | ( | double | precis,
|  | double | relax )

Solves the equation for ~:

with on the horizon, being the boost and . The solution is solved using Oohara-scheme and an iteration.

Parameters

  precis | [input] : parameter for the Oohara-solver which is an iterative scheme.
  relax | [input] : the relaxation parameter.

WARNING this should only be used for an isolated black hole.

Definition at line 176 of file bhole_pseudo_kerr.C.

References Lorene::Valeur::base, boost, Lorene::Cmp::filtre(), Lorene::flat_scalar_prod(), Lorene::Tenseur::get_etat(), mp, n_auto, omega, psi_auto, Lorene::Tenseur::set(), Lorene::Valeur::set(), Lorene::Mtbl::set_etat_qcq(), Lorene::Tenseur::set_etat_zero(), Lorene::Tenseur::set_std_base(), shift_auto, taij_auto, and tkij_auto.

## solve_shift_with_ns()

void Lorene::Bhole::solve_shift_with_ns | ( | const Et_bin_nsbh & | ns,
|  | double | precis,
|  | double | relax,
|  | int | bound_nn,
|  | double | lim_nn )

Solves the equation for ~:

with on the horizon, being the boost and . The solution is solved using Oohara-scheme and an iteration.

Parameters

  ns | [input] : the companion.
  precis | [input] : parameter for the Oohara-solver which is an iterative scheme.
  relax | [input] : the relaxation parameter.

WARNING this should only be used for BH in a `Bin_ns_bh` .

Definition at line 222 of file bhole_with_ns.C.

References Lorene::Valeur::base, Lorene::cos(), Lorene::Cmp::filtre(), Lorene::flat_scalar_prod(), Lorene::Tenseur::get_etat(), Lorene::Etoile::get_mp(), Lorene::Etoile_bin::get_shift_auto(), mp, n_auto, n_tot, omega, omega_local, Lorene::phi, psi_auto, psi_tot, regul, Lorene::Tenseur::set(), Lorene::Valeur::set(), Lorene::Mtbl::set_etat_qcq(), Lorene::Tenseur::set_etat_zero(), Lorene::Tenseur::set_std_base(), shift_auto, Lorene::sin(), taij_tot, Lorene::tet, and tkij_tot.

## update_metric()

void Lorene::Bhole::update_metric | ( | const Et_bin_nsbh & | ns | ) |

Definition at line 366 of file bhole_with_ns.C.

## viriel_seul()

double Lorene::Bhole::viriel_seul | ( |  | ) | const

Computes the viriel error, that is the difference between the ADM and the Komar masses, calculated by the asymptotic behaviours of respectively and N .

WARNING this should only be used for an isolated black hole.

Definition at line 79 of file bhole_pseudo_viriel.C.

References mp, n_auto, and psi_auto.

## Friends And Related Symbol Documentation

## Bhole_binaire

friend class Bhole_binaire

friend

Binary black hole system.

Definition at line 747 of file bhole.h.

References Bhole_binaire.

## Bin_ns_bh

friend class Bin_ns_bh

friend

Binary NS-BH.

Definition at line 748 of file bhole.h.

References Bin_ns_bh.

## Member Data Documentation

## boost

double* Lorene::Bhole::boost

protected

Lapse on the horizon.

Cartesian components of the boost in the reference frame.

Definition at line 283 of file bhole.h.

## decouple

Cmp Lorene::Bhole::decouple

protected

Function used to construct the part of generated by the hole from the total .

Only used for a binary system.

Mainly this `Cmp` is 1 around the hole and 0 around the companion and the sum of `decouple` for the hole and his companion is 1 everywhere.

Definition at line 318 of file bhole.h.

## grad_n_tot

Tenseur Lorene::Bhole::grad_n_tot

protected

Total gradient of N .

Definition at line 294 of file bhole.h.

## grad_psi_tot

Tenseur Lorene::Bhole::grad_psi_tot

protected

Total gradient of .

Definition at line 295 of file bhole.h.

## lapse_hori

double Lorene::Bhole::lapse_hori

protected

Definition at line 278 of file bhole.h.

## mp

Map_af& Lorene::Bhole::mp

protected

Affine mapping.

Definition at line 273 of file bhole.h.

## n_auto

Tenseur Lorene::Bhole::n_auto

protected

Part of N generated by the hole.

Definition at line 286 of file bhole.h.

## n_comp

Tenseur Lorene::Bhole::n_comp

protected

Part of N generated by the companion hole.

Definition at line 287 of file bhole.h.

## n_tot

Tenseur Lorene::Bhole::n_tot

protected

Total N .

Definition at line 288 of file bhole.h.

## omega

double Lorene::Bhole::omega

protected

Angular velocity in LORENE's units.

Definition at line 275 of file bhole.h.

## omega_local

double Lorene::Bhole::omega_local

protected

local angular velocity

Definition at line 276 of file bhole.h.

## psi_auto

Tenseur Lorene::Bhole::psi_auto

protected

Part of generated by the hole.

Definition at line 290 of file bhole.h.

## psi_comp

Tenseur Lorene::Bhole::psi_comp

protected

Part of generated by the companion hole.

Definition at line 291 of file bhole.h.

## psi_tot

Tenseur Lorene::Bhole::psi_tot

protected

Total .

Definition at line 292 of file bhole.h.

## rayon

double Lorene::Bhole::rayon

protected

Radius of the horizon in LORENE's units.

Definition at line 274 of file bhole.h.

## regul

double Lorene::Bhole::regul

protected

Intensity of the correction on the shift vector.

Definition at line 284 of file bhole.h.

## rot_state

int Lorene::Bhole::rot_state

protected

State of rotation.

Definition at line 277 of file bhole.h.

## shift_auto

Tenseur Lorene::Bhole::shift_auto

protected

Part of generated by the hole.

Definition at line 297 of file bhole.h.

## taij_auto

Tenseur_sym Lorene::Bhole::taij_auto

protected

Part of generated by the hole.

Definition at line 299 of file bhole.h.

## taij_comp

Tenseur_sym Lorene::Bhole::taij_comp

protected

Part of generated by the companion hole.

Definition at line 300 of file bhole.h.

## taij_tot

Tenseur_sym Lorene::Bhole::taij_tot

protected

Total , which must be zero on the horizon of the regularisation on the shift has been done.

Definition at line 305 of file bhole.h.

## tkij_auto

Tenseur_sym Lorene::Bhole::tkij_auto

protected

Auto .

Definition at line 307 of file bhole.h.

## tkij_tot

Tenseur_sym Lorene::Bhole::tkij_tot

protected

Total .

Definition at line 308 of file bhole.h.

The documentation for this class was generated from the following files:

- bhole.h
- bhole.C
- bhole_init_kerr.C
- bhole_pseudo_kerr.C
- bhole_with_ns.C
- bhole_pseudo_viriel.C
- bhole_solve_phi.C