2 #define OGEN_H "ogen.h"
43 const int & numberOfMultigridLevels =1,
87 const int & refinementLevel=-1 );
91 const int & refinementLevel=-1 );
95 const int & refinementLevel=-1 );
112 bool checkInterpolationCoords,
bool checkBoundaryPoint,
int infoLevel );
121 int offset[3],
real rScale[3],
real rOffset[3]);
127 int & numberOfInvalidPoints,
138 const bool & movingGrids =
FALSE,
163 const int *pIndexRange2,
164 const int *pExtendedIndexRange2,
165 const int *plocalIndexBounds2,
166 int iv[3],
int jv[3],
int jpv[3],
167 bool isPeriodic2[3],
bool isPeriodic2p[3],
169 const int &grid,
const int &grid2,
173 const int & numberOfDimensions,
174 const int & axisp1,
const int & axisp2,
const real & cellCenterOffset,
175 const int & maximumHoleWidth,
int & numberOfHoleWidthWarnings );
192 const int & i1,
const int &
i2,
const int & i3,
212 const int & queryForChanges =
TRUE );
216 const int numberOfDimensions,
const int grid );
230 const bool boundariesHaveCutHoles=
FALSE );
233 const bool boundariesHaveCutHoles=
FALSE );
243 const bool & movingGrids=
FALSE,
375 const intSerialArray& i1,
380 const intSerialArray& i1,
393 intSerialArray *iInterp );
399 const int ks1,
const int kd1,
const int ks2,
const int kd2,
401 int numberOfDirectionsAdjusted,
bool & directionAdjusted,
bool & wasAdjusted,
403 const int it,
real shareTol[3][2],
410 const int ks1,
const int kd1,
412 int numberOfDirectionsAdjusted,
418 bool & needAdjustment,
int manualSharedBoundaryNumber[2][3] );
421 int grid,
int grid2,
bool & needAdjustment,
int numberOfPoints,
422 int it,
int ks1,
int kd1,
int ks2,
int kd2, Index Iv[3],
RealArray & x1 );
426 int grid,
int donor,
int numberToCheck,
444 const int & numToCheck,
451 const int & usedPoint );
460 bool useOneSidedAtBoundaries =
true,
461 bool useOddInterpolationWidth =
false );
471 const int & numberToCheck,
476 intSerialArray & inverseGrid,
483 intSerialArray *iInterp );
492 intSerialArray & interpolates,
493 int & numberOfInvalidPoints,
495 const int & printDiagnosticMessages =
false,
496 const bool & tryBackupRules =
false,
497 const bool saveInvalidPoints =
true,
498 int lastChanceOption = 0 );
536 int getNormal(
const int & numberOfDimensions,
const int & side,
const int & axis,
552 intSerialArray & mask,
const intSerialArray & maskb );
556 int numberOfDimensions,
int rf[3],
557 Index & I1r, Index & I2r, Index & I3r,
558 const intSerialArray & mask00,
559 const intSerialArray & mask10,
560 const intSerialArray & mask01,
561 const intSerialArray & mask11);
572 int share1= cg[grid1].sharedBoundaryFlag(side1,dir1);
573 int share2= cg[grid2].sharedBoundaryFlag(side2,dir2);
575 int bc1=cg[grid1].boundaryCondition(side1,dir1);
576 int bc2=cg[grid2].boundaryCondition(side2,dir2);
577 if( share1==share2 && share1!=0 && share2!=0 && bc1>0 && bc2>0 )