COSMOS API AHF2D - cmyoo/cosmos GitHub Wiki
COSMOS :: Class description for Ahf2d
-
This class defines the necessary variables and functions to detect the surface of an apparent horizon in the three dimensional box.
-
"cosmos.h" is required to use this tool.
Ahf2d :: Variables
- General variables for apparent horizon finder
type | name | description |
---|---|---|
bool | error | true if AH is not found |
int | mt | number of theta grid |
int | mp | number of phi grid |
int | fignum | number for figure plot |
double | dt | d theta |
double | dti | 1/ dtheta |
double | dti2 | 1/ dtheta^2 |
double | dp | d phi |
double | dpi | 1/ dphi |
double | dpi2 | 1/ dphi^2 |
double | var | acceleration parameter in PRD55 2002 |
double | fac | factor of iteration update |
double | *theta | theta coordinate |
double | *phi | phi coordinate |
double | hini | initial radius |
double | **ha | previous horizon radius |
double | **hb | updated horizon radius |
double | **src | source term |
double | **ds | area element |
double | **dce | for equator length |
double | **dcp1 | for meridian length-1 |
double | **dcp2 | for merician length-2 |
double | area | area |
double | mass | mass |
double | spin | spin |
double | circe | equator length |
double | circp1 | meridian length-1 |
double | circp2 | meridian length-2 |
- Variables for IMLUCGS poisson solver (see "Basics of numerical computation(note in Japanese edition)" p.90 for names of vectors)
type | name | description |
---|---|---|
double | **vtmp | temporary vector in Poisson solver |
double | **vp | p-vector in Poisson solver |
double | **vr | r-vector in Poisson solver |
double | **vr0 | r0-vector in Poisson solver |
double | **ve | e-vector in Poisson solver |
double | **vh | h-vector in Poisson solver |
double | **vcon | temporary used in precondition |
double | **cb | vector for matrix non-zero components |
double | **cc | vector for matrix non-zero components |
double | **pcd | vector for matrix non-zero components |
double | **cd | vector for the matrix D in IMLU decomposition |
double | **ce | vector for matrix non-zero components |
double | **cf | vector for matrix non-zero components |
Constructor and Destructor
Ahf2d(int ntheta, int& nphi, double& va, double& fa, double& hc)
~Ahf2d()
Functions
GET and SET functions
type | name |
---|---|
bool | get_error() |
void | set_error(bool e) |
void | set_hini(double h) |
void | set_hflag(Fmv0 *fmv) |
Functions for finding Apparent Horizon
type | name | description |
---|---|---|
void | multiple(double **x,double **ax) | Matrix multiplier |
void | poisson(double **vf,double **src,double errmax) | Poisson solver |
void | precondition(double **vs) | Preconditioning |
void | boundaryset(double **vs) | reflection boundary condition |
void | boundary_half(double **vs) | reflection boundary condition (half) |
void | boundary_periodicphi_nosympoletheta(double **vs) | periodic boundary condition for phi |
void | boundary0(double **vs) | substituting 0 for boundary |
void | find_ah(Fmv0 *fmv,int loopmax,double err_p,double err_eps,ofstream& fout,short int& hsign) | Finding Apparent Horizon |
void | print_ah(Fmv0 *fmv,ofstream& fout,double time) | Printing information of Apparent Horizon |
double | hrad(int tc,int pc,double th,double ph,int order) | |
double | ipol( double& rr,double *xx,double *yy,int order ) | Interpolation |