#include <sheets.h>

Public Types | |
| enum | carrierCountScheme { per_dx = 0, per_ds = 1 } |
| enum | depositScheme { CIC = 0, PCS = 1, CINT = 2 } |
Public Member Functions | |
| void | setDt (real_t dt) |
| real_t | _S1IDXtoX0 (idx_t s1) |
| real_t | _S2IDXtoY0 (idx_t s2) |
| real_t | _S3IDXtoZ0 (idx_t s3) |
| real_t | _S1IDXtoX0 (real_t s1) |
| real_t | _S2IDXtoY0 (real_t s2) |
| real_t | _S3IDXtoZ0 (real_t s3) |
| void | _MassDeposit (real_t weight, real_t x_idx, real_t y_idx, real_t z_idx, arr_t &rho) |
| void | _CICDeposit (real_t weight, real_t x_idx, real_t y_idx, real_t z_idx, arr_t &rho) |
| void | _PCSDeposit (real_t weight, real_t x_idx, real_t y_idx, real_t z_idx, arr_t &rho) |
| Piecewise cubic spline deposition. | |
| void | _CINTDeposit (real_t weight, real_t x_idx, real_t y_idx, real_t z_idx, arr_t &rho) |
| Deposition based on cubic interoplation (CINT) | |
| void | _deconvolve (arr_t &field) |
| void | _pushSheetMassToRho (idx_t s1, idx_t s2, idx_t s3) |
| void | _setMetricPotentials () |
| void | _RK4Calc () |
| void | _stepInit () |
| void | _K1Finalize () |
| void | _K2Finalize () |
| void | _K3Finalize () |
| void | _K4Finalize () |
| real_t | _getXRangeInSVoxel (register_t &DX, idx_t s1_idx, idx_t s2_idx, idx_t s3_idx, real_t X0_lower, real_t X0_upper) |
| void | addBSSNSource (BSSN *bssn, real_t tot_mass) |
| void | rescaleFieldPerturbations (arr_t &field, real_t multiplier) |
| void | rescaleVelocityPerturbations (arr_t &ux, arr_t &uy, arr_t &uz, real_t multiplier) |
| void | rescalePositionPerturbations (arr_t &dx, arr_t &dy, arr_t &dz, real_t multiplier) |
| void | rescaleAllFieldPerturbations (BSSN *bssn, real_t multiplier) |
| void | RKStep (BSSN *bssn) |
| void | stepInit () |
| void | K1Finalize () |
| void | K2Finalize () |
| void | K3Finalize () |
| void | K4Finalize () |
| std::vector< real_t > | getgammaiIJ (idx_t s1, idx_t s2, idx_t s3, BSSN *bssnSim) |
| std::vector< real_t > | getgammaIJ (idx_t s1, idx_t s2, idx_t s3, BSSN *bssnSim) |
| std::vector< real_t > | getRayDataAtS (idx_t s, BSSN *bssnSim, Lambda *lambda) |
| Function to get metric/data for a particular particle; Currently only ok for zero shift (maybe ok in general?); returns data from _p register. | |
Public Attributes | |
| idx_t | nx |
| idx_t | ny |
| idx_t | nz |
| idx_t | ns1 |
| idx_t | ns2 |
| idx_t | ns3 |
| Phase-space sheet resolution. | |
| real_t | lx |
| real_t | ly |
| real_t | lz |
| Metric grid physical dimensions. | |
| real_t | dx |
| real_t | dy |
| real_t | dz |
| Metric grid physical spacing. | |
| register_t | Dx |
| register_t | Dy |
| register_t | Dz |
| Metric-space displacements. | |
| register_t | vx |
| register_t | vy |
| register_t | vz |
| Phase-space velocity fields. | |
| arr_t | tmp |
| Array for misc. tmp storage (such as deconvolving) | |
| bool | follow_null_geodesics |
| real_t | rescale_sheet |
| real_t | ray_bundle_epsilon |
| real_t | det_g_obs |
| idx_t | step |
| carrierCountScheme | carrier_count_scheme |
| depositScheme | deposit |
| idx_t | carriers_per_dx |
| idx_t | carriers_per_dy |
| idx_t | carriers_per_dz |
| arr_t | d1alpha_a |
| arr_t | d2alpha_a |
| arr_t | d3alpha_a |
| arr_t | d1gammai11_a |
| arr_t | d1gammai22_a |
| arr_t | d1gammai33_a |
| arr_t | d1gammai12_a |
| arr_t | d1gammai13_a |
| arr_t | d1gammai23_a |
| arr_t | d2gammai11_a |
| arr_t | d2gammai22_a |
| arr_t | d2gammai33_a |
| arr_t | d2gammai12_a |
| arr_t | d2gammai13_a |
| arr_t | d2gammai23_a |
| arr_t | d3gammai11_a |
| arr_t | d3gammai22_a |
| arr_t | d3gammai33_a |
| arr_t | d3gammai12_a |
| arr_t | d3gammai13_a |
| arr_t | d3gammai23_a |
| arr_t | d1beta1_a |
| arr_t | d1beta2_a |
| arr_t | d1beta3_a |
| arr_t | d2beta1_a |
| arr_t | d2beta2_a |
| arr_t | d2beta3_a |
| arr_t | d3beta1_a |
| arr_t | d3beta2_a |
| arr_t | d3beta3_a |
Class used to run a sheet sim.
| real_t cosmo::Sheet::_getXRangeInSVoxel | ( | register_t & | DX, |
| idx_t | s1_idx, | ||
| idx_t | s2_idx, | ||
| idx_t | s3_idx, | ||
| real_t | X0_lower, | ||
| real_t | X0_upper | ||
| ) |
Get Min/max x/y/z coordinates at voxel corners
| void cosmo::Sheet::_pushSheetMassToRho | ( | idx_t | s1, |
| idx_t | s2, | ||
| idx_t | s3 | ||
| ) |
Compute conribution to rho(x) from data in a phase-space sheet voxel and add to rho(x) grid. Do so via 1501.01959 mass deposition scheme. TODO: improve; consider higher-order or analytic versions of this
| void cosmo::Sheet::_RK4Calc | ( | ) |
Intermediate RK4 calculations for phase space fields
|
inline |
Functions to convert s-indices to non-displaced coordinates
| void cosmo::Sheet::_setMetricPotentials | ( | ) |
Set metric potentials (or really just derivatives thereof)
| void cosmo::Sheet::addBSSNSource | ( | BSSN * | bssn, |
| real_t | tot_mass | ||
| ) |
Compute conribution to rho(x) from data in a phase-space Sheet voxel and add to rho(x) grid. Do so via 1501.01959 mass deposition scheme. TODO: improve; consider higher-order or analytic versions of this