#include <u3d_prgrid3d.hpp>
3D pseudoregular hypergrid generation. Source data is array of 4D points U3dPoint4d(x1, x2, x3, x4). Grid is to be in the form of x4[i,j,k]={x1[i], x2[j], x3[k]}.
U3dPRGrid3d::U3dPRGrid3d |
( |
const U3dPoints4dAr & |
points, |
|
|
double |
g_step |
|
) |
| |
Default constructor with points and minimal grid step value provided
virtual U3dPRGrid3d::~U3dPRGrid3d |
( |
| ) |
|
|
virtual |
Add provided grid cell to current grid with indexies (ix1, jx2, kx3). If any index is < 0 it means that in this direction new point or line is too close (look minGridEps) to other and indexies convet from negative direction as ind_new = -(old_ind+1).
double U3dPRGrid3d::calc_nip_x4 |
( |
double |
x1, |
|
|
double |
x2, |
|
|
double |
x3 |
|
) |
| |
|
protected |
Calculate z-coordinate value of not initial grid point. Current array of initial points is used for calculations. x1, x2 and x3 is 3d coordinates of not initial point.
void U3dPRGrid3d::clear |
( |
| ) |
|
|
protected |
void U3dPRGrid3d::construct |
( |
const U3dPoints4dAr & |
points, |
|
|
double |
g_step |
|
) |
| |
Construct grid for provided initial points and minimal grid step value provided
Return current 4D area size. Return 0 0 0 0 and 0 0 0 0 if no points were added
int U3dPRGrid3d::getGridPoint |
( |
int |
i, |
|
|
int |
j, |
|
|
int |
k, |
|
|
U3dPoint4d & |
p |
|
) |
| const |
Return point associated with grid. This function returns type of point: initial is 1, otherwise 0. If indexies are out of range this method will return boundary values. Nothing for point if object is empty (return -1)
int U3dPRGrid3d::getGridX1Size |
( |
| ) |
const |
|
inline |
Return number of X1-coordinate grid elements
int U3dPRGrid3d::getGridX2Size |
( |
| ) |
const |
|
inline |
Return number of X2-coordinate grid elements
int U3dPRGrid3d::getGridX3Size |
( |
| ) |
const |
|
inline |
Return number of X3-coordinate grid elements
double U3dPRGrid3d::getMinGridStep |
( |
| ) |
|
|
inline |
Return minimal distance between points lines when they will be in different grid rows or cols
Push initial point to array of initial points and to proper grid cell
void U3dPRGrid3d::setMinGridStep |
( |
double |
eps | ) |
|
|
inline |
Set minimal distance between points lines when they will be in different grid rows or cols
std::vector<double> U3dPRGrid3d::grd_x1 |
|
protected |
Grid x1, x2 and x3 coordinates vectors
Left part of nonlinear equation for non-initial points x4-coordinates calculation while regular grid construction
Regular grid non-linear equation solver
int U3dPRGrid3d::m_grd_ip_num |
|
protected |
Number of initial points placed on current grid
U3dPoints4dAr U3dPRGrid3d::m_grd_ips |
|
protected |
Array of initial points placed on current grid
U3dPoints4dAr U3dPRGrid3d::m_ips |
|
protected |
double U3dPRGrid3d::m_prev_x4mn |
|
protected |
Previous maximal and minimal x4-coordinate range
double U3dPRGrid3d::minGridEps |
|
protected |
Minimal distance between points lines when they will be in different grid positions
The documentation for this class was generated from the following file: