Corrected spelling in comments

Resolves bug-report https://bugs.openfoam.org/view.php?id=2844
This commit is contained in:
Henry Weller
2018-02-13 20:39:56 +00:00
parent 6a417d4a93
commit fe1fade8cb
182 changed files with 1242 additions and 1244 deletions

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -61,7 +61,7 @@ Description
CR: Drag tensor (1/m) CR: Drag tensor (1/m)
CT: Turbulence generation parameter (1/m) CT: Turbulence generation parameter (1/m)
Nv: Number of obstacles in cell per unit volume (m^-2) Nv: Number of obstacles in cell per unit volume (m^-2)
nsv: Tensor whose diagonal indicates the number to substract from nsv: Tensor whose diagonal indicates the number to subtract from
Nv to get the number of obstacles crossing the flow in each Nv to get the number of obstacles crossing the flow in each
direction. direction.

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2013 OpenFOAM Foundation \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -26,7 +26,7 @@ Class
Description Description
Contact-angle boundary condition for multi-phase interface-capturing Contact-angle boundary condition for multi-phase interface-capturing
simulations. Used in conjuction with multiphaseMixture. simulations. Used in conjunction with multiphaseMixture.
SourceFiles SourceFiles
alphaContactAngleFvPatchScalarField.C alphaContactAngleFvPatchScalarField.C
@ -65,7 +65,7 @@ public:
//- Limiting advancing contact angle //- Limiting advancing contact angle
scalar thetaA_; scalar thetaA_;
//- Limiting receeding contact angle //- Limiting receding contact angle
scalar thetaR_; scalar thetaR_;
@ -100,7 +100,7 @@ public:
else return 180.0 - thetaA_; else return 180.0 - thetaA_;
} }
//- Return the limiting receeding contact angle //- Return the limiting receding contact angle
scalar thetaR(bool matched=true) const scalar thetaR(bool matched=true) const
{ {
if (matched) return thetaR_; if (matched) return thetaR_;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -26,7 +26,7 @@ Class
Description Description
Contact-angle boundary condition for multi-phase interface-capturing Contact-angle boundary condition for multi-phase interface-capturing
simulations. Used in conjuction with multiphaseSystem. simulations. Used in conjunction with multiphaseSystem.
SourceFiles SourceFiles
alphaContactAngleFvPatchScalarField.C alphaContactAngleFvPatchScalarField.C
@ -65,7 +65,7 @@ public:
//- Limiting advancing contact angle //- Limiting advancing contact angle
scalar thetaA_; scalar thetaA_;
//- Limiting receeding contact angle //- Limiting receding contact angle
scalar thetaR_; scalar thetaR_;
@ -100,7 +100,7 @@ public:
else return 180.0 - thetaA_; else return 180.0 - thetaA_;
} }
//- Return the limiting receeding contact angle //- Return the limiting receding contact angle
scalar thetaR(bool matched=true) const scalar thetaR(bool matched=true) const
{ {
if (matched) return thetaR_; if (matched) return thetaR_;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -26,7 +26,7 @@ Class
Description Description
Contact-angle boundary condition for multi-phase interface-capturing Contact-angle boundary condition for multi-phase interface-capturing
simulations. Used in conjuction with multiphaseMixture. simulations. Used in conjunction with multiphaseMixture.
SourceFiles SourceFiles
alphaContactAngleFvPatchScalarField.C alphaContactAngleFvPatchScalarField.C
@ -65,7 +65,7 @@ public:
//- Limiting advancing contact angle //- Limiting advancing contact angle
scalar thetaA_; scalar thetaA_;
//- Limiting receeding contact angle //- Limiting receding contact angle
scalar thetaR_; scalar thetaR_;
@ -100,7 +100,7 @@ public:
else return 180.0 - thetaA_; else return 180.0 - thetaA_;
} }
//- Return the limiting receeding contact angle //- Return the limiting receding contact angle
scalar thetaR(bool matched=true) const scalar thetaR(bool matched=true) const
{ {
if (matched) return thetaR_; if (matched) return thetaR_;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2015-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2015-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -27,7 +27,7 @@ Class
Description Description
Class which represents a phase with a thermodynamic model. Provides access Class which represents a phase with a thermodynamic model. Provides access
to the thermodynamic variables. Note that the thermo model itself is not to the thermodynamic variables. Note that the thermo model itself is not
returned as this class could be substituted in the hierarcy for one which returned as this class could be substituted in the hierarchy for one which
mirrors the functionality, but does not include a thermo model; an mirrors the functionality, but does not include a thermo model; an
incompressible phase model, for example. incompressible phase model, for example.

View File

@ -257,10 +257,10 @@ class populationBalanceModel
//- Drift rate //- Drift rate
autoPtr<volScalarField> driftRate_; autoPtr<volScalarField> driftRate_;
//- Ratio between sucessive representative volumes //- Ratio between successive representative volumes
autoPtr<volScalarField> rx_; autoPtr<volScalarField> rx_;
//- Ratio between sucessive class widths //- Ratio between successive class widths
autoPtr<volScalarField> rdx_; autoPtr<volScalarField> rdx_;
//- Zeroeth order models //- Zeroeth order models

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -26,7 +26,7 @@ Class
Description Description
Contact-angle boundary condition for multi-phase interface-capturing Contact-angle boundary condition for multi-phase interface-capturing
simulations. Used in conjuction with multiphaseSystem. simulations. Used in conjunction with multiphaseSystem.
SourceFiles SourceFiles
alphaContactAngleFvPatchScalarField.C alphaContactAngleFvPatchScalarField.C
@ -65,7 +65,7 @@ public:
//- Limiting advancing contact angle //- Limiting advancing contact angle
scalar thetaA_; scalar thetaA_;
//- Limiting receeding contact angle //- Limiting receding contact angle
scalar thetaR_; scalar thetaR_;
@ -100,7 +100,7 @@ public:
else return 180.0 - thetaA_; else return 180.0 - thetaA_;
} }
//- Return the limiting receeding contact angle //- Return the limiting receding contact angle
scalar thetaR(bool matched=true) const scalar thetaR(bool matched=true) const
{ {
if (matched) return thetaR_; if (matched) return thetaR_;

View File

@ -629,7 +629,7 @@ int main(int argc, char *argv[])
#include "createTime.H" #include "createTime.H"
#include "createPolyMesh.H" #include "createPolyMesh.H"
// If nessecary add oldInternalFaces patch // If necessary add oldInternalFaces patch
label newPatchi = addPatch(mesh, "oldInternalFaces"); label newPatchi = addPatch(mesh, "oldInternalFaces");

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -927,7 +927,7 @@ int main(int argc, char *argv[])
fluentGroupToFoamPatch.insert("fan"); fluentGroupToFoamPatch.insert("fan");
// Create intial empty polyMesh // Create initial empty polyMesh
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
polyMesh mesh polyMesh mesh

View File

@ -13,7 +13,7 @@ Notes for fluentMeshToFoam with zone preservation
Writes all regions to cellZones preserving Fluent names Writes all regions to cellZones preserving Fluent names
Writes all region internal face to faceZones preserving Fluent names Writes all region internal face to faceZones preserving Fluent names
lines: 1545 - 1667 lines: 1545 - 1667
Zones are usefull for porous media and MRF calculations Zones are useful for porous media and MRF calculations
2. Zone Access 2. Zone Access
- Zones are simple lists of label lists that can be accessed from polyMesh - Zones are simple lists of label lists that can be accessed from polyMesh

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -1184,7 +1184,7 @@ int main(int argc, char *argv[])
patchPhysicalTypes patchPhysicalTypes
); );
//dont write mesh yet, otherwise preservePatchTypes will be broken //don't write mesh yet, otherwise preservePatchTypes will be broken
//and zones wont be written //and zones wont be written
//checkmesh done after patch addition as well //checkmesh done after patch addition as well
Info<< "done." << endl; Info<< "done." << endl;
@ -1193,7 +1193,7 @@ int main(int argc, char *argv[])
Info<< endl << "Building boundary and internal patches." << endl; Info<< endl << "Building boundary and internal patches." << endl;
//adding patches after mesh construction allows topological checks //adding patches after mesh construction allows topological checks
//on whether a patch is internal or external, something fluent //on whether a patch is internal or external, something fluent
//doesnt seem to mind //doesn't seem to mind
// Make boundary patches // Make boundary patches

View File

@ -363,7 +363,7 @@ if
if (pFaces[LINER][0].size() != newLinerFaces.size()) if (pFaces[LINER][0].size() != newLinerFaces.size())
{ {
Info<< "Transfered " << pFaces[LINER][0].size() - newLinerFaces.size() Info<< "Transferred " << pFaces[LINER][0].size() - newLinerFaces.size()
<< " faces from liner region to cylinder head" << endl; << " faces from liner region to cylinder head" << endl;
pFaces[LINER][0] = newLinerFaces; pFaces[LINER][0] = newLinerFaces;
} }
@ -392,7 +392,7 @@ if
if (pFaces[CYLINDERHEAD][0].size() != newCylinderHeadFaces.size()) if (pFaces[CYLINDERHEAD][0].size() != newCylinderHeadFaces.size())
{ {
Info<< "Transfered faces from cylinder-head region to linder" << endl; Info<< "Transferred faces from cylinder-head region to linder" << endl;
pFaces[CYLINDERHEAD][0] = newCylinderHeadFaces; pFaces[CYLINDERHEAD][0] = newCylinderHeadFaces;
} }
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2013-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2013-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -126,7 +126,7 @@ public:
//- Square of span //- Square of span
scalar span2_; scalar span2_;
//- Minumum edge-length of the cell size below which protusions //- Minimum edge-length of the cell size below which protusions
// through the surface are not split // through the surface are not split
scalar minEdgeLen_; scalar minEdgeLen_;
@ -140,7 +140,7 @@ public:
//- Square of maxNotchLen //- Square of maxNotchLen
scalar maxNotchLen2_; scalar maxNotchLen2_;
//- The minimum distance alowed between a dual-cell vertex //- The minimum distance allowed between a dual-cell vertex
// and the surface before a point-pair is introduced // and the surface before a point-pair is introduced
scalar minNearPointDist_; scalar minNearPointDist_;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -106,7 +106,7 @@ class backgroundMeshDecomposition
//- Random number generator //- Random number generator
Random& rndGen_; Random& rndGen_;
//- Mesh stored on for this processor, specifiying the domain that it //- Mesh stored on for this processor, specifying the domain that it
// is responsible for. // is responsible for.
fvMesh mesh_; fvMesh mesh_;

View File

@ -532,7 +532,7 @@ void Foam::conformalVoronoiMesh::createExternalEdgePointGroup
); );
// Insert the slave points by reflecting refPt in both faces. // Insert the slave points by reflecting refPt in both faces.
// with each slave refering to the master // with each slave referring to the master
Foam::point reflectedA = refPt + 2*ppDist*nA; Foam::point reflectedA = refPt + 2*ppDist*nA;
pts.append pts.append

View File

@ -460,7 +460,7 @@ void syncPoints
} }
//- Note: hasTransformation is only used for warning messages so //- Note: hasTransformation is only used for warning messages so
// reduction not strictly nessecary. // reduction not strictly necessary.
//reduce(hasTransformation, orOp<bool>()); //reduce(hasTransformation, orOp<bool>());
// Synchronize multiple shared points. // Synchronize multiple shared points.

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -94,13 +94,13 @@ public:
return mirrorMeshPtr_(); return mirrorMeshPtr_();
} }
//- Mirrorred to original cell //- Mirrored to original cell
const labelList& cellMap() const const labelList& cellMap() const
{ {
return cellMapPtr_(); return cellMapPtr_();
} }
//- Mirrorred to original point //- Mirrored to original point
const labelList& pointMap() const const labelList& pointMap() const
{ {
return pointMapPtr_(); return pointMapPtr_();

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -81,7 +81,7 @@ int main(int argc, char *argv[])
// Set the precision of the points data to 10 // Set the precision of the points data to 10
IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision())); IOstream::defaultPrecision(max(10u, IOstream::defaultPrecision()));
// Generate the mirrorred mesh // Generate the mirrored mesh
const fvMesh& mMesh = mesh.mirrorMesh(); const fvMesh& mMesh = mesh.mirrorMesh();
const_cast<fvMesh&>(mMesh).setInstance(mesh.facesInstance()); const_cast<fvMesh&>(mMesh).setInstance(mesh.facesInstance());

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -441,7 +441,7 @@ int main(int argc, char *argv[])
const word& name = sprayFields[fieldi]; const word& name = sprayFields[fieldi];
// Note: try the various field types. Make sure to // Note: try the various field types. Make sure to
// exit once sucessful conversion to avoid re-read // exit once successful conversion to avoid re-read
// converted file. // converted file.
if if

View File

@ -383,7 +383,7 @@ int main(int argc, char *argv[])
} }
} }
} }
else if (nProcs && !region) else if (nProcs && !region && !decomposeFieldsOnly)
{ {
FatalErrorInFunction FatalErrorInFunction
<< "Case is already decomposed with " << nProcs << "Case is already decomposed with " << nProcs

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -570,7 +570,7 @@ int main(int argc, char *argv[])
// Create 0 sized mesh to do all the generation of zero sized // Create 0 sized mesh to do all the generation of zero sized
// fields on processors that have zero sized meshes. Note that this is // fields on processors that have zero sized meshes. Note that this is
// only nessecary on master but since polyMesh construction with // only necessary on master but since polyMesh construction with
// Pstream::parRun does parallel comms we have to do it on all // Pstream::parRun does parallel comms we have to do it on all
// processors // processors
autoPtr<fvMeshSubset> subsetterPtr; autoPtr<fvMeshSubset> subsetterPtr;

View File

@ -103,7 +103,7 @@ enum {
XF_RF_DATA_KTC=105, XF_RF_DATA_KTC=105,
XF_RF_DATA_VGS_DTRM=106, XF_RF_DATA_VGS_DTRM=106,
XF_RF_DATA_VGF_DTRM=107, XF_RF_DATA_VGF_DTRM=107,
XF_RF_DATA_RSTRESS=108, /* V4 reynolds stress model */ XF_RF_DATA_RSTRESS=108, /* V4 reynolds stress model */
XF_RF_DATA_THREAD_RAD_FLUX=109, XF_RF_DATA_THREAD_RAD_FLUX=109,
/* mass absorption term for absorbing porous media model */ /* mass absorption term for absorbing porous media model */
@ -133,12 +133,12 @@ enum {
XF_RF_DATA_TKE_M2=126, XF_RF_DATA_TKE_M2=126,
XF_RF_DATA_TED_M2=127, XF_RF_DATA_TED_M2=127,
XF_RF_DATA_RUU=128, /* V5 reynolds stress model */ XF_RF_DATA_RUU=128, /* V5 reynolds stress model */
XF_RF_DATA_RVV=129, /* V5 reynolds stress model */ XF_RF_DATA_RVV=129, /* V5 reynolds stress model */
XF_RF_DATA_RWW=130, /* V5 reynolds stress model */ XF_RF_DATA_RWW=130, /* V5 reynolds stress model */
XF_RF_DATA_RUV=131, /* V5 reynolds stress model */ XF_RF_DATA_RUV=131, /* V5 reynolds stress model */
XF_RF_DATA_RVW=132, /* V5 reynolds stress model */ XF_RF_DATA_RVW=132, /* V5 reynolds stress model */
XF_RF_DATA_RUW=133, /* V5 reynolds stress model */ XF_RF_DATA_RUW=133, /* V5 reynolds stress model */
XF_RF_DATA_DPMS_EROSION=134, XF_RF_DATA_DPMS_EROSION=134,
XF_RF_DATA_DPMS_ACCRETION=135, XF_RF_DATA_DPMS_ACCRETION=135,
@ -185,9 +185,9 @@ enum {
XF_RF_DATA_WALL_GRID_VELOCITY = 181 , XF_RF_DATA_WALL_GRID_VELOCITY = 181 ,
XF_RF_DATA_SV_T_AUX = 190 , /* auxilliary temperature XF_RF_DATA_SV_T_AUX = 190 , /* auxiliary temperature
for particles */ for particles */
XF_RF_DATA_SV_T_AP_AUX = 191 , /* auxilliary ap XF_RF_DATA_SV_T_AP_AUX = 191 , /* auxiliary ap
coefficient for particles */ coefficient for particles */
XF_RF_DATA_TOTAL_PRESSURE=192, XF_RF_DATA_TOTAL_PRESSURE=192,
XF_RF_DATA_TOTAL_TEMPERATURE=193, XF_RF_DATA_TOTAL_TEMPERATURE=193,
@ -227,18 +227,18 @@ chunk.
XF_RF_DATA_NUT_M1=501, XF_RF_DATA_NUT_M1=501,
XF_RF_DATA_NUT_M2=502, XF_RF_DATA_NUT_M2=502,
XF_RF_DATA_RUU_M1=503, XF_RF_DATA_RUU_M1=503,
XF_RF_DATA_RVV_M1=504, XF_RF_DATA_RVV_M1=504,
XF_RF_DATA_RWW_M1=505, XF_RF_DATA_RWW_M1=505,
XF_RF_DATA_RUV_M1=506, XF_RF_DATA_RUV_M1=506,
XF_RF_DATA_RVW_M1=507, XF_RF_DATA_RVW_M1=507,
XF_RF_DATA_RUW_M1=508, XF_RF_DATA_RUW_M1=508,
XF_RF_DATA_RUU_M2=509, XF_RF_DATA_RUU_M2=509,
XF_RF_DATA_RVV_M2=510, XF_RF_DATA_RVV_M2=510,
XF_RF_DATA_RWW_M2=511, XF_RF_DATA_RWW_M2=511,
XF_RF_DATA_RUV_M2=512, XF_RF_DATA_RUV_M2=512,
XF_RF_DATA_RVW_M2=513, XF_RF_DATA_RVW_M2=513,
XF_RF_DATA_RUW_M2=514, XF_RF_DATA_RUW_M2=514,
XF_RF_DATA_ENERGY_M1=515, XF_RF_DATA_ENERGY_M1=515,
@ -271,9 +271,9 @@ chunk.
EXPAND_50_EQUAL(XF_RF_DATA_UDS_,700), /* user defined scalar */ EXPAND_50_EQUAL(XF_RF_DATA_UDS_,700), /* user defined scalar */
EXPAND_50(XF_RF_DATA_UDS_,_M1=, 750), /* user defined scalar EXPAND_50(XF_RF_DATA_UDS_,_M1=, 750), /* user defined scalar
* at fist time level */ * at fist time level */
EXPAND_50(XF_RF_DATA_UDS_,_M2=, 800), /* user defined scalar EXPAND_50(XF_RF_DATA_UDS_,_M2=, 800), /* user defined scalar
* at second time level */ * at second time level */
XF_RF_DATA_GRANULAR_PRESSURE=910, XF_RF_DATA_GRANULAR_PRESSURE=910,
XF_RF_DATA_GRANULAR_PRESSURE_M1=0,/* never stored but symbol is XF_RF_DATA_GRANULAR_PRESSURE_M1=0,/* never stored but symbol is
required */ required */

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -366,7 +366,7 @@ int main(int argc, char *argv[])
print(" volTensorFields :", Info, vtf); print(" volTensorFields :", Info, vtf);
// Construct pointMesh only if nessecary since constructs edge // Construct pointMesh only if necessary since constructs edge
// addressing (expensive on polyhedral meshes) // addressing (expensive on polyhedral meshes)
if (noPointValues) if (noPointValues)
{ {

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -604,7 +604,7 @@ int main(int argc, char *argv[])
+ vtf.size(); + vtf.size();
// Construct pointMesh only if nessecary since constructs edge // Construct pointMesh only if necessary since constructs edge
// addressing (expensive on polyhedral meshes) // addressing (expensive on polyhedral meshes)
if (noPointValues) if (noPointValues)
{ {

View File

@ -52,22 +52,22 @@ The process for producing a user defined reader is:
Reads FlowScience "flsgrf" flow3d data. Reads FlowScience "flsgrf" flow3d data.
$ENSIGHT6_HOME/ensight62/user_defined_src/readers/flow3d $ENSIGHT6_HOME/ensight62/user_defined_src/readers/flow3d
Reads Tecplot "plt" files. Reads Tecplot "plt" files.
$ENSIGHT6_HOME/ensight62/user_defined_src/readers/tecplot $ENSIGHT6_HOME/ensight62/user_defined_src/readers/tecplot
Reads Common File Format data. Reads Common File Format data.
$ENSIGHT6_HOME/ensight62/user_defined_src/readers/cff $ENSIGHT6_HOME/ensight62/user_defined_src/readers/cff
Reads Cobalt grid and picture/restart file data. Reads Cobalt grid and picture/restart file data.
$ENSIGHT6_HOME/ensight62/user_defined_src/readers/cobalt $ENSIGHT6_HOME/ensight62/user_defined_src/readers/cobalt
You may find it useful to place your library source in this area as You may find it useful to place your library source in this area as
well, but are not limited to this location. well, but are not limited to this location.
* ===> The descriptions of each library routine and the order that the * ===> The descriptions of each library routine and the order that the
routines are called, which is provided in this file, along with routines are called, which is provided in this file, along with
the example libraries, should make it possible for you to produce the example libraries, should make it possible for you to produce
code for your own data reader. code for your own data reader.
2. Produce the dynamic shared library. 2. Produce the dynamic shared library.
@ -77,7 +77,7 @@ The process for producing a user defined reader is:
for each machine type. Operating system level differences could cause for each machine type. Operating system level differences could cause
you to have to modify these makefiles slightly, but the general you to have to modify these makefiles slightly, but the general
process is very straightforward. Note that for the SGI environment you process is very straightforward. Note that for the SGI environment you
must compile with the following flags to ensure compatability with must compile with the following flags to ensure compatibility with
the EnSight server: Irix_5.3 -mips1 the EnSight server: Irix_5.3 -mips1
Irix_6.2 -mips2 Irix_6.2 -mips2
Irix_6.5_n32 -mips3 Irix_6.5_n32 -mips3
@ -139,11 +139,11 @@ The process for producing a user defined reader is:
You can use any of the other provided readers by changing this variable. You can use any of the other provided readers by changing this variable.
For example, to use the dytran reader: For example, to use the dytran reader:
setenv ENSIGHT6_READER dytran setenv ENSIGHT6_READER dytran
Thus, you can use your reader in the same way. If you provided "mydata", Thus, you can use your reader in the same way. If you provided "mydata",
change ENSIGHT6_READER to: change ENSIGHT6_READER to:
setenv ENSIGHT6_READER mydata setenv ENSIGHT6_READER mydata
@ -187,7 +187,7 @@ Generally Needed for BLOCK data
USERD_get_block_coords_by_component block coordinates USERD_get_block_coords_by_component block coordinates
USERD_get_block_iblanking block iblanking values USERD_get_block_iblanking block iblanking values
USERD_get_block_scalar_values block scalar variables USERD_get_block_scalar_values block scalar variables
USERD_get_block_vector_values_by_component block vector variables USERD_get_block_vector_values_by_component block vector variables
Generally needed for either or both kinds of data Generally needed for either or both kinds of data
@ -223,7 +223,7 @@ Order Routines are called
The various main operations are given basically in the order they will The various main operations are given basically in the order they will
be performed. Within each operation, the order the routines will be be performed. Within each operation, the order the routines will be
called is given. called is given.
1. Setting name in the gui, and specifying one or two input fields 1. Setting name in the gui, and specifying one or two input fields
@ -254,7 +254,7 @@ called is given.
USERD_get_number_of_variables USERD_get_number_of_variables
USERD_get_variable_info USERD_get_variable_info
5. Part building (per part created) 5. Part building (per part created)
USERD_set_time_step USERD_set_time_step
@ -269,12 +269,12 @@ called is given.
dialog is closed) dialog is closed)
6. Loading Variables 6. Loading Variables
constants: constants:
--------- ---------
USERD_set_time_step USERD_set_time_step
USERD_get_constant_value USERD_get_constant_value
scalars: scalars:
------- -------
USERD_get_description_lines USERD_get_description_lines
@ -309,7 +309,7 @@ called is given.
USERD_get_element_ids_for_part USERD_get_element_ids_for_part
USERD_get_block_iblanking USERD_get_block_iblanking
USERD_get_block_coords_by_component USERD_get_block_coords_by_component
----------------------- -----------------------
@ -319,7 +319,7 @@ Detailed Specifications
Include files: Include files:
-------------- --------------
The following header file is required in any file containing these library The following header file is required in any file containing these library
routines. routines.
#include "global_extern.h" #include "global_extern.h"
@ -514,7 +514,7 @@ USERD_get_block_scalar_values
for each node or element. for each node or element.
Array will have been allocated: Array will have been allocated:
if Z_PER_NODE: if Z_PER_NODE:
i*j*k for the block long i*j*k for the block long
@ -573,7 +573,7 @@ USERD_get_block_vector_values_by_component
component value for each node or element. component value for each node or element.
Array will have been allocated: Array will have been allocated:
if Z_PER_NODE: if Z_PER_NODE:
i*j*k for the block long i*j*k for the block long
@ -680,7 +680,7 @@ USERD_get_dataset_query_file_info
(Typically obtained with a call to the (Typically obtained with a call to the
"stat" system routine) "stat" system routine)
qfiles[].timemod = The time the file was last modified qfiles[].timemod = The time the file was last modified
(Z_MAXTIMLEN is the dimensioned length (Z_MAXTIMLEN is the dimensioned length
of this string) of this string)
(Typically obtained with a call to the (Typically obtained with a call to the
@ -783,7 +783,7 @@ USERD_get_element_connectivities_for_part
conn_array[Z_TRI03][25][3] conn_array[Z_TRI03][25][3]
conn_array[Z_QUA04][100][4] conn_array[Z_QUA04][100][4]
conn_array[Z_HEX08][30][8] conn_array[Z_HEX08][30][8]
Notes: Notes:
----- -----
* Not called unless Num_unstructured_parts is > 0 * Not called unless Num_unstructured_parts is > 0
@ -818,7 +818,7 @@ USERD_get_element_connectivities_for_part
And conn_array here as follows: And conn_array here as follows:
Triangle Connectivity Triangle Connectivity
-------- ------------ -------- ------------
T1 conn_array[Z_TRI03][0][0] = 1 T1 conn_array[Z_TRI03][0][0] = 1
@ -913,7 +913,7 @@ USERD_get_element_label_status
on a part by part basis, if TRUE status is returned here. on a part by part basis, if TRUE status is returned here.
For structured parts, EnSight will assign ids if you return a For structured parts, EnSight will assign ids if you return a
status of TRUE here. You cannot assign them youself!! status of TRUE here. You cannot assign them yourself!!
@ -983,7 +983,7 @@ USERD_get_global_coords
And conn_array in USERD_get_element_connectivities_for_part And conn_array in USERD_get_element_connectivities_for_part
as follows: as follows:
Triangle Connectivity Triangle Connectivity
-------- ------------ -------- ------------
T1 conn_array[Z_TRI03][0][0] = 1 T1 conn_array[Z_TRI03][0][0] = 1
@ -1037,7 +1037,7 @@ USERD_get_name_of_reader
Specification: Specification:
------------- -------------
int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME], int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME],
int *two_fields) int *two_fields)
Returns: Returns:
------- -------
@ -1050,8 +1050,8 @@ USERD_get_name_of_reader
(max length is Z_MAX_USERD_NAME, which is 20) (max length is Z_MAX_USERD_NAME, which is 20)
(OUT) *two_fields = FALSE if only one data field required (OUT) *two_fields = FALSE if only one data field required
in the data dialog of EnSight. in the data dialog of EnSight.
TRUE if two data fields required. TRUE if two data fields required.
Notes: Notes:
----- -----
@ -1305,7 +1305,7 @@ USERD_get_part_build_info
The numbers provided here are the ones by The numbers provided here are the ones by
which the parts will be referred to in any which the parts will be referred to in any
of the other routines which receive a part of the other routines which receive a part
number or block number as an argument!! number or block number as an argument!!
******************************************** ********************************************
(Array will have been allocated (Array will have been allocated
@ -1421,7 +1421,7 @@ USERD_get_scalar_values
--------- ---------
(IN) which_scalar = The variable number (of scalar type) (IN) which_scalar = The variable number (of scalar type)
(IN) which_part (IN) which_part
if Z_PER_NODE: Not used if Z_PER_NODE: Not used
@ -1433,7 +1433,7 @@ USERD_get_scalar_values
if Z_PER_ELEM: = The element type if Z_PER_ELEM: = The element type
(OUT) scalar_array (OUT) scalar_array
if Z_PER_NODE: = 1D array containing scalar values if Z_PER_NODE: = 1D array containing scalar values
for each node. for each node.
@ -1443,7 +1443,7 @@ USERD_get_scalar_values
if Z_PER_ELEM: = 1d array containing scalar values for if Z_PER_ELEM: = 1d array containing scalar values for
each element of a particular part and type. each element of a particular part and type.
(Array will have been allocated (Array will have been allocated
number_of_elements[which_part][which_type] number_of_elements[which_part][which_type]
long. See USERD_get_part_build_info) long. See USERD_get_part_build_info)
@ -1590,7 +1590,7 @@ USERD_get_variable_value_at_specific
If Z_PER_NODE: If Z_PER_NODE:
= The node number. This is not the id, but is = The node number. This is not the id, but is
the index of the global node the index of the global node
list (1 based), or the block's list (1 based), or the block's
node list (1 based). node list (1 based).
@ -1683,7 +1683,7 @@ USERD_get_vector_values
--------- ---------
(IN) which_vector = The variable number (IN) which_vector = The variable number
(IN) which_part (IN) which_part
if Z_PER_NODE: Not used if Z_PER_NODE: Not used
@ -1695,7 +1695,7 @@ USERD_get_vector_values
if Z_PER_ELEM: = The element type if Z_PER_ELEM: = The element type
(OUT) vector_array (OUT) vector_array
if Z_PER_NODE: = 1D array containing vector values if Z_PER_NODE: = 1D array containing vector values
for each node. for each node.
@ -1719,7 +1719,7 @@ USERD_get_vector_values
if Z_PER_ELEM: = 1d array containing vector values for if Z_PER_ELEM: = 1d array containing vector values for
each element of a particular part and type. each element of a particular part and type.
(Array will have been allocated (Array will have been allocated
3 by number_of_elements[which_part][which_type] 3 by number_of_elements[which_part][which_type]
long. See USERD_get_part_build_info) long. See USERD_get_part_build_info)
@ -1776,8 +1776,8 @@ USERD_set_filenames
field of the data dialog. field of the data dialog.
(IN) filename_2 = the filename entered into the result (IN) filename_2 = the filename entered into the result
field of the data dialog. field of the data dialog.
(If the two_fields flag in USERD_get_name_of_reader (If the two_fields flag in USERD_get_name_of_reader
is FALSE, this will be null string) is FALSE, this will be null string)
(IN) the_path = the path info from the data dialog. (IN) the_path = the path info from the data dialog.
Note: filename_1 and filename_2 have already Note: filename_1 and filename_2 have already
had the path prepended to them. This had the path prepended to them. This

View File

@ -52,22 +52,22 @@ The process for producing a user defined reader is:
Reads FlowScience "flsgrf" flow3d data. Reads FlowScience "flsgrf" flow3d data.
$ENSIGHT6_HOME/ensight62/user_defined_src/readers/flow3d $ENSIGHT6_HOME/ensight62/user_defined_src/readers/flow3d
Reads Tecplot "plt" files. Reads Tecplot "plt" files.
$ENSIGHT6_HOME/ensight62/user_defined_src/readers/tecplot $ENSIGHT6_HOME/ensight62/user_defined_src/readers/tecplot
Reads Common File Format data. Reads Common File Format data.
$ENSIGHT6_HOME/ensight62/user_defined_src/readers/cff $ENSIGHT6_HOME/ensight62/user_defined_src/readers/cff
Reads Cobalt grid and picture/restart file data. Reads Cobalt grid and picture/restart file data.
$ENSIGHT6_HOME/ensight62/user_defined_src/readers/cobalt $ENSIGHT6_HOME/ensight62/user_defined_src/readers/cobalt
You may find it useful to place your library source in this area as You may find it useful to place your library source in this area as
well, but are not limited to this location. well, but are not limited to this location.
* ===> The descriptions of each library routine and the order that the * ===> The descriptions of each library routine and the order that the
routines are called, which is provided in this file, along with routines are called, which is provided in this file, along with
the example libraries, should make it possible for you to produce the example libraries, should make it possible for you to produce
code for your own data reader. code for your own data reader.
2. Produce the dynamic shared library. 2. Produce the dynamic shared library.
@ -77,7 +77,7 @@ The process for producing a user defined reader is:
for each machine type. Operating system level differences could cause for each machine type. Operating system level differences could cause
you to have to modify these makefiles slightly, but the general you to have to modify these makefiles slightly, but the general
process is very straightforward. Note that for the SGI environment you process is very straightforward. Note that for the SGI environment you
must compile with the following flags to ensure compatability with must compile with the following flags to ensure compatibility with
the EnSight server: Irix_5.3 -mips1 the EnSight server: Irix_5.3 -mips1
Irix_6.2 -mips2 Irix_6.2 -mips2
Irix_6.5_n32 -mips3 Irix_6.5_n32 -mips3
@ -139,11 +139,11 @@ The process for producing a user defined reader is:
You can use any of the other provided readers by changing this variable. You can use any of the other provided readers by changing this variable.
For example, to use the dytran reader: For example, to use the dytran reader:
setenv ENSIGHT6_READER dytran setenv ENSIGHT6_READER dytran
Thus, you can use your reader in the same way. If you provided "mydata", Thus, you can use your reader in the same way. If you provided "mydata",
change ENSIGHT6_READER to: change ENSIGHT6_READER to:
setenv ENSIGHT6_READER mydata setenv ENSIGHT6_READER mydata
@ -187,7 +187,7 @@ Generally Needed for BLOCK data
USERD_get_block_coords_by_component block coordinates USERD_get_block_coords_by_component block coordinates
USERD_get_block_iblanking block iblanking values USERD_get_block_iblanking block iblanking values
USERD_get_block_scalar_values block scalar variables USERD_get_block_scalar_values block scalar variables
USERD_get_block_vector_values_by_component block vector variables USERD_get_block_vector_values_by_component block vector variables
Generally needed for either or both kinds of data Generally needed for either or both kinds of data
@ -223,7 +223,7 @@ Order Routines are called
The various main operations are given basically in the order they will The various main operations are given basically in the order they will
be performed. Within each operation, the order the routines will be be performed. Within each operation, the order the routines will be
called is given. called is given.
1. Setting name in the gui, and specifying one or two input fields 1. Setting name in the gui, and specifying one or two input fields
@ -254,7 +254,7 @@ called is given.
USERD_get_number_of_variables USERD_get_number_of_variables
USERD_get_variable_info USERD_get_variable_info
5. Part building (per part created) 5. Part building (per part created)
USERD_set_time_step USERD_set_time_step
@ -269,12 +269,12 @@ called is given.
dialog is closed) dialog is closed)
6. Loading Variables 6. Loading Variables
constants: constants:
--------- ---------
USERD_set_time_step USERD_set_time_step
USERD_get_constant_value USERD_get_constant_value
scalars: scalars:
------- -------
USERD_get_description_lines USERD_get_description_lines
@ -309,7 +309,7 @@ called is given.
USERD_get_element_ids_for_part USERD_get_element_ids_for_part
USERD_get_block_iblanking USERD_get_block_iblanking
USERD_get_block_coords_by_component USERD_get_block_coords_by_component
----------------------- -----------------------
@ -319,7 +319,7 @@ Detailed Specifications
Include files: Include files:
-------------- --------------
The following header file is required in any file containing these library The following header file is required in any file containing these library
routines. routines.
#include "global_extern.h" #include "global_extern.h"
@ -514,7 +514,7 @@ USERD_get_block_scalar_values
for each node or element. for each node or element.
Array will have been allocated: Array will have been allocated:
if Z_PER_NODE: if Z_PER_NODE:
i*j*k for the block long i*j*k for the block long
@ -573,7 +573,7 @@ USERD_get_block_vector_values_by_component
component value for each node or element. component value for each node or element.
Array will have been allocated: Array will have been allocated:
if Z_PER_NODE: if Z_PER_NODE:
i*j*k for the block long i*j*k for the block long
@ -680,7 +680,7 @@ USERD_get_dataset_query_file_info
(Typically obtained with a call to the (Typically obtained with a call to the
"stat" system routine) (Is a long) "stat" system routine) (Is a long)
qfiles[].timemod = The time the file was last modified qfiles[].timemod = The time the file was last modified
(Z_MAXTIMLEN is the dimensioned length (Z_MAXTIMLEN is the dimensioned length
of this string) of this string)
(Typically obtained with a call to the (Typically obtained with a call to the
@ -783,7 +783,7 @@ USERD_get_element_connectivities_for_part
conn_array[Z_TRI03][25][3] conn_array[Z_TRI03][25][3]
conn_array[Z_QUA04][100][4] conn_array[Z_QUA04][100][4]
conn_array[Z_HEX08][30][8] conn_array[Z_HEX08][30][8]
Notes: Notes:
----- -----
* Not called unless Num_unstructured_parts is > 0 * Not called unless Num_unstructured_parts is > 0
@ -818,7 +818,7 @@ USERD_get_element_connectivities_for_part
And conn_array here as follows: And conn_array here as follows:
Triangle Connectivity Triangle Connectivity
-------- ------------ -------- ------------
T1 conn_array[Z_TRI03][0][0] = 1 T1 conn_array[Z_TRI03][0][0] = 1
@ -913,7 +913,7 @@ USERD_get_element_label_status
on a part by part basis, if TRUE status is returned here. on a part by part basis, if TRUE status is returned here.
For structured parts, EnSight will assign ids if you return a For structured parts, EnSight will assign ids if you return a
status of TRUE here. You cannot assign them youself!! status of TRUE here. You cannot assign them yourself!!
@ -983,7 +983,7 @@ USERD_get_global_coords
And conn_array in USERD_get_element_connectivities_for_part And conn_array in USERD_get_element_connectivities_for_part
as follows: as follows:
Triangle Connectivity Triangle Connectivity
-------- ------------ -------- ------------
T1 conn_array[Z_TRI03][0][0] = 1 T1 conn_array[Z_TRI03][0][0] = 1
@ -1037,7 +1037,7 @@ USERD_get_name_of_reader
Specification: Specification:
------------- -------------
int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME], int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME],
int *two_fields) int *two_fields)
Returns: Returns:
------- -------
@ -1050,8 +1050,8 @@ USERD_get_name_of_reader
(max length is Z_MAX_USERD_NAME, which is 20) (max length is Z_MAX_USERD_NAME, which is 20)
(OUT) *two_fields = FALSE if only one data field required (OUT) *two_fields = FALSE if only one data field required
in the data dialog of EnSight. in the data dialog of EnSight.
TRUE if two data fields required. TRUE if two data fields required.
Notes: Notes:
----- -----
@ -1305,7 +1305,7 @@ USERD_get_part_build_info
The numbers provided here are the ones by The numbers provided here are the ones by
which the parts will be referred to in any which the parts will be referred to in any
of the other routines which receive a part of the other routines which receive a part
number or block number as an argument!! number or block number as an argument!!
******************************************** ********************************************
(Array will have been allocated (Array will have been allocated
@ -1421,7 +1421,7 @@ USERD_get_scalar_values
--------- ---------
(IN) which_scalar = The variable number (of scalar type) (IN) which_scalar = The variable number (of scalar type)
(IN) which_part (IN) which_part
if Z_PER_NODE: Not used if Z_PER_NODE: Not used
@ -1433,7 +1433,7 @@ USERD_get_scalar_values
if Z_PER_ELEM: = The element type if Z_PER_ELEM: = The element type
(OUT) scalar_array (OUT) scalar_array
if Z_PER_NODE: = 1D array containing scalar values if Z_PER_NODE: = 1D array containing scalar values
for each node. for each node.
@ -1443,7 +1443,7 @@ USERD_get_scalar_values
if Z_PER_ELEM: = 1d array containing scalar values for if Z_PER_ELEM: = 1d array containing scalar values for
each element of a particular part and type. each element of a particular part and type.
(Array will have been allocated (Array will have been allocated
number_of_elements[which_part][which_type] number_of_elements[which_part][which_type]
long. See USERD_get_part_build_info) long. See USERD_get_part_build_info)
@ -1590,7 +1590,7 @@ USERD_get_variable_value_at_specific
If Z_PER_NODE: If Z_PER_NODE:
= The node number. This is not the id, but is = The node number. This is not the id, but is
the index of the global node the index of the global node
list (1 based), or the block's list (1 based), or the block's
node list (1 based). node list (1 based).
@ -1683,7 +1683,7 @@ USERD_get_vector_values
--------- ---------
(IN) which_vector = The variable number (IN) which_vector = The variable number
(IN) which_part (IN) which_part
if Z_PER_NODE: Not used if Z_PER_NODE: Not used
@ -1695,7 +1695,7 @@ USERD_get_vector_values
if Z_PER_ELEM: = The element type if Z_PER_ELEM: = The element type
(OUT) vector_array (OUT) vector_array
if Z_PER_NODE: = 1D array containing vector values if Z_PER_NODE: = 1D array containing vector values
for each node. for each node.
@ -1719,7 +1719,7 @@ USERD_get_vector_values
if Z_PER_ELEM: = 1d array containing vector values for if Z_PER_ELEM: = 1d array containing vector values for
each element of a particular part and type. each element of a particular part and type.
(Array will have been allocated (Array will have been allocated
3 by number_of_elements[which_part][which_type] 3 by number_of_elements[which_part][which_type]
long. See USERD_get_part_build_info) long. See USERD_get_part_build_info)
@ -1776,8 +1776,8 @@ USERD_set_filenames
field of the data dialog. field of the data dialog.
(IN) filename_2 = the filename entered into the result (IN) filename_2 = the filename entered into the result
field of the data dialog. field of the data dialog.
(If the two_fields flag in USERD_get_name_of_reader (If the two_fields flag in USERD_get_name_of_reader
is FALSE, this will be null string) is FALSE, this will be null string)
(IN) the_path = the path info from the data dialog. (IN) the_path = the path info from the data dialog.
Note: filename_1 and filename_2 have already Note: filename_1 and filename_2 have already
had the path prepended to them. This had the path prepended to them. This

View File

@ -14,7 +14,7 @@ You should consider it if:
- you want to provide your own "border" elements (as opposed to EnSight's - you want to provide your own "border" elements (as opposed to EnSight's
computation of them) computation of them)
As an indication of the differences that might be realized in efficency, As an indication of the differences that might be realized in efficiency,
consider the following comparison on an unstructured model consisting of: consider the following comparison on an unstructured model consisting of:
1,639,058 nodes 1,639,058 nodes
@ -95,7 +95,7 @@ EnSight must do a fair amount of work to get data provided in the manner
described above into the form that it uses internally. There is mapping that described above into the form that it uses internally. There is mapping that
has to be setup and maintained between the global arrays and the local part has to be setup and maintained between the global arrays and the local part
arrays so that updating over time can be accomplished efficiently. There is arrays so that updating over time can be accomplished efficiently. There is
hashing that is required in order to deal efficently with node ids. hashing that is required in order to deal efficiently with node ids.
All of this leads to a considerable amount of temporary memory and processing, All of this leads to a considerable amount of temporary memory and processing,
in order to get a model read into EnSight. in order to get a model read into EnSight.
@ -115,7 +115,7 @@ API 2.0 deals with:
API 2.0 requires that the coordinates and corresponding nodal variables be API 2.0 requires that the coordinates and corresponding nodal variables be
provided per part. This eliminates the global to local mapping with all its provided per part. This eliminates the global to local mapping with all its
associated temporary memory and processing time. The connectivity of the associated temporary memory and processing time. The connectivity of the
elements in each part reference the node indicies of its own (one-based) part elements in each part reference the node indices of its own (one-based) part
coordinate array. The connectivity of the elements do not reference the nodes coordinate array. The connectivity of the elements do not reference the nodes
according to node ids. Node ids (and element ids for that matter) are purely according to node ids. Node ids (and element ids for that matter) are purely
labels for screen display and for query operations within EnSight. This labels for screen display and for query operations within EnSight. This
@ -354,7 +354,7 @@ USERD_get_element_ids_for_part USERD_get_part_element_ids_by_type
(Required) -> USERD_get_border_availability (Required) -> USERD_get_border_availability
(Can be a dummy) -> USERD_get_border_elements_by_type (Can be a dummy) -> USERD_get_border_elements_by_type
transient model allocation efficency: transient model allocation efficiency:
(Can be a dummy) -> USERD_get_maxsize_info (Can be a dummy) -> USERD_get_maxsize_info
Possible use with Server-of-Servers: Possible use with Server-of-Servers:

View File

@ -49,7 +49,7 @@ type format.
Some of its advantages are:: Some of its advantages are::
* Most intermediate temporary arrays have been eliminated, such that the user * Most intermediate temporary arrays have been eliminated, such that the user
defined routines write directly into internal part structures. This is a defined routines write directly into internal part structures. This is a
considerable improvement in memory use, and improves speed as well since considerable improvement in memory use, and improves speed as well since
far less memory need be allocated, initialized, etc. far less memory need be allocated, initialized, etc.
@ -131,7 +131,7 @@ The process for producing a user defined reader is:
Reads Cobalt grid and picture/restart file data Reads Cobalt grid and picture/restart file data
$ENSIGHT7_HOME/user_defined_src/readers/cobalt $ENSIGHT7_HOME/user_defined_src/readers/cobalt
Reads binary Nastran OP2 data base Reads binary Nastran OP2 data base
$ENSIGHT7_HOME/user_defined_src/readers/nastran $ENSIGHT7_HOME/user_defined_src/readers/nastran
@ -156,10 +156,10 @@ The process for producing a user defined reader is:
You may find it useful to place your library source in this area as You may find it useful to place your library source in this area as
well, but are not limited to this location. well, but are not limited to this location.
* ===> The descriptions of each library routine and the order that the * ===> The descriptions of each library routine and the order that the
routines are called, which is provided in this file, along with routines are called, which is provided in this file, along with
the example libraries, should make it possible for you to produce the example libraries, should make it possible for you to produce
code for your own data reader. code for your own data reader.
2. Produce the dynamic shared library. 2. Produce the dynamic shared library.
@ -207,7 +207,7 @@ The process for producing a user defined reader is:
If you choose to use a different build environment for your reader, If you choose to use a different build environment for your reader,
you should take care to use compatible compilation flags to ensure you should take care to use compatible compilation flags to ensure
compatibilty with the EnSight executables, most notably on the SGI compatibility with the EnSight executables, most notably on the SGI
and HP-UX 11.0 platforms, which should use the following flags: and HP-UX 11.0 platforms, which should use the following flags:
sgi_6.2_o32: -mips2 sgi_6.2_o32: -mips2
@ -301,7 +301,7 @@ The process for producing a user defined reader is:
location, and users can set the ENSIGHT7_READER variable to access them: location, and users can set the ENSIGHT7_READER variable to access them:
setenv ENSIGHT7_READER /usr/local/lib/e7readers setenv ENSIGHT7_READER /usr/local/lib/e7readers
A user working on a new reader may compile the reader and place it in A user working on a new reader may compile the reader and place it in
a directory specified by the library path: a directory specified by the library path:
@ -346,7 +346,7 @@ Generally Needed for BLOCK data
USERD_get_block_coords_by_component block coordinates USERD_get_block_coords_by_component block coordinates
USERD_get_block_iblanking block iblanking values USERD_get_block_iblanking block iblanking values
USERD_get_block_scalar_values block scalar variables USERD_get_block_scalar_values block scalar variables
USERD_get_block_vector_values_by_component block vector variables USERD_get_block_vector_values_by_component block vector variables
Generally needed for either or both kinds of data Generally needed for either or both kinds of data
@ -381,7 +381,7 @@ Order Routines are called
The various main operations are given basically in the order they will The various main operations are given basically in the order they will
be performed. Within each operation, the order the routines will be be performed. Within each operation, the order the routines will be
called is given. called is given.
1. Setting name in the gui, and specifying one or two input fields 1. Setting name in the gui, and specifying one or two input fields
@ -412,7 +412,7 @@ called is given.
USERD_get_number_of_variables USERD_get_number_of_variables
USERD_get_variable_info USERD_get_variable_info
5. Part building (per part created) 5. Part building (per part created)
USERD_set_time_step USERD_set_time_step
@ -427,12 +427,12 @@ called is given.
dialog is closed) dialog is closed)
6. Loading Variables 6. Loading Variables
constants: constants:
--------- ---------
USERD_set_time_step USERD_set_time_step
USERD_get_constant_value USERD_get_constant_value
scalars: scalars:
------- -------
USERD_get_description_lines USERD_get_description_lines
@ -467,7 +467,7 @@ called is given.
USERD_get_element_ids_for_part USERD_get_element_ids_for_part
USERD_get_block_iblanking USERD_get_block_iblanking
USERD_get_block_coords_by_component USERD_get_block_coords_by_component
8. Node or Element queries over time 8. Node or Element queries over time
USERD_get_variable_value_at_specific USERD_get_variable_value_at_specific
@ -675,7 +675,7 @@ USERD_get_block_scalar_values
for each node or element. for each node or element.
Array will have been allocated: Array will have been allocated:
if Z_PER_NODE: if Z_PER_NODE:
i*j*k for the block long i*j*k for the block long
@ -734,7 +734,7 @@ USERD_get_block_vector_values_by_component
component value for each node or element. component value for each node or element.
Array will have been allocated: Array will have been allocated:
if Z_PER_NODE: if Z_PER_NODE:
i*j*k for the block long i*j*k for the block long
@ -841,7 +841,7 @@ USERD_get_dataset_query_file_info
(Typically obtained with a call to the (Typically obtained with a call to the
"stat" system routine) (Is a long) "stat" system routine) (Is a long)
qfiles[].timemod = The time the file was last modified qfiles[].timemod = The time the file was last modified
(Z_MAXTIMLEN is the dimensioned length (Z_MAXTIMLEN is the dimensioned length
of this string) of this string)
(Typically obtained with a call to the (Typically obtained with a call to the
@ -944,7 +944,7 @@ USERD_get_element_connectivities_for_part
conn_array[Z_TRI03][25][3] conn_array[Z_TRI03][25][3]
conn_array[Z_QUA04][100][4] conn_array[Z_QUA04][100][4]
conn_array[Z_HEX08][30][8] conn_array[Z_HEX08][30][8]
Notes: Notes:
----- -----
* Not called unless Num_unstructured_parts is > 0 * Not called unless Num_unstructured_parts is > 0
@ -979,7 +979,7 @@ USERD_get_element_connectivities_for_part
And conn_array here as follows: And conn_array here as follows:
Triangle Connectivity Triangle Connectivity
-------- ------------ -------- ------------
T1 conn_array[Z_TRI03][0][0] = 1 T1 conn_array[Z_TRI03][0][0] = 1
@ -1074,7 +1074,7 @@ USERD_get_element_label_status
on a part by part basis, if TRUE status is returned here. on a part by part basis, if TRUE status is returned here.
For structured parts, EnSight will assign ids if you return a For structured parts, EnSight will assign ids if you return a
status of TRUE here. You cannot assign them youself!! status of TRUE here. You cannot assign them yourself!!
@ -1144,7 +1144,7 @@ USERD_get_global_coords
And conn_array in USERD_get_element_connectivities_for_part And conn_array in USERD_get_element_connectivities_for_part
as follows: as follows:
Triangle Connectivity Triangle Connectivity
-------- ------------ -------- ------------
T1 conn_array[Z_TRI03][0][0] = 1 T1 conn_array[Z_TRI03][0][0] = 1
@ -1198,7 +1198,7 @@ USERD_get_name_of_reader
Specification: Specification:
------------- -------------
int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME], int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME],
int *two_fields) int *two_fields)
Returns: Returns:
------- -------
@ -1211,8 +1211,8 @@ USERD_get_name_of_reader
(max length is Z_MAX_USERD_NAME, which is 20) (max length is Z_MAX_USERD_NAME, which is 20)
(OUT) *two_fields = FALSE if only one data field required (OUT) *two_fields = FALSE if only one data field required
in the data dialog of EnSight. in the data dialog of EnSight.
TRUE if two data fields required. TRUE if two data fields required.
Notes: Notes:
----- -----
@ -1466,7 +1466,7 @@ USERD_get_part_build_info
The numbers provided here are the ones by The numbers provided here are the ones by
which the parts will be referred to in any which the parts will be referred to in any
of the other routines which receive a part of the other routines which receive a part
number or block number as an argument!! number or block number as an argument!!
******************************************** ********************************************
(Array will have been allocated (Array will have been allocated
@ -1582,7 +1582,7 @@ USERD_get_scalar_values
--------- ---------
(IN) which_scalar = The variable number (of scalar type) (IN) which_scalar = The variable number (of scalar type)
(IN) which_part (IN) which_part
if Z_PER_NODE: Not used if Z_PER_NODE: Not used
@ -1594,7 +1594,7 @@ USERD_get_scalar_values
if Z_PER_ELEM: = The element type if Z_PER_ELEM: = The element type
(OUT) scalar_array (OUT) scalar_array
if Z_PER_NODE: = 1D array containing scalar values if Z_PER_NODE: = 1D array containing scalar values
for each node. for each node.
@ -1604,7 +1604,7 @@ USERD_get_scalar_values
if Z_PER_ELEM: = 1d array containing scalar values for if Z_PER_ELEM: = 1d array containing scalar values for
each element of a particular part and type. each element of a particular part and type.
(Array will have been allocated (Array will have been allocated
number_of_elements[which_part][which_type] number_of_elements[which_part][which_type]
long. See USERD_get_part_build_info) long. See USERD_get_part_build_info)
@ -1751,7 +1751,7 @@ USERD_get_variable_value_at_specific
If Z_PER_NODE: If Z_PER_NODE:
= The node number. This is not the id, but is = The node number. This is not the id, but is
the index of the global node the index of the global node
list (1 based), or the block's list (1 based), or the block's
node list (1 based). node list (1 based).
@ -1843,7 +1843,7 @@ USERD_get_vector_values
--------- ---------
(IN) which_vector = The variable number (IN) which_vector = The variable number
(IN) which_part (IN) which_part
if Z_PER_NODE: Not used if Z_PER_NODE: Not used
@ -1855,7 +1855,7 @@ USERD_get_vector_values
if Z_PER_ELEM: = The element type if Z_PER_ELEM: = The element type
(OUT) vector_array (OUT) vector_array
if Z_PER_NODE: = 1D array containing vector values if Z_PER_NODE: = 1D array containing vector values
for each node. for each node.
@ -1879,7 +1879,7 @@ USERD_get_vector_values
if Z_PER_ELEM: = 1D array containing vector values for if Z_PER_ELEM: = 1D array containing vector values for
each element of a particular part and type. each element of a particular part and type.
(Array will have been allocated (Array will have been allocated
3 by number_of_elements[which_part][which_type] 3 by number_of_elements[which_part][which_type]
long. See USERD_get_part_build_info) long. See USERD_get_part_build_info)
@ -1936,8 +1936,8 @@ USERD_set_filenames
field of the data dialog. field of the data dialog.
(IN) filename_2 = the filename entered into the result (IN) filename_2 = the filename entered into the result
field of the data dialog. field of the data dialog.
(If the two_fields flag in USERD_get_name_of_reader (If the two_fields flag in USERD_get_name_of_reader
is FALSE, this will be null string) is FALSE, this will be null string)
(IN) the_path = the path info from the data dialog. (IN) the_path = the path info from the data dialog.
Note: filename_1 and filename_2 have already Note: filename_1 and filename_2 have already
had the path prepended to them. This had the path prepended to them. This
@ -2009,5 +2009,3 @@ USERD_stop_part_building
---- end of doucment ---- ---- end of doucment ----

View File

@ -82,7 +82,7 @@ This file also contains guidance on necessary changes to modify an existing
**************************************************************************** ****************************************************************************
Note: A default dummy_gold reader and an Ensight Gold example of this new 2.0 Note: A default dummy_gold reader and an Ensight Gold example of this new 2.0
user defined reader API has been included with your EnSight release. user defined reader API has been included with your EnSight release.
Also, the SILO reader included in the release utilizes the 2.0 API. Also, the SILO reader included in the release utilizes the 2.0 API.
And while not identical, the API 1.0 readers might be useful to And while not identical, the API 1.0 readers might be useful to
examine as examples. Many of the routines are the same or similar. examine as examples. Many of the routines are the same or similar.
@ -115,10 +115,10 @@ The process for producing a user defined reader is:
You may find it useful to place your library source in this area as You may find it useful to place your library source in this area as
well, but are not limited to this location. well, but are not limited to this location.
* ===> The descriptions of each library routine and the order that the * ===> The descriptions of each library routine and the order that the
routines are called, which is provided in this file, along with routines are called, which is provided in this file, along with
the example libraries, should make it possible for you to produce the example libraries, should make it possible for you to produce
code for your own data reader. code for your own data reader.
2. Produce the dynamic shared library. 2. Produce the dynamic shared library.
@ -166,7 +166,7 @@ The process for producing a user defined reader is:
If you choose to use a different build environment for your reader, If you choose to use a different build environment for your reader,
you should take care to use compatible compilation flags to ensure you should take care to use compatible compilation flags to ensure
compatibilty with the EnSight executables, most notably on the SGI compatibility with the EnSight executables, most notably on the SGI
and HP-UX 11.0 platforms, which should use the following flags: and HP-UX 11.0 platforms, which should use the following flags:
sgi_6.2_o32: -mips2 sgi_6.2_o32: -mips2
@ -260,7 +260,7 @@ The process for producing a user defined reader is:
location, and users can set the ENSIGHT7_READER variable to access them: location, and users can set the ENSIGHT7_READER variable to access them:
setenv ENSIGHT7_READER /usr/local/lib/e7readers setenv ENSIGHT7_READER /usr/local/lib/e7readers
A user working on a new reader may compile the reader and place it in A user working on a new reader may compile the reader and place it in
a directory specified by the library path: a directory specified by the library path:
@ -354,7 +354,7 @@ Order Routines are called
The various main operations are given basically in the order they will The various main operations are given basically in the order they will
be performed. Within each operation, the order the routines will be be performed. Within each operation, the order the routines will be
called is given. called is given.
1. Setting name in the gui, and specifying one or two input fields 1. Setting name in the gui, and specifying one or two input fields
@ -399,7 +399,7 @@ called is given.
USERD_get_number_of_variables USERD_get_number_of_variables
USERD_get_gold_variable_info USERD_get_gold_variable_info
6. Part building (per part created) 6. Part building (per part created)
USERD_set_time_set_and_step USERD_set_time_set_and_step
@ -417,12 +417,12 @@ called is given.
dialog is closed) dialog is closed)
7. Loading Variables 7. Loading Variables
constants: constants:
--------- ---------
USERD_set_time_set_and_step USERD_set_time_set_and_step
USERD_get_constant_val USERD_get_constant_val
scalars/vectors/tensors: scalars/vectors/tensors:
------------------------ ------------------------
USERD_get_descrip_lines USERD_get_descrip_lines
@ -457,7 +457,7 @@ called is given.
USERD_get_border_availability (If border representation USERD_get_border_availability (If border representation
USERD_get_border_elements_by_type is selected) USERD_get_border_elements_by_type is selected)
9. Node or Element queries over time 9. Node or Element queries over time
USERD_get_var_value_at_specific USERD_get_var_value_at_specific
@ -470,7 +470,7 @@ Detailed Specifications
Include files: Include files:
-------------- --------------
The following header file is required in any file containing these library The following header file is required in any file containing these library
routines. routines.
#include "global_extern.h" #include "global_extern.h"
@ -594,9 +594,9 @@ USERD_get_block_coords_by_component
--------- ---------
(IN) block_number = The block part number (IN) block_number = The block part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
@ -640,9 +640,9 @@ USERD_get_block_iblanking
--------- ---------
(IN) block_number = The block part number (IN) block_number = The block part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
@ -694,9 +694,9 @@ USERD_get_border_availability
--------- ---------
(IN) part_number = The part number (IN) part_number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
@ -727,7 +727,7 @@ USERD_get_border_elements_by_type
Description: Description:
----------- -----------
Provides border element connectivity and parent information. Provides border element connectivity and parent information.
Specification: Specification:
------------- -------------
@ -746,9 +746,9 @@ USERD_get_border_elements_by_type
--------- ---------
(IN) part_number = The part number (IN) part_number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
@ -796,7 +796,7 @@ USERD_get_border_elements_by_type
(Array will have been allocated (Array will have been allocated
num_of_elements of the type long) num_of_elements of the type long)
Notes: Notes:
----- -----
* Not called unless USERD_get_border_availability returned Z_OK * Not called unless USERD_get_border_availability returned Z_OK
@ -898,7 +898,7 @@ USERD_get_dataset_query_file_info
(Typically obtained with a call to the (Typically obtained with a call to the
"stat" system routine) (Is a long) "stat" system routine) (Is a long)
qfiles[].timemod = The time the file was last modified qfiles[].timemod = The time the file was last modified
(Z_MAXTIMLEN is the dimensioned length (Z_MAXTIMLEN is the dimensioned length
of this string) of this string)
(Typically obtained with a call to the (Typically obtained with a call to the
@ -998,7 +998,7 @@ USERD_get_element_label_status
on a per part, per type basis, if TRUE status is returned here. on a per part, per type basis, if TRUE status is returned here.
For structured parts, EnSight will assign ids if you return a For structured parts, EnSight will assign ids if you return a
status of TRUE here. You cannot assign them youself!! status of TRUE here. You cannot assign them yourself!!
-------------------------------------------------------------------- --------------------------------------------------------------------
@ -1014,7 +1014,7 @@ USERD_get_geom_timeset_number -
Returns: Returns:
------- -------
Geom_timeset_number = The timeset number that will be used for geometry. Geom_timeset_number = The timeset number that will be used for geometry.
For example, if USERD_get_number_of timesets For example, if USERD_get_number_of timesets
returns 2, the valid timeset numbers would be returns 2, the valid timeset numbers would be
1 or 2. 1 or 2.
@ -1056,30 +1056,30 @@ USERD_get_gold_part_build_info
--------- ---------
(OUT) part_id = Array containing the external part (OUT) part_id = Array containing the external part
ids for each of the model parts. ids for each of the model parts.
IMPORTANT: IMPORTANT:
Parts numbers must be >= 1, because Parts numbers must be >= 1, because
of the way they are used in the GUI of the way they are used in the GUI
******************************************* *******************************************
The ids provided here are the numbers by The ids provided here are the numbers by
which the parts will be referred to in the which the parts will be referred to in the
GUI (if possible). They are basically GUI (if possible). They are basically
labels as far as you are concerned. labels as far as you are concerned.
Note: The part numbers you pass to routines Note: The part numbers you pass to routines
which receive a part_number or block_number which receive a part_number or block_number
or which_part as an argument are the 1-based or which_part as an argument are the 1-based
table index of the parts! table index of the parts!
example: If Numparts_available = 3 example: If Numparts_available = 3
Table index part_id Table index part_id
----------- ------- ----------- -------
1 13 1 13
2 57 2 57
3 125 3 125
^ ^ ^ ^
| | | |
| These are placed in: | These are placed in:
@ -1091,7 +1091,7 @@ USERD_get_gold_part_build_info
These implied table indices are the part_number, These implied table indices are the part_number,
block_number, or which_part numbers that you would block_number, or which_part numbers that you would
pass to routines like: pass to routines like:
USERD_get_part_coords(int part_number,... USERD_get_part_coords(int part_number,...
USERD_get_part_node_ids(int part_number,... USERD_get_part_node_ids(int part_number,...
USERD_get_part_elements_by_type(int part_number,... USERD_get_part_elements_by_type(int part_number,...
@ -1108,7 +1108,7 @@ USERD_get_gold_part_build_info
int which_node_or_elem, int which_node_or_elem,
int which_part,... int which_part,...
******************************************** ********************************************
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1130,7 +1130,7 @@ USERD_get_gold_part_build_info
long) long)
(OUT) number_of_nodes = Number of unstructured nodes in the part (OUT) number_of_nodes = Number of unstructured nodes in the part
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1263,23 +1263,23 @@ USERD_get_gold_variable_info
Z_PER_ELEM Z_PER_ELEM
(OUT) var_complex = TRUE if complex, FALSE otherwise (OUT) var_complex = TRUE if complex, FALSE otherwise
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_ifilename = Variable imaginary filenames (if complex) (OUT) var_ifilename = Variable imaginary filenames (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables by Z_BUFL long) Num_variables by Z_BUFL long)
(OUT) var_freq = complex frequency (if complex) (OUT) var_freq = complex frequency (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_contran = TRUE if constant changes per time step (OUT) var_contran = TRUE if constant changes per time step
FALSE if constant truly same at all time steps FALSE if constant truly same at all time steps
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
@ -1353,7 +1353,7 @@ USERD_get_maxsize_info
--------- ---------
(OUT) max_number_of_nodes = Maximum number of unstructured nodes (OUT) max_number_of_nodes = Maximum number of unstructured nodes
in the part (over all time). in the part (over all time).
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1462,7 +1462,7 @@ USERD_get_name_of_reader
Specification: Specification:
------------- -------------
int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME], int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME],
int *two_fields) int *two_fields)
Returns: Returns:
------- -------
@ -1475,8 +1475,8 @@ USERD_get_name_of_reader
(max length is Z_MAX_USERD_NAME, which is 20) (max length is Z_MAX_USERD_NAME, which is 20)
(OUT) *two_fields = FALSE if only one data field required (OUT) *two_fields = FALSE if only one data field required
in the data dialog of EnSight. in the data dialog of EnSight.
TRUE if two data fields required. TRUE if two data fields required.
Notes: Notes:
----- -----
@ -1650,37 +1650,37 @@ USERD_get_number_of_timesets
* If you have a static model, both geometry and variables, you should * If you have a static model, both geometry and variables, you should
return a value of zero. return a value of zero.
* If you have a transient model, then you should return one or more. * If you have a transient model, then you should return one or more.
For example: For example:
Geometry Variables No. of timesets Geometry Variables No. of timesets
--------- ------------------------------ --------------- --------- ------------------------------ ---------------
static static 0 static static 0
static transient, all using same timeset 1 static transient, all using same timeset 1
transient transient, all using same timeset as geom 1 transient transient, all using same timeset as geom 1
static transient, using 3 different timesets 3 static transient, using 3 different timesets 3
transient transient, using 3 different timesets and transient transient, using 3 different timesets and
none of them the same as the none of them the same as the
geometry timeset 4 geometry timeset 4
etc. etc.
NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide
the timeset number to use the timeset number to use
for geometry in: for geometry in:
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
Variables can use the same timeset as the geometry, or can use Variables can use the same timeset as the geometry, or can use
other timesets. More than one variable can use the same timeset. other timesets. More than one variable can use the same timeset.
example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0 example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0
variable 1 provided at these same five steps variable 1 provided at these same five steps
variable 2 provided at 3 steps, 0.5, 1.25, 3.33 variable 2 provided at 3 steps, 0.5, 1.25, 3.33
This routine should return a value of 2, because only This routine should return a value of 2, because only
two different timesets are needed. Timeset 1 would be for the two different timesets are needed. Timeset 1 would be for the
geometry and variable 1 (they both use it). Timeset 2 would geometry and variable 1 (they both use it). Timeset 2 would
@ -1742,9 +1742,9 @@ USERD_get_part_coords
--------- ---------
(IN) part_number = The part number (IN) part_number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
@ -1810,9 +1810,9 @@ USERD_get_part_element_ids_by_type
--------- ---------
(IN) part_number = The part number (IN) part_number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
@ -1885,9 +1885,9 @@ USERD_get_part_elements_by_type
--------- ---------
(IN) part_number = The part number (IN) part_number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
@ -1928,7 +1928,7 @@ USERD_get_part_elements_by_type
conn_array[100][4] when called with Z_QUA04 conn_array[100][4] when called with Z_QUA04
conn_array[30][8] when called with Z_HEX08 conn_array[30][8] when called with Z_HEX08
Notes: Notes:
----- -----
* Not called unless Num_unstructured_parts is > 0 * Not called unless Num_unstructured_parts is > 0
@ -1956,9 +1956,9 @@ USERD_get_part_node_ids
--------- ---------
(IN) part_number = The part number (IN) part_number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
@ -2058,7 +2058,7 @@ USERD_get_sol_times
Description: Description:
----------- -----------
Get the solution times associated with each time step for Get the solution times associated with each time step for
desired timeset. desired timeset.
Specification: Specification:
@ -2074,7 +2074,7 @@ USERD_get_sol_times
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -2110,7 +2110,7 @@ USERD_get_timeset_description -
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -2165,14 +2165,14 @@ USERD_get_var_by_component
(IN) which_part Since EnSight Version 7.4 (IN) which_part Since EnSight Version 7.4
------------------------- -------------------------
= The part number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
Prior to EnSight Version 7.4 Prior to EnSight Version 7.4
---------------------------- ----------------------------
= The part id This is the part_id label loaded = The part id This is the part_id label loaded
@ -2207,22 +2207,22 @@ USERD_get_var_by_component
(IN) imag_data = TRUE if imag component (IN) imag_data = TRUE if imag component
FALSE if real component FALSE if real component
(IN) component = The component: (0 if Z_SCALAR) (IN) component = The component: (0 if Z_SCALAR)
(0 - 2 if Z_VECTOR) (0 - 2 if Z_VECTOR)
(0 - 5 if Z_TENSOR) (0 - 5 if Z_TENSOR)
(0 - 8 if Z_TENSOR9) (0 - 8 if Z_TENSOR9)
* 6 Symmetric Indicies, 0:5 * * 6 Symmetric Indices, 0:5 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
* T = | 22 23 | = | 1 5 | * * T = | 22 23 | = | 1 5 | *
* | | | | * * | | | | *
* | 33 | | 2 | * * | 33 | | 2 | *
* 9 General Indicies, 0:8 *
* 9 General Indices, 0:8 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
@ -2230,7 +2230,7 @@ USERD_get_var_by_component
* | | | | * * | | | | *
* | 31 32 33 | | 7 8 2 | * * | 31 32 33 | | 7 8 2 | *
(OUT) var_array (OUT) var_array
----------------------------------------------------------------------- -----------------------------------------------------------------------
(IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!) (IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!)
@ -2252,7 +2252,7 @@ USERD_get_var_by_component
if Z_PER_ELEM: = 1D array containing variable component if Z_PER_ELEM: = 1D array containing variable component
value for each element of a particular value for each element of a particular
part and type. part and type.
(Array will have been allocated (Array will have been allocated
(number_of_elements[which_part][which_type] + 1) (number_of_elements[which_part][which_type] + 1)
long. See USERD_get_gold_part_build_info) long. See USERD_get_gold_part_build_info)
@ -2314,7 +2314,7 @@ USERD_get_var_value_at_specific
If Z_PER_NODE: If Z_PER_NODE:
= The node number. This is not the id, but is = The node number. This is not the id, but is
the index of the global node the index of the global node
list (1 based), or the block's list (1 based), or the block's
node list (1 based). node list (1 based).
@ -2345,14 +2345,14 @@ USERD_get_var_value_at_specific
(IN) which_part Since EnSight Version 7.4 (IN) which_part Since EnSight Version 7.4
------------------------- -------------------------
= The part number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
Prior to EnSight Version 7.4 Prior to EnSight Version 7.4
---------------------------- ----------------------------
= The part id This is the part_id label loaded = The part id This is the part_id label loaded
@ -2420,8 +2420,8 @@ USERD_set_filenames
(IN) filename_2 = the filename entered into the result (IN) filename_2 = the filename entered into the result
field of the data dialog. field of the data dialog.
(If the two_fields flag in USERD_get_name_of_reader (If the two_fields flag in USERD_get_name_of_reader
is FALSE, this will be null string) is FALSE, this will be null string)
(IN) the_path = the path info from the data dialog. (IN) the_path = the path info from the data dialog.
Note: filename_1 and filename_2 have already Note: filename_1 and filename_2 have already
@ -2470,7 +2470,7 @@ USERD_set_server_number
something that you can take advantage of. If your data is already something that you can take advantage of. If your data is already
partitioned in some manner, such that you can access the proper partitioned in some manner, such that you can access the proper
portions using this information. portions using this information.
For all non-SOS uses, this will simply be 1 of 1 For all non-SOS uses, this will simply be 1 of 1
@ -2496,7 +2496,7 @@ USERD_set_time_set_and_step
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (1 based). (IN) timeset_number = the timeset number (1 based).
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid timeset_number's returns 2, the valid timeset_number's
would be 1 and 2. would be 1 and 2.

View File

@ -57,7 +57,7 @@ Some of its advantages are::
Note: A default dummy_gold reader and an Ensight Gold example of this new 2.01 Note: A default dummy_gold reader and an Ensight Gold example of this new 2.01
user defined reader API has been included with your EnSight release. user defined reader API has been included with your EnSight release.
Also, the SILO and ExodusII_gold reader included in the release Also, the SILO and ExodusII_gold reader included in the release
utilizes the 2.01 API. utilizes the 2.01 API.
**************************************************************************** ****************************************************************************
@ -87,10 +87,10 @@ The process for producing a user defined reader is:
You may find it useful to place your library source in this area as You may find it useful to place your library source in this area as
well, but are not limited to this location. well, but are not limited to this location.
* ===> The descriptions of each library routine and the order that the * ===> The descriptions of each library routine and the order that the
routines are called, which is provided in this file, along with routines are called, which is provided in this file, along with
the example libraries, should make it possible for you to produce the example libraries, should make it possible for you to produce
code for your own data reader. code for your own data reader.
2. Produce the dynamic shared library. 2. Produce the dynamic shared library.
@ -138,7 +138,7 @@ The process for producing a user defined reader is:
If you choose to use a different build environment for your reader, If you choose to use a different build environment for your reader,
you should take care to use compatible compilation flags to ensure you should take care to use compatible compilation flags to ensure
compatibilty with the EnSight executables, most notably on the SGI compatibility with the EnSight executables, most notably on the SGI
and HP-UX 11.0 platforms, which should use the following flags: and HP-UX 11.0 platforms, which should use the following flags:
sgi_6.2_o32: -mips2 sgi_6.2_o32: -mips2
@ -232,7 +232,7 @@ The process for producing a user defined reader is:
location, and users can set the ENSIGHT7_READER variable to access them: location, and users can set the ENSIGHT7_READER variable to access them:
setenv ENSIGHT7_READER /usr/local/lib/e7readers setenv ENSIGHT7_READER /usr/local/lib/e7readers
A user working on a new reader may compile the reader and place it in A user working on a new reader may compile the reader and place it in
a directory specified by the library path: a directory specified by the library path:
@ -277,7 +277,7 @@ USERD_get_block_ghost_flags block ghost cell flags
These routines, which formerly were only for unstructured data, will now These routines, which formerly were only for unstructured data, will now
also be called for structured data if you specify that ids will be given also be called for structured data if you specify that ids will be given
in the USERD_get_node_label_status and USERD_get_element_label_status rotuines in the USERD_get_node_label_status and USERD_get_element_label_status rotuines
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
USERD_get_part_node_ids part's node ids USERD_get_part_node_ids part's node ids
USERD_get_part_element_ids_by_type part's element ids USERD_get_part_element_ids_by_type part's element ids
@ -334,7 +334,7 @@ Order Routines are called
The various main operations are given basically in the order they will The various main operations are given basically in the order they will
be performed. Within each operation, the order the routines will be be performed. Within each operation, the order the routines will be
called is given. called is given.
1. Setting name in the gui, and specifying one or two input fields 1. Setting name in the gui, and specifying one or two input fields
@ -381,7 +381,7 @@ called is given.
USERD_get_number_of_variables USERD_get_number_of_variables
USERD_get_gold_variable_info USERD_get_gold_variable_info
6. Part building (per part created) 6. Part building (per part created)
both unstructured and structured: both unstructured and structured:
@ -412,12 +412,12 @@ called is given.
dialog is closed) dialog is closed)
7. Loading Variables 7. Loading Variables
constants: constants:
--------- ---------
USERD_set_time_set_and_step USERD_set_time_set_and_step
USERD_get_constant_val USERD_get_constant_val
scalars/vectors/tensors: scalars/vectors/tensors:
------------------------ ------------------------
USERD_get_descrip_lines USERD_get_descrip_lines
@ -457,7 +457,7 @@ called is given.
USERD_get_border_availability (If border representation USERD_get_border_availability (If border representation
USERD_get_border_elements_by_type is selected) USERD_get_border_elements_by_type is selected)
9. Node or Element queries over time 9. Node or Element queries over time
USERD_get_var_value_at_specific USERD_get_var_value_at_specific
@ -470,7 +470,7 @@ Detailed Specifications
Include files: Include files:
-------------- --------------
The following header file is required in any file containing these library The following header file is required in any file containing these library
routines. routines.
#include "global_extern.h" #include "global_extern.h"
@ -711,24 +711,24 @@ USERD_get_block_ghost_flags
(OUT) ghost_flags = 1D array containing ghost flag value (OUT) ghost_flags = 1D array containing ghost flag value
for each block cell. for each block cell.
(Array will have been allocated (Array will have been allocated
(i-1)*(j-1)*(k-1) for the block long) (i-1)*(j-1)*(k-1) for the block long)
possible values are: 0 = non-ghost cell (normal cell) possible values are: 0 = non-ghost cell (normal cell)
>0 = ghost cell >0 = ghost cell
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Only called for structured "block" parts that have some ghost cells * Only called for structured "block" parts that have some ghost cells
as indicated by the USERD_get_ghost_in_block_flag. The model must as indicated by the USERD_get_ghost_in_block_flag. The model must
of course also have been indicated to have some ghost cells in the of course also have been indicated to have some ghost cells in the
USERD_get_ghost_in_model_flag routine. USERD_get_ghost_in_model_flag routine.
* It is sufficient to set the value to be 1 to flag as a ghost cell, * It is sufficient to set the value to be 1 to flag as a ghost cell,
but the value can be any non-zero value, so you could use it to but the value can be any non-zero value, so you could use it to
indicate which block or which server (for Server-of-server use) the indicate which block or which server (for Server-of-server use) the
@ -796,7 +796,7 @@ USERD_get_border_elements_by_type
Description: Description:
----------- -----------
Provides border element connectivity and parent information. Provides border element connectivity and parent information.
Specification: Specification:
------------- -------------
@ -865,7 +865,7 @@ USERD_get_border_elements_by_type
(Array will have been allocated (Array will have been allocated
num_of_elements of the type long) num_of_elements of the type long)
Notes: Notes:
----- -----
* Not called unless USERD_get_border_availability returned Z_OK * Not called unless USERD_get_border_availability returned Z_OK
@ -967,7 +967,7 @@ USERD_get_dataset_query_file_info
(Typically obtained with a call to the (Typically obtained with a call to the
"stat" system routine) (Is a long) "stat" system routine) (Is a long)
qfiles[].timemod = The time the file was last modified qfiles[].timemod = The time the file was last modified
(Z_MAXTIMLEN is the dimensioned length (Z_MAXTIMLEN is the dimensioned length
of this string) of this string)
(Typically obtained with a call to the (Typically obtained with a call to the
@ -1074,7 +1074,7 @@ USERD_get_element_label_status
on a per part, per type basis, if TRUE status is returned here. on a per part, per type basis, if TRUE status is returned here.
For structured parts, EnSight will assign ids if you return a For structured parts, EnSight will assign ids if you return a
status of TRUE here. You cannot assign them youself!! status of TRUE here. You cannot assign them yourself!!
* Starting at API 2.01: * Starting at API 2.01:
-------------------- --------------------
@ -1101,7 +1101,7 @@ USERD_get_geom_timeset_number -
Returns: Returns:
------- -------
Geom_timeset_number = The timeset number that will be used for geometry. Geom_timeset_number = The timeset number that will be used for geometry.
For example, if USERD_get_number_of timesets For example, if USERD_get_number_of timesets
returns 2, the valid timeset numbers would be returns 2, the valid timeset numbers would be
1 or 2. 1 or 2.
@ -1217,7 +1217,7 @@ USERD_get_gold_part_build_info
long) long)
(OUT) number_of_nodes = Number of unstructured nodes in the part (OUT) number_of_nodes = Number of unstructured nodes in the part
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1366,23 +1366,23 @@ USERD_get_gold_variable_info
Z_PER_ELEM Z_PER_ELEM
(OUT) var_complex = TRUE if complex, FALSE otherwise (OUT) var_complex = TRUE if complex, FALSE otherwise
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_ifilename = Variable imaginary filenames (if complex) (OUT) var_ifilename = Variable imaginary filenames (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables by Z_BUFL long) Num_variables by Z_BUFL long)
(OUT) var_freq = complex frequency (if complex) (OUT) var_freq = complex frequency (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_contran = TRUE if constant changes per time step (OUT) var_contran = TRUE if constant changes per time step
FALSE if constant truly same at all time steps FALSE if constant truly same at all time steps
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
@ -1456,7 +1456,7 @@ USERD_get_ghosts_in_block_flag
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Intended for structured parts only, value will be ignored for * Intended for structured parts only, value will be ignored for
unstructured parts unstructured parts
@ -1495,7 +1495,7 @@ USERD_get_maxsize_info
--------- ---------
(OUT) max_number_of_nodes = Maximum number of unstructured nodes (OUT) max_number_of_nodes = Maximum number of unstructured nodes
in the part (over all time). in the part (over all time).
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1591,7 +1591,7 @@ USERD_get_ghosts_in_model_flag
Arguments: Arguments:
--------- ---------
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
@ -1643,7 +1643,7 @@ USERD_get_name_of_reader
Specification: Specification:
------------- -------------
int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME], int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME],
int *two_fields) int *two_fields)
Returns: Returns:
------- -------
@ -1656,8 +1656,8 @@ USERD_get_name_of_reader
(max length is Z_MAX_USERD_NAME, which is 20) (max length is Z_MAX_USERD_NAME, which is 20)
(OUT) *two_fields = FALSE if only one data field required (OUT) *two_fields = FALSE if only one data field required
in the data dialog of EnSight. in the data dialog of EnSight.
TRUE if two data fields required. TRUE if two data fields required.
Notes: Notes:
----- -----
@ -1846,37 +1846,37 @@ USERD_get_number_of_timesets
* If you have a static model, both geometry and variables, you should * If you have a static model, both geometry and variables, you should
return a value of zero. return a value of zero.
* If you have a transient model, then you should return one or more. * If you have a transient model, then you should return one or more.
For example: For example:
Geometry Variables No. of timesets Geometry Variables No. of timesets
--------- ------------------------------ --------------- --------- ------------------------------ ---------------
static static 0 static static 0
static transient, all using same timeset 1 static transient, all using same timeset 1
transient transient, all using same timeset as geom 1 transient transient, all using same timeset as geom 1
static transient, using 3 different timesets 3 static transient, using 3 different timesets 3
transient transient, using 3 different timesets and transient transient, using 3 different timesets and
none of them the same as the none of them the same as the
geometry timeset 4 geometry timeset 4
etc. etc.
NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide
the timeset number to use the timeset number to use
for geometry in: for geometry in:
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
Variables can use the same timeset as the geometry, or can use Variables can use the same timeset as the geometry, or can use
other timesets. More than one variable can use the same timeset. other timesets. More than one variable can use the same timeset.
example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0 example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0
variable 1 provided at these same five steps variable 1 provided at these same five steps
variable 2 provided at 3 steps, 0.5, 1.25, 3.33 variable 2 provided at 3 steps, 0.5, 1.25, 3.33
This routine should return a value of 2, because only This routine should return a value of 2, because only
two different timesets are needed. Timeset 1 would be for the two different timesets are needed. Timeset 1 would be for the
geometry and variable 1 (they both use it). Timeset 2 would geometry and variable 1 (they both use it). Timeset 2 would
@ -2158,7 +2158,7 @@ USERD_get_part_elements_by_type
conn_array[100][4] when called with Z_QUA04 conn_array[100][4] when called with Z_QUA04
conn_array[30][8] when called with Z_HEX08 conn_array[30][8] when called with Z_HEX08
Notes: Notes:
----- -----
* Not called unless Num_unstructured_parts is > 0 * Not called unless Num_unstructured_parts is > 0
@ -2291,7 +2291,7 @@ USERD_get_sol_times
Description: Description:
----------- -----------
Get the solution times associated with each time step for Get the solution times associated with each time step for
desired timeset. desired timeset.
Specification: Specification:
@ -2307,7 +2307,7 @@ USERD_get_sol_times
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -2343,7 +2343,7 @@ USERD_get_timeset_description -
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -2456,22 +2456,22 @@ USERD_get_var_by_component
(IN) imag_data = TRUE if imag component (IN) imag_data = TRUE if imag component
FALSE if real component FALSE if real component
(IN) component = The component: (0 if Z_SCALAR) (IN) component = The component: (0 if Z_SCALAR)
(0 - 2 if Z_VECTOR) (0 - 2 if Z_VECTOR)
(0 - 5 if Z_TENSOR) (0 - 5 if Z_TENSOR)
(0 - 8 if Z_TENSOR9) (0 - 8 if Z_TENSOR9)
* 6 Symmetric Indicies, 0:5 * * 6 Symmetric Indices, 0:5 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
* T = | 22 23 | = | 1 5 | * * T = | 22 23 | = | 1 5 | *
* | | | | * * | | | | *
* | 33 | | 2 | * * | 33 | | 2 | *
* 9 General Indicies, 0:8 *
* 9 General Indices, 0:8 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
@ -2479,7 +2479,7 @@ USERD_get_var_by_component
* | | | | * * | | | | *
* | 31 32 33 | | 7 8 2 | * * | 31 32 33 | | 7 8 2 | *
(OUT) var_array (OUT) var_array
----------------------------------------------------------------------- -----------------------------------------------------------------------
(IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!) (IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!)
@ -2501,7 +2501,7 @@ USERD_get_var_by_component
if Z_PER_ELEM: = 1D array containing variable component if Z_PER_ELEM: = 1D array containing variable component
value for each element of a particular value for each element of a particular
part and type. part and type.
(Array will have been allocated (Array will have been allocated
(number_of_elements[which_part][which_type] + 1) (number_of_elements[which_part][which_type] + 1)
long. See USERD_get_gold_part_build_info) long. See USERD_get_gold_part_build_info)
@ -2563,7 +2563,7 @@ USERD_get_var_value_at_specific
If Z_PER_NODE: If Z_PER_NODE:
= The node number. This is not the id, but is = The node number. This is not the id, but is
the index of the global node the index of the global node
list (1 based), or the block's list (1 based), or the block's
node list (1 based). node list (1 based).
@ -2670,8 +2670,8 @@ USERD_set_filenames
(IN) filename_2 = the filename entered into the result (IN) filename_2 = the filename entered into the result
field of the data dialog. field of the data dialog.
(If the two_fields flag in USERD_get_name_of_reader (If the two_fields flag in USERD_get_name_of_reader
is FALSE, this will be null string) is FALSE, this will be null string)
(IN) the_path = the path info from the data dialog. (IN) the_path = the path info from the data dialog.
Note: filename_1 and filename_2 have already Note: filename_1 and filename_2 have already
@ -2720,7 +2720,7 @@ USERD_set_server_number
something that you can take advantage of. If your data is already something that you can take advantage of. If your data is already
partitioned in some manner, such that you can access the proper partitioned in some manner, such that you can access the proper
portions using this information. portions using this information.
For all non-SOS uses, this will simply be 1 of 1 For all non-SOS uses, this will simply be 1 of 1
@ -2746,7 +2746,7 @@ USERD_set_time_set_and_step
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (1 based). (IN) timeset_number = the timeset number (1 based).
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid timeset_number's returns 2, the valid timeset_number's
would be 1 and 2. would be 1 and 2.

View File

@ -52,10 +52,10 @@ The process for producing a user defined reader is:
You may find it useful to place your library source in this area as You may find it useful to place your library source in this area as
well, but are not limited to this location. well, but are not limited to this location.
* ===> The descriptions of each library routine and the order that the * ===> The descriptions of each library routine and the order that the
routines are called, which is provided in this file, along with routines are called, which is provided in this file, along with
the example libraries, should make it possible for you to produce the example libraries, should make it possible for you to produce
code for your own data reader. code for your own data reader.
2. Produce the dynamic shared library. 2. Produce the dynamic shared library.
@ -103,7 +103,7 @@ The process for producing a user defined reader is:
If you choose to use a different build environment for your reader, If you choose to use a different build environment for your reader,
you should take care to use compatible compilation flags to ensure you should take care to use compatible compilation flags to ensure
compatibilty with the EnSight executables, most notably on the SGI compatibility with the EnSight executables, most notably on the SGI
and HP-UX 11.0 platforms, which should use the following flags: and HP-UX 11.0 platforms, which should use the following flags:
sgi_6.2_o32: -mips2 sgi_6.2_o32: -mips2
@ -197,7 +197,7 @@ The process for producing a user defined reader is:
location, and users can set the ENSIGHT7_READER variable to access them: location, and users can set the ENSIGHT7_READER variable to access them:
setenv ENSIGHT7_READER /usr/local/lib/e7readers setenv ENSIGHT7_READER /usr/local/lib/e7readers
A user working on a new reader may compile the reader and place it in A user working on a new reader may compile the reader and place it in
a directory specified by the library path: a directory specified by the library path:
@ -242,7 +242,7 @@ USERD_get_block_ghost_flags block ghost cell flags
These routines, which formerly were only for unstructured data, will now These routines, which formerly were only for unstructured data, will now
also be called for structured data if you specify that ids will be given also be called for structured data if you specify that ids will be given
in the USERD_get_node_label_status and USERD_get_element_label_status rotuines in the USERD_get_node_label_status and USERD_get_element_label_status rotuines
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
USERD_get_part_node_ids part's node ids USERD_get_part_node_ids part's node ids
USERD_get_part_element_ids_by_type part's element ids USERD_get_part_element_ids_by_type part's element ids
@ -323,7 +323,7 @@ Order Routines are called
The various main operations are given basically in the order they will The various main operations are given basically in the order they will
be performed. Within each operation, the order the routines will be be performed. Within each operation, the order the routines will be
called is given. called is given.
1. Setting name in the gui, and specifying one or two input fields 1. Setting name in the gui, and specifying one or two input fields
@ -370,7 +370,7 @@ called is given.
USERD_get_number_of_variables USERD_get_number_of_variables
USERD_get_gold_variable_info USERD_get_gold_variable_info
6. Part building (per part created) 6. Part building (per part created)
both unstructured and structured: both unstructured and structured:
@ -411,12 +411,12 @@ called is given.
dialog is closed) dialog is closed)
7. Loading Variables 7. Loading Variables
constants: constants:
--------- ---------
USERD_set_time_set_and_step USERD_set_time_set_and_step
USERD_get_constant_val USERD_get_constant_val
scalars/vectors/tensors: scalars/vectors/tensors:
------------------------ ------------------------
USERD_get_descrip_lines USERD_get_descrip_lines
@ -456,7 +456,7 @@ called is given.
USERD_get_border_availability (If border representation USERD_get_border_availability (If border representation
USERD_get_border_elements_by_type is selected) USERD_get_border_elements_by_type is selected)
9. Node or Element queries over time 9. Node or Element queries over time
USERD_get_var_value_at_specific USERD_get_var_value_at_specific
@ -489,7 +489,7 @@ Detailed Specifications
Include files: Include files:
-------------- --------------
The following header file is required in any file containing these library The following header file is required in any file containing these library
routines. routines.
#include "global_extern.h" #include "global_extern.h"
@ -736,24 +736,24 @@ USERD_get_block_ghost_flags
(OUT) ghost_flags = 1D array containing ghost flag value (OUT) ghost_flags = 1D array containing ghost flag value
for each block cell. for each block cell.
(Array will have been allocated (Array will have been allocated
(i-1)*(j-1)*(k-1) for the block long) (i-1)*(j-1)*(k-1) for the block long)
possible values are: 0 = non-ghost cell (normal cell) possible values are: 0 = non-ghost cell (normal cell)
>0 = ghost cell >0 = ghost cell
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Only called for structured "block" parts that have some ghost cells * Only called for structured "block" parts that have some ghost cells
as indicated by the USERD_get_ghost_in_block_flag. The model must as indicated by the USERD_get_ghost_in_block_flag. The model must
of course also have been indicated to have some ghost cells in the of course also have been indicated to have some ghost cells in the
USERD_get_ghost_in_model_flag routine. USERD_get_ghost_in_model_flag routine.
* It is sufficient to set the value to be 1 to flag as a ghost cell, * It is sufficient to set the value to be 1 to flag as a ghost cell,
but the value can be any non-zero value, so you could use it to but the value can be any non-zero value, so you could use it to
indicate which block or which server (for Server-of-server use) the indicate which block or which server (for Server-of-server use) the
@ -821,7 +821,7 @@ USERD_get_border_elements_by_type
Description: Description:
----------- -----------
Provides border element connectivity and parent information. Provides border element connectivity and parent information.
Specification: Specification:
------------- -------------
@ -890,7 +890,7 @@ USERD_get_border_elements_by_type
(Array will have been allocated (Array will have been allocated
num_of_elements of the type long) num_of_elements of the type long)
Notes: Notes:
----- -----
* Not called unless USERD_get_border_availability returned Z_OK * Not called unless USERD_get_border_availability returned Z_OK
@ -992,7 +992,7 @@ USERD_get_dataset_query_file_info
(Typically obtained with a call to the (Typically obtained with a call to the
"stat" system routine) (Is a long) "stat" system routine) (Is a long)
qfiles[].timemod = The time the file was last modified qfiles[].timemod = The time the file was last modified
(Z_MAXTIMLEN is the dimensioned length (Z_MAXTIMLEN is the dimensioned length
of this string) of this string)
(Typically obtained with a call to the (Typically obtained with a call to the
@ -1099,7 +1099,7 @@ USERD_get_element_label_status
on a per part, per type basis, if TRUE status is returned here. on a per part, per type basis, if TRUE status is returned here.
For structured parts, EnSight will assign ids if you return a For structured parts, EnSight will assign ids if you return a
status of TRUE here. You cannot assign them youself!! status of TRUE here. You cannot assign them yourself!!
* Starting at API 2.01: * Starting at API 2.01:
-------------------- --------------------
@ -1126,7 +1126,7 @@ USERD_get_geom_timeset_number -
Returns: Returns:
------- -------
Geom_timeset_number = The timeset number that will be used for geometry. Geom_timeset_number = The timeset number that will be used for geometry.
For example, if USERD_get_number_of timesets For example, if USERD_get_number_of timesets
returns 2, the valid timeset numbers would be returns 2, the valid timeset numbers would be
1 or 2. 1 or 2.
@ -1242,7 +1242,7 @@ USERD_get_gold_part_build_info
long) long)
(OUT) number_of_nodes = Number of unstructured nodes in the part (OUT) number_of_nodes = Number of unstructured nodes in the part
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1525,23 +1525,23 @@ USERD_get_gold_variable_info
Z_PER_ELEM Z_PER_ELEM
(OUT) var_complex = TRUE if complex, FALSE otherwise (OUT) var_complex = TRUE if complex, FALSE otherwise
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_ifilename = Variable imaginary filenames (if complex) (OUT) var_ifilename = Variable imaginary filenames (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables by Z_BUFL long) Num_variables by Z_BUFL long)
(OUT) var_freq = complex frequency (if complex) (OUT) var_freq = complex frequency (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_contran = TRUE if constant changes per time step (OUT) var_contran = TRUE if constant changes per time step
FALSE if constant truly same at all time steps FALSE if constant truly same at all time steps
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
@ -1615,7 +1615,7 @@ USERD_get_ghosts_in_block_flag
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Intended for structured parts only, value will be ignored for * Intended for structured parts only, value will be ignored for
unstructured parts unstructured parts
@ -1639,7 +1639,7 @@ USERD_get_ghosts_in_model_flag
Arguments: Arguments:
--------- ---------
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
@ -1754,7 +1754,7 @@ USERD_get_maxsize_info
--------- ---------
(OUT) max_number_of_nodes = Maximum number of unstructured nodes (OUT) max_number_of_nodes = Maximum number of unstructured nodes
in the part (over all time). in the part (over all time).
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1877,7 +1877,7 @@ USERD_get_name_of_reader
Specification: Specification:
------------- -------------
int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME], int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME],
int *two_fields) int *two_fields)
Returns: Returns:
------- -------
@ -1890,8 +1890,8 @@ USERD_get_name_of_reader
(max length is Z_MAX_USERD_NAME, which is 20) (max length is Z_MAX_USERD_NAME, which is 20)
(OUT) *two_fields = FALSE if only one data field required (OUT) *two_fields = FALSE if only one data field required
in the data dialog of EnSight. in the data dialog of EnSight.
TRUE if two data fields required. TRUE if two data fields required.
Notes: Notes:
----- -----
@ -2709,37 +2709,37 @@ USERD_get_number_of_timesets
* If you have a static model, both geometry and variables, you should * If you have a static model, both geometry and variables, you should
return a value of zero. return a value of zero.
* If you have a transient model, then you should return one or more. * If you have a transient model, then you should return one or more.
For example: For example:
Geometry Variables No. of timesets Geometry Variables No. of timesets
--------- ------------------------------ --------------- --------- ------------------------------ ---------------
static static 0 static static 0
static transient, all using same timeset 1 static transient, all using same timeset 1
transient transient, all using same timeset as geom 1 transient transient, all using same timeset as geom 1
static transient, using 3 different timesets 3 static transient, using 3 different timesets 3
transient transient, using 3 different timesets and transient transient, using 3 different timesets and
none of them the same as the none of them the same as the
geometry timeset 4 geometry timeset 4
etc. etc.
NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide
the timeset number to use the timeset number to use
for geometry in: for geometry in:
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
Variables can use the same timeset as the geometry, or can use Variables can use the same timeset as the geometry, or can use
other timesets. More than one variable can use the same timeset. other timesets. More than one variable can use the same timeset.
example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0 example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0
variable 1 provided at these same five steps variable 1 provided at these same five steps
variable 2 provided at 3 steps, 0.5, 1.25, 3.33 variable 2 provided at 3 steps, 0.5, 1.25, 3.33
This routine should return a value of 2, because only This routine should return a value of 2, because only
two different timesets are needed. Timeset 1 would be for the two different timesets are needed. Timeset 1 would be for the
geometry and variable 1 (they both use it). Timeset 2 would geometry and variable 1 (they both use it). Timeset 2 would
@ -3021,7 +3021,7 @@ USERD_get_part_elements_by_type
conn_array[100][4] when called with Z_QUA04 conn_array[100][4] when called with Z_QUA04
conn_array[30][8] when called with Z_HEX08 conn_array[30][8] when called with Z_HEX08
Notes: Notes:
----- -----
* Not called unless Num_unstructured_parts is > 0 * Not called unless Num_unstructured_parts is > 0
@ -3155,7 +3155,7 @@ USERD_get_sol_times
Description: Description:
----------- -----------
Get the solution times associated with each time step for Get the solution times associated with each time step for
desired timeset. desired timeset.
Specification: Specification:
@ -3171,7 +3171,7 @@ USERD_get_sol_times
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -3207,7 +3207,7 @@ USERD_get_timeset_description -
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -3320,22 +3320,22 @@ USERD_get_var_by_component
(IN) imag_data = TRUE if imag component (IN) imag_data = TRUE if imag component
FALSE if real component FALSE if real component
(IN) component = The component: (0 if Z_SCALAR) (IN) component = The component: (0 if Z_SCALAR)
(0 - 2 if Z_VECTOR) (0 - 2 if Z_VECTOR)
(0 - 5 if Z_TENSOR) (0 - 5 if Z_TENSOR)
(0 - 8 if Z_TENSOR9) (0 - 8 if Z_TENSOR9)
* 6 Symmetric Indicies, 0:5 * * 6 Symmetric Indices, 0:5 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
* T = | 22 23 | = | 1 5 | * * T = | 22 23 | = | 1 5 | *
* | | | | * * | | | | *
* | 33 | | 2 | * * | 33 | | 2 | *
* 9 General Indicies, 0:8 *
* 9 General Indices, 0:8 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
@ -3343,7 +3343,7 @@ USERD_get_var_by_component
* | | | | * * | | | | *
* | 31 32 33 | | 7 8 2 | * * | 31 32 33 | | 7 8 2 | *
(OUT) var_array (OUT) var_array
----------------------------------------------------------------------- -----------------------------------------------------------------------
(IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!) (IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!)
@ -3365,7 +3365,7 @@ USERD_get_var_by_component
if Z_PER_ELEM: = 1D array containing variable component if Z_PER_ELEM: = 1D array containing variable component
value for each element of a particular value for each element of a particular
part and type. part and type.
(Array will have been allocated (Array will have been allocated
(number_of_elements[which_part][which_type] + 1) (number_of_elements[which_part][which_type] + 1)
long. See USERD_get_gold_part_build_info) long. See USERD_get_gold_part_build_info)
@ -3427,7 +3427,7 @@ USERD_get_var_value_at_specific
If Z_PER_NODE: If Z_PER_NODE:
= The node number. This is not the id, but is = The node number. This is not the id, but is
the index of the global node the index of the global node
list (1 based), or the block's list (1 based), or the block's
node list (1 based). node list (1 based).
@ -3636,8 +3636,8 @@ USERD_set_filenames
(IN) filename_2 = the filename entered into the result (IN) filename_2 = the filename entered into the result
field of the data dialog. field of the data dialog.
(If the two_fields flag in USERD_get_name_of_reader (If the two_fields flag in USERD_get_name_of_reader
is FALSE, this will be null string) is FALSE, this will be null string)
(IN) the_path = the path info from the data dialog. (IN) the_path = the path info from the data dialog.
Note: filename_1 and filename_2 have already Note: filename_1 and filename_2 have already
@ -3686,7 +3686,7 @@ USERD_set_server_number
something that you can take advantage of. If your data is already something that you can take advantage of. If your data is already
partitioned in some manner, such that you can access the proper partitioned in some manner, such that you can access the proper
portions using this information. portions using this information.
For all non-SOS uses, this will simply be 1 of 1 For all non-SOS uses, this will simply be 1 of 1
@ -3712,7 +3712,7 @@ USERD_set_time_set_and_step
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (1 based). (IN) timeset_number = the timeset number (1 based).
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid timeset_number's returns 2, the valid timeset_number's
would be 1 and 2. would be 1 and 2.

View File

@ -40,10 +40,10 @@ reader itself. (Can actually be added to pre-2.05 readers)
***>> API 2.04 additional capabilities (beyond API 2.03): ***>> API 2.04 additional capabilities (beyond API 2.03):
Routines to handle failed elements. Basically Routines to handle failed elements. Basically
a.One routine to return a flag indicating the existence of a.One routine to return a flag indicating the existence of
failed elements in at least one part in at least one failed elements in at least one part in at least one
timestep in the model. timestep in the model.
b.A second routine to return a matrix of flags indexed by part and b.A second routine to return a matrix of flags indexed by part and
element type indicating which parts and element types have failed element type indicating which parts and element types have failed
elements at the current time step. elements at the current time step.
@ -60,7 +60,7 @@ c.Finally a third routine to return an array of flags for a given
**************************************************************************** ****************************************************************************
Note: The dummy_gold reader, the Ensight Gold example reader, the Note: The dummy_gold reader, the Ensight Gold example reader, the
ABAQUS_ODB reader and the LS-DYNA reader have been moved to ABAQUS_ODB reader and the LS-DYNA reader have been moved to
this 2.04 API level. this 2.04 API level.
**************************************************************************** ****************************************************************************
@ -91,10 +91,10 @@ The process for producing a user defined reader is:
You may find it useful to place your library source in this area as You may find it useful to place your library source in this area as
well, but are not limited to this location. well, but are not limited to this location.
* ===> The descriptions of each library routine and the order that the * ===> The descriptions of each library routine and the order that the
routines are called, which is provided in this file, along with routines are called, which is provided in this file, along with
the example libraries, should make it possible for you to produce the example libraries, should make it possible for you to produce
code for your own data reader. code for your own data reader.
2. Produce the dynamic shared library. 2. Produce the dynamic shared library.
@ -142,7 +142,7 @@ The process for producing a user defined reader is:
If you choose to use a different build environment for your reader, If you choose to use a different build environment for your reader,
you should take care to use compatible compilation flags to ensure you should take care to use compatible compilation flags to ensure
compatibilty with the EnSight executables, most notably on the SGI compatibility with the EnSight executables, most notably on the SGI
and HP-UX 11.0 platforms, which should use the following flags: and HP-UX 11.0 platforms, which should use the following flags:
sgi_6.2_o32: -mips2 sgi_6.2_o32: -mips2
@ -236,7 +236,7 @@ The process for producing a user defined reader is:
location, and users can set the ENSIGHT7_READER variable to access them: location, and users can set the ENSIGHT7_READER variable to access them:
setenv ENSIGHT7_READER /usr/local/lib/e7readers setenv ENSIGHT7_READER /usr/local/lib/e7readers
A user working on a new reader may compile the reader and place it in A user working on a new reader may compile the reader and place it in
a directory specified by the library path: a directory specified by the library path:
@ -281,7 +281,7 @@ USERD_get_block_ghost_flags block ghost cell flags
These routines, which formerly were only for unstructured data, will now These routines, which formerly were only for unstructured data, will now
also be called for structured data if you specify that ids will be given also be called for structured data if you specify that ids will be given
in the USERD_get_node_label_status and USERD_get_element_label_status rotuines in the USERD_get_node_label_status and USERD_get_element_label_status rotuines
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
USERD_get_part_node_ids part's node ids USERD_get_part_node_ids part's node ids
USERD_get_part_element_ids_by_type part's element ids USERD_get_part_element_ids_by_type part's element ids
@ -359,7 +359,7 @@ USERD_exit_routine cleanup upon exit routine
--------------------------- ---------------------------
Optional Extra GUI Info Optional Extra GUI Info
Adds Toggle(s), Pulldown(s) Field(s) Adds Toggle(s), Pulldown(s) Field(s)
that can be used for additonal input that can be used for additional input
--------------------------- ---------------------------
USERD_get_extra_gui_numbers Gets the number of toggles, pulldowns and fields USERD_get_extra_gui_numbers Gets the number of toggles, pulldowns and fields
USERD_get_extra_gui_defaults Gets the default values for the GUI members USERD_get_extra_gui_defaults Gets the default values for the GUI members
@ -379,7 +379,7 @@ New at 2.04
/* ---------------------------------------------------------- /* ----------------------------------------------------------
* *
* Failure criteria in LS-DYNA * Failure criteria in LS-DYNA
* if fail flag == threshold_val1 (0.0) then element fails * if fail flag == threshold_val1 (0.0) then element fails
* logic_criteria2 not used * logic_criteria2 not used
* threshold_val2 not used * threshold_val2 not used
@ -412,7 +412,7 @@ int USERD_get_uns_failed_params(
Z_EQUAL_TO */ Z_EQUAL_TO */
int *threshold_operator2, /* Z_GREATER_THAN, Z_LESS_THAN, int *threshold_operator2, /* Z_GREATER_THAN, Z_LESS_THAN,
Z_EQUAL_TO */ Z_EQUAL_TO */
int *logic_criteria2 int *logic_criteria2
------------------------- -------------------------
@ -421,14 +421,14 @@ Order Routines are called
The various main operations are given basically in the order they will The various main operations are given basically in the order they will
be performed. Within each operation, the order the routines will be be performed. Within each operation, the order the routines will be
called is given. called is given.
1. Setting name in the gui, and specifying one or two input fields 1. Setting name in the gui, and specifying one or two input fields
USERD_get_name_of_reader USERD_get_name_of_reader
USERD_get_reader_descrip (optional) USERD_get_reader_descrip (optional)
USERD_get_extra_gui_numbers (optional) USERD_get_extra_gui_numbers (optional)
USERD_get_extra_gui_defaults (optional) USERD_get_extra_gui_defaults (optional)
2. Getting the reader version (also distinguishes between API's) 2. Getting the reader version (also distinguishes between API's)
@ -437,7 +437,7 @@ called is given.
3. Setting filenames and getting timeset and time info 3. Setting filenames and getting timeset and time info
USERD_set_server_number USERD_set_server_number
USERD_set_extra_gui_data (optional) USERD_set_extra_gui_data (optional)
USERD_set_filenames USERD_set_filenames
USERD_get_number_of_timesets USERD_get_number_of_timesets
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
@ -459,7 +459,7 @@ called is given.
USERD_get_dataset_query_file_info USERD_get_dataset_query_file_info
USERD_get_descrip_lines (for geometry) USERD_get_descrip_lines (for geometry)
USERD_get_number_of_model_parts USERD_get_number_of_model_parts
USERD_get_uns_failed_model_flag USERD_get_uns_failed_model_flag
USERD_get_gold_part_build_info USERD_get_gold_part_build_info
USERD_get_uns_failed_etype_flags USERD_get_uns_failed_etype_flags
USERD_get_ghosts_in_model_flag USERD_get_ghosts_in_model_flag
@ -473,7 +473,7 @@ called is given.
USERD_get_number_of_variables USERD_get_number_of_variables
USERD_get_gold_variable_info USERD_get_gold_variable_info
6. Part building (per part created) 6. Part building (per part created)
both unstructured and structured: both unstructured and structured:
@ -515,12 +515,12 @@ called is given.
dialog is closed) dialog is closed)
7. Loading Variables 7. Loading Variables
constants: constants:
--------- ---------
USERD_set_time_set_and_step USERD_set_time_set_and_step
USERD_get_constant_val USERD_get_constant_val
scalars/vectors/tensors: scalars/vectors/tensors:
------------------------ ------------------------
USERD_get_descrip_lines USERD_get_descrip_lines
@ -534,9 +534,9 @@ called is given.
USERD_set_time_set_and_step USERD_set_time_set_and_step
USERD_get_descrip_lines USERD_get_descrip_lines
USERD_get_part_coords USERD_get_part_coords
USERD_get_uns_failed_model_flag USERD_get_uns_failed_model_flag
USERD_get_uns_failed_etype_flags USERD_get_uns_failed_etype_flags
USERD_get_uns_failed_elist_flags USERD_get_uns_failed_elist_flags
USERD_get_block_coords_by_component USERD_get_block_coords_by_component
changing connectivity (per part): changing connectivity (per part):
@ -566,7 +566,7 @@ called is given.
USERD_get_border_availability (If border representation USERD_get_border_availability (If border representation
USERD_get_border_elements_by_type is selected) USERD_get_border_elements_by_type is selected)
9. Node or Element queries over time 9. Node or Element queries over time
USERD_get_var_value_at_specific USERD_get_var_value_at_specific
@ -606,7 +606,7 @@ Detailed Specifications
Include files: Include files:
-------------- --------------
The following header file is required in any file containing these library The following header file is required in any file containing these library
routines. routines.
#include "global_extern.h" #include "global_extern.h"
@ -853,24 +853,24 @@ USERD_get_block_ghost_flags
(OUT) ghost_flags = 1D array containing ghost flag value (OUT) ghost_flags = 1D array containing ghost flag value
for each block cell. for each block cell.
(Array will have been allocated (Array will have been allocated
(i-1)*(j-1)*(k-1) for the block long) (i-1)*(j-1)*(k-1) for the block long)
possible values are: 0 = non-ghost cell (normal cell) possible values are: 0 = non-ghost cell (normal cell)
>0 = ghost cell >0 = ghost cell
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Only called for structured "block" parts that have some ghost cells * Only called for structured "block" parts that have some ghost cells
as indicated by the USERD_get_ghost_in_block_flag. The model must as indicated by the USERD_get_ghost_in_block_flag. The model must
of course also have been indicated to have some ghost cells in the of course also have been indicated to have some ghost cells in the
USERD_get_ghost_in_model_flag routine. USERD_get_ghost_in_model_flag routine.
* It is sufficient to set the value to be 1 to flag as a ghost cell, * It is sufficient to set the value to be 1 to flag as a ghost cell,
but the value can be any non-zero value, so you could use it to but the value can be any non-zero value, so you could use it to
indicate which block or which server (for Server-of-server use) the indicate which block or which server (for Server-of-server use) the
@ -938,7 +938,7 @@ USERD_get_border_elements_by_type
Description: Description:
----------- -----------
Provides border element connectivity and parent information. Provides border element connectivity and parent information.
Specification: Specification:
------------- -------------
@ -1007,7 +1007,7 @@ USERD_get_border_elements_by_type
(Array will have been allocated (Array will have been allocated
num_of_elements of the type long) num_of_elements of the type long)
Notes: Notes:
----- -----
* Not called unless USERD_get_border_availability returned Z_OK * Not called unless USERD_get_border_availability returned Z_OK
@ -1109,7 +1109,7 @@ USERD_get_dataset_query_file_info
(Typically obtained with a call to the (Typically obtained with a call to the
"stat" system routine) (Is a long) "stat" system routine) (Is a long)
qfiles[].timemod = The time the file was last modified qfiles[].timemod = The time the file was last modified
(Z_MAXTIMLEN is the dimensioned length (Z_MAXTIMLEN is the dimensioned length
of this string) of this string)
(Typically obtained with a call to the (Typically obtained with a call to the
@ -1216,7 +1216,7 @@ USERD_get_element_label_status
on a per part, per type basis, if TRUE status is returned here. on a per part, per type basis, if TRUE status is returned here.
For structured parts, EnSight will assign ids if you return a For structured parts, EnSight will assign ids if you return a
status of TRUE here. You cannot assign them youself!! status of TRUE here. You cannot assign them yourself!!
* Starting at API 2.01: * Starting at API 2.01:
-------------------- --------------------
@ -1243,7 +1243,7 @@ USERD_get_geom_timeset_number -
Returns: Returns:
------- -------
Geom_timeset_number = The timeset number that will be used for geometry. Geom_timeset_number = The timeset number that will be used for geometry.
For example, if USERD_get_number_of timesets For example, if USERD_get_number_of timesets
returns 2, the valid timeset numbers would be returns 2, the valid timeset numbers would be
1 or 2. 1 or 2.
@ -1359,7 +1359,7 @@ USERD_get_gold_part_build_info
long) long)
(OUT) number_of_nodes = Number of unstructured nodes in the part (OUT) number_of_nodes = Number of unstructured nodes in the part
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1642,23 +1642,23 @@ USERD_get_gold_variable_info
Z_PER_ELEM Z_PER_ELEM
(OUT) var_complex = TRUE if complex, FALSE otherwise (OUT) var_complex = TRUE if complex, FALSE otherwise
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_ifilename = Variable imaginary filenames (if complex) (OUT) var_ifilename = Variable imaginary filenames (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables by Z_BUFL long) Num_variables by Z_BUFL long)
(OUT) var_freq = complex frequency (if complex) (OUT) var_freq = complex frequency (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_contran = TRUE if constant changes per time step (OUT) var_contran = TRUE if constant changes per time step
FALSE if constant truly same at all time steps FALSE if constant truly same at all time steps
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
@ -1732,7 +1732,7 @@ USERD_get_ghosts_in_block_flag
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Intended for structured parts only, value will be ignored for * Intended for structured parts only, value will be ignored for
unstructured parts unstructured parts
@ -1756,7 +1756,7 @@ USERD_get_ghosts_in_model_flag
Arguments: Arguments:
--------- ---------
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
@ -1871,7 +1871,7 @@ USERD_get_maxsize_info
--------- ---------
(OUT) max_number_of_nodes = Maximum number of unstructured nodes (OUT) max_number_of_nodes = Maximum number of unstructured nodes
in the part (over all time). in the part (over all time).
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1994,7 +1994,7 @@ USERD_get_name_of_reader
Specification: Specification:
------------- -------------
int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME], int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME],
int *two_fields) int *two_fields)
Returns: Returns:
------- -------
@ -2006,17 +2006,17 @@ USERD_get_name_of_reader
(OUT) reader_name = the name of the your reader or data format. (OUT) reader_name = the name of the your reader or data format.
(max length is Z_MAX_USERD_NAME, which is 20) (max length is Z_MAX_USERD_NAME, which is 20)
(OUT) two_fields = FALSE if only one data field is (OUT) two_fields = FALSE if only one data field is
required. required.
TRUE if two data fields required TRUE if two data fields required
-1 if one field (Geom) required -1 if one field (Geom) required
and one field (Param) is optional and one field (Param) is optional
Param field can contain any text Param field can contain any text
for example a file name, modifiers, for example a file name, modifiers,
etc. that can be used to modify the etc. that can be used to modify the
reader's behavior. reader's behavior.
Notes: Notes:
----- -----
@ -2834,37 +2834,37 @@ USERD_get_number_of_timesets
* If you have a static model, both geometry and variables, you should * If you have a static model, both geometry and variables, you should
return a value of zero. return a value of zero.
* If you have a transient model, then you should return one or more. * If you have a transient model, then you should return one or more.
For example: For example:
Geometry Variables No. of timesets Geometry Variables No. of timesets
--------- ------------------------------ --------------- --------- ------------------------------ ---------------
static static 0 static static 0
static transient, all using same timeset 1 static transient, all using same timeset 1
transient transient, all using same timeset as geom 1 transient transient, all using same timeset as geom 1
static transient, using 3 different timesets 3 static transient, using 3 different timesets 3
transient transient, using 3 different timesets and transient transient, using 3 different timesets and
none of them the same as the none of them the same as the
geometry timeset 4 geometry timeset 4
etc. etc.
NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide
the timeset number to use the timeset number to use
for geometry in: for geometry in:
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
Variables can use the same timeset as the geometry, or can use Variables can use the same timeset as the geometry, or can use
other timesets. More than one variable can use the same timeset. other timesets. More than one variable can use the same timeset.
example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0 example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0
variable 1 provided at these same five steps variable 1 provided at these same five steps
variable 2 provided at 3 steps, 0.5, 1.25, 3.33 variable 2 provided at 3 steps, 0.5, 1.25, 3.33
This routine should return a value of 2, because only This routine should return a value of 2, because only
two different timesets are needed. Timeset 1 would be for the two different timesets are needed. Timeset 1 would be for the
geometry and variable 1 (they both use it). Timeset 2 would geometry and variable 1 (they both use it). Timeset 2 would
@ -3146,7 +3146,7 @@ USERD_get_part_elements_by_type
conn_array[100][4] when called with Z_QUA04 conn_array[100][4] when called with Z_QUA04
conn_array[30][8] when called with Z_HEX08 conn_array[30][8] when called with Z_HEX08
Notes: Notes:
----- -----
* Not called unless Num_unstructured_parts is > 0 * Not called unless Num_unstructured_parts is > 0
@ -3280,7 +3280,7 @@ USERD_get_sol_times
Description: Description:
----------- -----------
Get the solution times associated with each time step for Get the solution times associated with each time step for
desired timeset. desired timeset.
Specification: Specification:
@ -3296,7 +3296,7 @@ USERD_get_sol_times
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -3332,7 +3332,7 @@ USERD_get_timeset_description -
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -3445,22 +3445,22 @@ USERD_get_var_by_component
(IN) imag_data = TRUE if imag component (IN) imag_data = TRUE if imag component
FALSE if real component FALSE if real component
(IN) component = The component: (0 if Z_SCALAR) (IN) component = The component: (0 if Z_SCALAR)
(0 - 2 if Z_VECTOR) (0 - 2 if Z_VECTOR)
(0 - 5 if Z_TENSOR) (0 - 5 if Z_TENSOR)
(0 - 8 if Z_TENSOR9) (0 - 8 if Z_TENSOR9)
* 6 Symmetric Indicies, 0:5 * * 6 Symmetric Indices, 0:5 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
* T = | 22 23 | = | 1 5 | * * T = | 22 23 | = | 1 5 | *
* | | | | * * | | | | *
* | 33 | | 2 | * * | 33 | | 2 | *
* 9 General Indicies, 0:8 *
* 9 General Indices, 0:8 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
@ -3468,7 +3468,7 @@ USERD_get_var_by_component
* | | | | * * | | | | *
* | 31 32 33 | | 7 8 2 | * * | 31 32 33 | | 7 8 2 | *
(OUT) var_array (OUT) var_array
----------------------------------------------------------------------- -----------------------------------------------------------------------
(IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!) (IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!)
@ -3490,7 +3490,7 @@ USERD_get_var_by_component
if Z_PER_ELEM: = 1D array containing variable component if Z_PER_ELEM: = 1D array containing variable component
value for each element of a particular value for each element of a particular
part and type. part and type.
(Array will have been allocated (Array will have been allocated
(number_of_elements[which_part][which_type] + 1) (number_of_elements[which_part][which_type] + 1)
long. See USERD_get_gold_part_build_info) long. See USERD_get_gold_part_build_info)
@ -3552,7 +3552,7 @@ USERD_get_var_value_at_specific
If Z_PER_NODE: If Z_PER_NODE:
= The node number. This is not the id, but is = The node number. This is not the id, but is
the index of the global node the index of the global node
list (1 based), or the block's list (1 based), or the block's
node list (1 based). node list (1 based).
@ -3761,17 +3761,17 @@ USERD_set_filenames
(IN) param_2 = The usage of this string depends on (IN) param_2 = The usage of this string depends on
'two_fields' in USERD_get_name_of_reader. 'two_fields' in USERD_get_name_of_reader.
If two_fields is FALSE then it's empty. If two_fields is FALSE then it's empty.
If two_fields is TRUE, this is the If two_fields is TRUE, this is the
manditory results file entered manditory results file entered
into the result field of the data dialog. into the result field of the data dialog.
If two_fields is -1, then this contains If two_fields is -1, then this contains
optional text (filenames, modifiers, etc.) optional text (filenames, modifiers, etc.)
that can be parsed and used to modify that can be parsed and used to modify
reader reader
(IN) the_path = the path info from the data dialog. (IN) the_path = the path info from the data dialog.
Note: filename_1 and filename_2 have already Note: filename_1 and filename_2 have already
@ -3820,7 +3820,7 @@ USERD_set_server_number
something that you can take advantage of. If your data is already something that you can take advantage of. If your data is already
partitioned in some manner, such that you can access the proper partitioned in some manner, such that you can access the proper
portions using this information. portions using this information.
For all non-SOS uses, this will simply be 1 of 1 For all non-SOS uses, this will simply be 1 of 1
@ -3846,7 +3846,7 @@ USERD_set_time_set_and_step
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (1 based). (IN) timeset_number = the timeset number (1 based).
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid timeset_number's returns 2, the valid timeset_number's
would be 1 and 2. would be 1 and 2.
@ -4015,14 +4015,14 @@ USERD_rigidbody_values
Arguments: Arguments:
--------- ---------
(IN) part_number = The part number (IN) part_number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
(OUT) values values[0] = IX (x location) (OUT) values values[0] = IX (x location)
values[1] = IY (y location) values[1] = IY (y location)
values[2] = IZ (z location) values[2] = IZ (z location)
@ -4067,7 +4067,7 @@ USERD_set_right_side
------------------------------------------------------------------ ------------------------------------------------------------------
ENHANCED GUI ROUTINES ENHANCED GUI ROUTINES
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_extra_gui_numbers USERD_get_extra_gui_numbers
@ -4091,7 +4091,7 @@ USERD_get_extra_gui_numbers
Arguments: Arguments:
--------- ---------
(OUT) num_Toggles = number of toggles that will be provided (OUT) num_Toggles = number of toggles that will be provided
num_pulldowns = number of pulldowns that will be provided num_pulldowns = number of pulldowns that will be provided
num_fields = number of fields that will be provided num_fields = number of fields that will be provided
@ -4111,63 +4111,63 @@ USERD_get_extra_gui_numbers
simply delete these routines, or change their simply delete these routines, or change their
names to something such as names to something such as
USERD_DISABLED_get_extra_gui_defaults USERD_DISABLED_get_extra_gui_defaults
The presence of these routines The presence of these routines
will ensure that EnSight will call them and will ensure that EnSight will call them and
use their data to modify the extraction parameters set use their data to modify the extraction parameters set
with some or all of the following: with some or all of the following:
toggles, pulldown menu and fields. toggles, pulldown menu and fields.
The user can then interact with the enhanced The user can then interact with the enhanced
GUI and then send their choices to GUI and then send their choices to
USERD_set_extra_gui_data USERD_set_extra_gui_data
Therefore if USERD_get_extra_gui_numbers Therefore if USERD_get_extra_gui_numbers
exists then the other two must exist. exists then the other two must exist.
If none exist, then the GUI will be unchanged. If none exist, then the GUI will be unchanged.
Toggle data will return an integer Toggle data will return an integer
TRUE if checked TRUE if checked
FALSE if unchecked FALSE if unchecked
Pulldown menu will return an integer representing Pulldown menu will return an integer representing
the menu item selected the menu item selected
Field will return a string Z_LEN_GUI_FIELD_STR long. Field will return a string Z_LEN_GUI_FIELD_STR long.
If all the enhanced GUI features are enabled it If all the enhanced GUI features are enabled it
might look something like this might look something like this
=================================================== ===================================================
[] Title 1 [X] Title 3 [] Title 1 [X] Title 3
[X]Title 2 [X] Title 4 [X]Title 2 [X] Title 4
Pulldown Menu -> Pulldown Menu ->
Menu Choice 1 Menu Choice 1
Menu Choice 2 Menu Choice 2
Menu Choice 3 Menu Choice 3
Data Field Title 1 ____________________________ Data Field Title 1 ____________________________
Data Field Title 2 ____________________________ Data Field Title 2 ____________________________
===================================================== =====================================================
This routine defines the numbers of toggles, pulldowns & fields This routine defines the numbers of toggles, pulldowns & fields
The following are defined in the global_extern.h The following are defined in the global_extern.h
Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns
Z_LEN_GUI_PULL_STR max length of GUI pulldown string Z_LEN_GUI_PULL_STR max length of GUI pulldown string
Z_LEN_GUI_FIELD_STR max length of field string Z_LEN_GUI_FIELD_STR max length of field string
Z_LEN_GUI_TITLE_STR max length of title string Z_LEN_GUI_TITLE_STR max length of title string
The library is loaded, this routine is The library is loaded, this routine is
called, then the library is unloaded. called, then the library is unloaded.
Do not define globals in this routine Do not define globals in this routine
as when the library is unloaded, you'll as when the library is unloaded, you'll
lose them. lose them.
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_extra_gui_defaults USERD_get_extra_gui_defaults
@ -4201,17 +4201,17 @@ USERD_get_extra_gui_defaults
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
toggle_default_status = Setting for each toggle (TRUE or FALSE) toggle_default_status = Setting for each toggle (TRUE or FALSE)
array dimension is [num_toggles] long array dimension is [num_toggles] long
pulldown_Title = title for each pulldown pulldown_Title = title for each pulldown
array dimension is [num_pulldowns] by array dimension is [num_pulldowns] by
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
pulldown_number_in_list = number of items in each pulldown pulldown_number_in_list = number of items in each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_default_selection = pulldown item selection for each pulldown pulldown_default_selection = pulldown item selection for each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_item_strings = pulldown item strings pulldown_item_strings = pulldown item strings
array is [num_pulldowns] by array is [num_pulldowns] by
@ -4231,7 +4231,7 @@ USERD_get_extra_gui_defaults
Notes: Notes:
----- -----
* The library is loaded, this routine is called, then the library is unloaded. * The library is loaded, this routine is called, then the library is unloaded.
* Do not define globals in this routine as when the library is unloaded, you'll * Do not define globals in this routine as when the library is unloaded, you'll
lose them. lose them.
@ -4272,7 +4272,7 @@ USERD_set_extra_gui_data
* This routine is called when the library is permanently * This routine is called when the library is permanently
loaded to the EnSight session, so define your globals loaded to the EnSight session, so define your globals
in this and later routines. in this and later routines.
* It's up to you to change your reader behavior according to * It's up to you to change your reader behavior according to
user entries! user entries!
@ -4302,7 +4302,7 @@ USERD_get_var_extract_gui_numbers
Arguments: Arguments:
--------- ---------
(OUT) num_Toggles = number of toggles that will be provided (OUT) num_Toggles = number of toggles that will be provided
num_pulldowns = number of pulldowns that will be provided num_pulldowns = number of pulldowns that will be provided
num_fields = number of fields that will be provided num_fields = number of fields that will be provided
@ -4321,63 +4321,63 @@ USERD_get_var_extract_gui_numbers
simply delete these routines, or change their simply delete these routines, or change their
names to something such as names to something such as
USERD_DISABLED_get_var_extract_gui_defaults USERD_DISABLED_get_var_extract_gui_defaults
The presence of these routines The presence of these routines
will ensure that EnSight will call them and will ensure that EnSight will call them and
use their data to modify the extraction parameters set use their data to modify the extraction parameters set
with some or all of the following: with some or all of the following:
toggles, pulldown menu and fields. toggles, pulldown menu and fields.
The user can then interact with the enhanced The user can then interact with the enhanced
GUI and then send their choices to GUI and then send their choices to
USERD_set_extra_gui_data USERD_set_extra_gui_data
Therefore if USERD_get_var_extract_gui_numbers Therefore if USERD_get_var_extract_gui_numbers
exists then the other two must exist. exists then the other two must exist.
If none exist, then the GUI will be unchanged. If none exist, then the GUI will be unchanged.
Toggle data will return an integer Toggle data will return an integer
TRUE if checked TRUE if checked
FALSE if unchecked FALSE if unchecked
Pulldown menu will return an integer representing Pulldown menu will return an integer representing
the menu item selected the menu item selected
Field will return a string Z_LEN_GUI_FIELD_STR long. Field will return a string Z_LEN_GUI_FIELD_STR long.
If all the enhanced GUI features are enabled it If all the enhanced GUI features are enabled it
might look something like this might look something like this
=================================================== ===================================================
[] Title 1 [X] Title 3 [] Title 1 [X] Title 3
[X]Title 2 [X] Title 4 [X]Title 2 [X] Title 4
Pulldown Menu -> Pulldown Menu ->
Menu Choice 1 Menu Choice 1
Menu Choice 2 Menu Choice 2
Menu Choice 3 Menu Choice 3
Data Field Title 1 ____________________________ Data Field Title 1 ____________________________
Data Field Title 2 ____________________________ Data Field Title 2 ____________________________
===================================================== =====================================================
This routine defines the numbers of toggles, pulldowns & fields This routine defines the numbers of toggles, pulldowns & fields
The following are defined in the global_extern.h The following are defined in the global_extern.h
Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns
Z_LEN_GUI_PULL_STR max length of GUI pulldown string Z_LEN_GUI_PULL_STR max length of GUI pulldown string
Z_LEN_GUI_FIELD_STR max length of field string Z_LEN_GUI_FIELD_STR max length of field string
Z_LEN_GUI_TITLE_STR max length of title string Z_LEN_GUI_TITLE_STR max length of title string
The library is loaded, this routine is The library is loaded, this routine is
called, then the library is unloaded. called, then the library is unloaded.
Do not define globals in this routine Do not define globals in this routine
as when the library is unloaded, you'll as when the library is unloaded, you'll
lose them. lose them.
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_var_extract_gui_defaults USERD_get_var_extract_gui_defaults
@ -4411,17 +4411,17 @@ USERD_get_var_extract_gui_defaults
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
toggle_default_status = Setting for each toggle (TRUE or FALSE) toggle_default_status = Setting for each toggle (TRUE or FALSE)
array dimension is [num_toggles] long array dimension is [num_toggles] long
pulldown_Title = title for each pulldown pulldown_Title = title for each pulldown
array dimension is [num_pulldowns] by array dimension is [num_pulldowns] by
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
pulldown_number_in_list = number of items in each pulldown pulldown_number_in_list = number of items in each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_default_selection = pulldown item selection for each pulldown pulldown_default_selection = pulldown item selection for each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_item_strings = pulldown item strings pulldown_item_strings = pulldown item strings
array is [num_pulldowns] by array is [num_pulldowns] by
@ -4441,7 +4441,7 @@ USERD_get_var_extract_gui_defaults
Notes: Notes:
----- -----
* The library is loaded, this routine is called, then the library is unloaded. * The library is loaded, this routine is called, then the library is unloaded.
* Do not define globals in this routine as when the library is unloaded, you'll * Do not define globals in this routine as when the library is unloaded, you'll
lose them. lose them.
@ -4482,7 +4482,7 @@ USERD_set_var_extract_gui_data
* This routine is called when the library is permanently * This routine is called when the library is permanently
loaded to the EnSight session, so define your globals loaded to the EnSight session, so define your globals
in this and later routines. in this and later routines.
* It's up to you to change your reader behavior according to * It's up to you to change your reader behavior according to
user entries! user entries!
@ -4494,19 +4494,19 @@ USERD_set_var_extract_gui_data
/* ---------------------------------------------------------- /* ----------------------------------------------------------
* New in EnSight 8 is the capability to remove (fail) elements * New in EnSight 8 is the capability to remove (fail) elements
* based on variable threshold values. Basically the variable * based on variable threshold values. Basically the variable
* name, a couple of thresholds, a couple of values and a logic * name, a couple of thresholds, a couple of values and a logic
* criteria are read in from this routine. Every element that * criteria are read in from this routine. Every element that
* satisfies the failure criteria is removed and not used in * satisfies the failure criteria is removed and not used in
* EnSight calculations. * EnSight calculations.
* *
* Example Failure criteria * Example Failure criteria
* Let fail_var_name = "fail_flag" * Let fail_var_name = "fail_flag"
* threshold_val1 = 0 * threshold_val1 = 0
* threshold_operator1 = Z_EQUAL_TO * threshold_operator1 = Z_EQUAL_TO
* logic_criteria2 not used * logic_criteria2 not used
* threshold_val2 not used * threshold_val2 not used
* threshold_operator2 not used * threshold_operator2 not used
* For each value of "fail_flag" at each element, * For each value of "fail_flag" at each element,
* if fail flag == threshold_val1 (0.0) then element fails * if fail flag == threshold_val1 (0.0) then element fails
* Return (Z_ERR) if this is not used. * Return (Z_ERR) if this is not used.
* Return (Z_OK) if failed element feature should be used * Return (Z_OK) if failed element feature should be used
@ -4535,7 +4535,7 @@ int USERD_get_uns_failed_params(
Z_EQUAL_TO */ Z_EQUAL_TO */
int *threshold_operator2, /* Z_GREATER_THAN, Z_LESS_THAN, int *threshold_operator2, /* Z_GREATER_THAN, Z_LESS_THAN,
Z_EQUAL_TO */ Z_EQUAL_TO */
int *logic_criteria2 int *logic_criteria2

View File

@ -48,10 +48,10 @@ reader itself. (Can actually be added to pre-2.05 readers)
***>> API 2.04 additional capabilities (beyond API 2.03): ***>> API 2.04 additional capabilities (beyond API 2.03):
Routines to handle failed elements. Basically Routines to handle failed elements. Basically
a.One routine to return a flag indicating the existence of a.One routine to return a flag indicating the existence of
failed elements in at least one part in at least one failed elements in at least one part in at least one
timestep in the model. timestep in the model.
b.A second routine to return a matrix of flags indexed by part and b.A second routine to return a matrix of flags indexed by part and
element type indicating which parts and element types have failed element type indicating which parts and element types have failed
elements at the current time step. elements at the current time step.
@ -67,7 +67,7 @@ c.Finally a third routine to return an array of flags for a given
**************************************************************************** ****************************************************************************
Note: Only the the Ensight Gold example reader, has been moved to Note: Only the the Ensight Gold example reader, has been moved to
this 2.06 API level. And it is purely for an example - it does not this 2.06 API level. And it is purely for an example - it does not
actually provide a benefit. actually provide a benefit.
**************************************************************************** ****************************************************************************
@ -99,10 +99,10 @@ The process for producing a user defined reader is:
You may find it useful to place your library source in this area as You may find it useful to place your library source in this area as
well, but are not limited to this location. well, but are not limited to this location.
* ===> The descriptions of each library routine and the order that the * ===> The descriptions of each library routine and the order that the
routines are called, which is provided in this file, along with routines are called, which is provided in this file, along with
the example libraries, should make it possible for you to produce the example libraries, should make it possible for you to produce
code for your own data reader. code for your own data reader.
2. Produce the dynamic shared library. 2. Produce the dynamic shared library.
@ -150,7 +150,7 @@ The process for producing a user defined reader is:
If you choose to use a different build environment for your reader, If you choose to use a different build environment for your reader,
you should take care to use compatible compilation flags to ensure you should take care to use compatible compilation flags to ensure
compatibilty with the EnSight executables, most notably on the SGI compatibility with the EnSight executables, most notably on the SGI
and HP-UX 11.0 platforms, which should use the following flags: and HP-UX 11.0 platforms, which should use the following flags:
sgi_6.2_o32: -mips2 sgi_6.2_o32: -mips2
@ -244,7 +244,7 @@ The process for producing a user defined reader is:
location, and users can set the ENSIGHT7_READER variable to access them: location, and users can set the ENSIGHT7_READER variable to access them:
setenv ENSIGHT7_READER /usr/local/lib/e7readers setenv ENSIGHT7_READER /usr/local/lib/e7readers
A user working on a new reader may compile the reader and place it in A user working on a new reader may compile the reader and place it in
a directory specified by the library path: a directory specified by the library path:
@ -289,7 +289,7 @@ USERD_get_block_ghost_flags block ghost cell flags
These routines, which formerly were only for unstructured data, will now These routines, which formerly were only for unstructured data, will now
also be called for structured data if you specify that ids will be given also be called for structured data if you specify that ids will be given
in the USERD_get_node_label_status and USERD_get_element_label_status rotuines in the USERD_get_node_label_status and USERD_get_element_label_status rotuines
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
USERD_get_part_node_ids part's node ids USERD_get_part_node_ids part's node ids
USERD_get_part_element_ids_by_type part's element ids USERD_get_part_element_ids_by_type part's element ids
@ -368,7 +368,7 @@ USERD_bkup archive routine
USERD_exit_routine cleanup upon exit routine USERD_exit_routine cleanup upon exit routine
USERD_get_uns_failed_params Gets thresholds/criteria for failure USERD_get_uns_failed_params Gets thresholds/criteria for failure
USERD_rigidbody_existence Returns whether rigid body transformation USERD_rigidbody_existence Returns whether rigid body transformation
data exists for the model. data exists for the model.
@ -391,14 +391,14 @@ Order Routines are called
The various main operations are given basically in the order they will The various main operations are given basically in the order they will
be performed. Within each operation, the order the routines will be be performed. Within each operation, the order the routines will be
called is given. called is given.
1. Setting name in the gui, and specifying one or two input fields 1. Setting name in the gui, and specifying one or two input fields
USERD_get_name_of_reader USERD_get_name_of_reader
USERD_get_reader_descrip (optional) USERD_get_reader_descrip (optional)
USERD_get_extra_gui_numbers (optional) USERD_get_extra_gui_numbers (optional)
USERD_get_extra_gui_defaults (optional) USERD_get_extra_gui_defaults (optional)
2. Getting the reader version (also distinguishes between API's) 2. Getting the reader version (also distinguishes between API's)
@ -410,7 +410,7 @@ called is given.
USERD_get_extra_gui_defaults routine) USERD_get_extra_gui_defaults routine)
USERD_get_structured_reader_cinching USERD_get_structured_reader_cinching
USERD_set_server_number USERD_set_server_number
USERD_set_extra_gui_data (optional) USERD_set_extra_gui_data (optional)
USERD_set_filenames USERD_set_filenames
USERD_get_number_of_timesets USERD_get_number_of_timesets
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
@ -445,7 +445,7 @@ called is given.
USERD_get_number_of_variables USERD_get_number_of_variables
USERD_get_gold_variable_info USERD_get_gold_variable_info
6. Part building (per part created) 6. Part building (per part created)
both unstructured and structured: both unstructured and structured:
@ -487,12 +487,12 @@ called is given.
dialog is closed) dialog is closed)
7. Loading Variables 7. Loading Variables
constants: constants:
--------- ---------
USERD_set_time_set_and_step USERD_set_time_set_and_step
USERD_get_constant_val USERD_get_constant_val
scalars/vectors/tensors: scalars/vectors/tensors:
------------------------ ------------------------
USERD_get_descrip_lines USERD_get_descrip_lines
@ -536,7 +536,7 @@ called is given.
USERD_get_border_availability (If border representation USERD_get_border_availability (If border representation
USERD_get_border_elements_by_type is selected) USERD_get_border_elements_by_type is selected)
9. Node or Element queries over time 9. Node or Element queries over time
USERD_get_var_value_at_specific USERD_get_var_value_at_specific
@ -576,7 +576,7 @@ Detailed Specifications
Include files: Include files:
-------------- --------------
The following header file is required in any file containing these library The following header file is required in any file containing these library
routines. routines.
#include "global_extern.h" #include "global_extern.h"
@ -823,24 +823,24 @@ USERD_get_block_ghost_flags
(OUT) ghost_flags = 1D array containing ghost flag value (OUT) ghost_flags = 1D array containing ghost flag value
for each block cell. for each block cell.
(Array will have been allocated (Array will have been allocated
(i-1)*(j-1)*(k-1) for the block long) (i-1)*(j-1)*(k-1) for the block long)
possible values are: 0 = non-ghost cell (normal cell) possible values are: 0 = non-ghost cell (normal cell)
>0 = ghost cell >0 = ghost cell
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Only called for structured "block" parts that have some ghost cells * Only called for structured "block" parts that have some ghost cells
as indicated by the USERD_get_ghost_in_block_flag. The model must as indicated by the USERD_get_ghost_in_block_flag. The model must
of course also have been indicated to have some ghost cells in the of course also have been indicated to have some ghost cells in the
USERD_get_ghost_in_model_flag routine. USERD_get_ghost_in_model_flag routine.
* It is sufficient to set the value to be 1 to flag as a ghost cell, * It is sufficient to set the value to be 1 to flag as a ghost cell,
but the value can be any non-zero value, so you could use it to but the value can be any non-zero value, so you could use it to
indicate which block or which server (for Server-of-server use) the indicate which block or which server (for Server-of-server use) the
@ -908,7 +908,7 @@ USERD_get_border_elements_by_type
Description: Description:
----------- -----------
Provides border element connectivity and parent information. Provides border element connectivity and parent information.
Specification: Specification:
------------- -------------
@ -977,7 +977,7 @@ USERD_get_border_elements_by_type
(Array will have been allocated (Array will have been allocated
num_of_elements of the type long) num_of_elements of the type long)
Notes: Notes:
----- -----
* Not called unless USERD_get_border_availability returned Z_OK * Not called unless USERD_get_border_availability returned Z_OK
@ -1079,7 +1079,7 @@ USERD_get_dataset_query_file_info
(Typically obtained with a call to the (Typically obtained with a call to the
"stat" system routine) (Is a long) "stat" system routine) (Is a long)
qfiles[].timemod = The time the file was last modified qfiles[].timemod = The time the file was last modified
(Z_MAXTIMLEN is the dimensioned length (Z_MAXTIMLEN is the dimensioned length
of this string) of this string)
(Typically obtained with a call to the (Typically obtained with a call to the
@ -1186,7 +1186,7 @@ USERD_get_element_label_status
on a per part, per type basis, if TRUE status is returned here. on a per part, per type basis, if TRUE status is returned here.
For structured parts, EnSight will assign ids if you return a For structured parts, EnSight will assign ids if you return a
status of TRUE here. You cannot assign them youself!! status of TRUE here. You cannot assign them yourself!!
* Starting at API 2.01: * Starting at API 2.01:
-------------------- --------------------
@ -1213,7 +1213,7 @@ USERD_get_geom_timeset_number -
Returns: Returns:
------- -------
Geom_timeset_number = The timeset number that will be used for geometry. Geom_timeset_number = The timeset number that will be used for geometry.
For example, if USERD_get_number_of timesets For example, if USERD_get_number_of timesets
returns 2, the valid timeset numbers would be returns 2, the valid timeset numbers would be
1 or 2. 1 or 2.
@ -1329,7 +1329,7 @@ USERD_get_gold_part_build_info
long) long)
(OUT) number_of_nodes = Number of unstructured nodes in the part (OUT) number_of_nodes = Number of unstructured nodes in the part
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1612,23 +1612,23 @@ USERD_get_gold_variable_info
Z_PER_ELEM Z_PER_ELEM
(OUT) var_complex = TRUE if complex, FALSE otherwise (OUT) var_complex = TRUE if complex, FALSE otherwise
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_ifilename = Variable imaginary filenames (if complex) (OUT) var_ifilename = Variable imaginary filenames (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables by Z_BUFL long) Num_variables by Z_BUFL long)
(OUT) var_freq = complex frequency (if complex) (OUT) var_freq = complex frequency (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_contran = TRUE if constant changes per time step (OUT) var_contran = TRUE if constant changes per time step
FALSE if constant truly same at all time steps FALSE if constant truly same at all time steps
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
@ -1702,7 +1702,7 @@ USERD_get_ghosts_in_block_flag
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Intended for structured parts only, value will be ignored for * Intended for structured parts only, value will be ignored for
unstructured parts unstructured parts
@ -1726,7 +1726,7 @@ USERD_get_ghosts_in_model_flag
Arguments: Arguments:
--------- ---------
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
@ -1841,7 +1841,7 @@ USERD_get_maxsize_info
--------- ---------
(OUT) max_number_of_nodes = Maximum number of unstructured nodes (OUT) max_number_of_nodes = Maximum number of unstructured nodes
in the part (over all time). in the part (over all time).
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1964,7 +1964,7 @@ USERD_get_name_of_reader
Specification: Specification:
------------- -------------
int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME], int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME],
int *two_fields) int *two_fields)
Returns: Returns:
------- -------
@ -1976,17 +1976,17 @@ USERD_get_name_of_reader
(OUT) reader_name = the name of the your reader or data format. (OUT) reader_name = the name of the your reader or data format.
(max length is Z_MAX_USERD_NAME, which is 20) (max length is Z_MAX_USERD_NAME, which is 20)
(OUT) two_fields = FALSE if only one data field is (OUT) two_fields = FALSE if only one data field is
required. required.
TRUE if two data fields required TRUE if two data fields required
-1 if one field (Geom) required -1 if one field (Geom) required
and one field (Param) is optional and one field (Param) is optional
Param field can contain any text Param field can contain any text
for example a file name, modifiers, for example a file name, modifiers,
etc. that can be used to modify the etc. that can be used to modify the
reader's behavior. reader's behavior.
Notes: Notes:
----- -----
@ -2804,37 +2804,37 @@ USERD_get_number_of_timesets
* If you have a static model, both geometry and variables, you should * If you have a static model, both geometry and variables, you should
return a value of zero. return a value of zero.
* If you have a transient model, then you should return one or more. * If you have a transient model, then you should return one or more.
For example: For example:
Geometry Variables No. of timesets Geometry Variables No. of timesets
--------- ------------------------------ --------------- --------- ------------------------------ ---------------
static static 0 static static 0
static transient, all using same timeset 1 static transient, all using same timeset 1
transient transient, all using same timeset as geom 1 transient transient, all using same timeset as geom 1
static transient, using 3 different timesets 3 static transient, using 3 different timesets 3
transient transient, using 3 different timesets and transient transient, using 3 different timesets and
none of them the same as the none of them the same as the
geometry timeset 4 geometry timeset 4
etc. etc.
NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide
the timeset number to use the timeset number to use
for geometry in: for geometry in:
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
Variables can use the same timeset as the geometry, or can use Variables can use the same timeset as the geometry, or can use
other timesets. More than one variable can use the same timeset. other timesets. More than one variable can use the same timeset.
example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0 example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0
variable 1 provided at these same five steps variable 1 provided at these same five steps
variable 2 provided at 3 steps, 0.5, 1.25, 3.33 variable 2 provided at 3 steps, 0.5, 1.25, 3.33
This routine should return a value of 2, because only This routine should return a value of 2, because only
two different timesets are needed. Timeset 1 would be for the two different timesets are needed. Timeset 1 would be for the
geometry and variable 1 (they both use it). Timeset 2 would geometry and variable 1 (they both use it). Timeset 2 would
@ -3116,7 +3116,7 @@ USERD_get_part_elements_by_type
conn_array[100][4] when called with Z_QUA04 conn_array[100][4] when called with Z_QUA04
conn_array[30][8] when called with Z_HEX08 conn_array[30][8] when called with Z_HEX08
Notes: Notes:
----- -----
* Not called unless Num_unstructured_parts is > 0 * Not called unless Num_unstructured_parts is > 0
@ -3250,7 +3250,7 @@ USERD_get_sol_times
Description: Description:
----------- -----------
Get the solution times associated with each time step for Get the solution times associated with each time step for
desired timeset. desired timeset.
Specification: Specification:
@ -3266,7 +3266,7 @@ USERD_get_sol_times
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -3302,7 +3302,7 @@ USERD_get_timeset_description -
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -3415,22 +3415,22 @@ USERD_get_var_by_component
(IN) imag_data = TRUE if imag component (IN) imag_data = TRUE if imag component
FALSE if real component FALSE if real component
(IN) component = The component: (0 if Z_SCALAR) (IN) component = The component: (0 if Z_SCALAR)
(0 - 2 if Z_VECTOR) (0 - 2 if Z_VECTOR)
(0 - 5 if Z_TENSOR) (0 - 5 if Z_TENSOR)
(0 - 8 if Z_TENSOR9) (0 - 8 if Z_TENSOR9)
* 6 Symmetric Indicies, 0:5 * * 6 Symmetric Indices, 0:5 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
* T = | 22 23 | = | 1 5 | * * T = | 22 23 | = | 1 5 | *
* | | | | * * | | | | *
* | 33 | | 2 | * * | 33 | | 2 | *
* 9 General Indicies, 0:8 *
* 9 General Indices, 0:8 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
@ -3438,7 +3438,7 @@ USERD_get_var_by_component
* | | | | * * | | | | *
* | 31 32 33 | | 7 8 2 | * * | 31 32 33 | | 7 8 2 | *
(OUT) var_array (OUT) var_array
----------------------------------------------------------------------- -----------------------------------------------------------------------
(IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!) (IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!)
@ -3460,7 +3460,7 @@ USERD_get_var_by_component
if Z_PER_ELEM: = 1D array containing variable component if Z_PER_ELEM: = 1D array containing variable component
value for each element of a particular value for each element of a particular
part and type. part and type.
(Array will have been allocated (Array will have been allocated
(number_of_elements[which_part][which_type] + 1) (number_of_elements[which_part][which_type] + 1)
long. See USERD_get_gold_part_build_info) long. See USERD_get_gold_part_build_info)
@ -3522,7 +3522,7 @@ USERD_get_var_value_at_specific
If Z_PER_NODE: If Z_PER_NODE:
= The node number. This is not the id, but is = The node number. This is not the id, but is
the index of the global node the index of the global node
list (1 based), or the block's list (1 based), or the block's
node list (1 based). node list (1 based).
@ -3731,17 +3731,17 @@ USERD_set_filenames
(IN) param_2 = The usage of this string depends on (IN) param_2 = The usage of this string depends on
'two_fields' in USERD_get_name_of_reader. 'two_fields' in USERD_get_name_of_reader.
If two_fields is FALSE then it's empty. If two_fields is FALSE then it's empty.
If two_fields is TRUE, this is the If two_fields is TRUE, this is the
manditory results file entered manditory results file entered
into the result field of the data dialog. into the result field of the data dialog.
If two_fields is -1, then this contains If two_fields is -1, then this contains
optional text (filenames, modifiers, etc.) optional text (filenames, modifiers, etc.)
that can be parsed and used to modify that can be parsed and used to modify
reader reader
(IN) the_path = the path info from the data dialog. (IN) the_path = the path info from the data dialog.
Note: filename_1 and filename_2 have already Note: filename_1 and filename_2 have already
@ -3790,7 +3790,7 @@ USERD_set_server_number
something that you can take advantage of. If your data is already something that you can take advantage of. If your data is already
partitioned in some manner, such that you can access the proper partitioned in some manner, such that you can access the proper
portions using this information. portions using this information.
For all non-SOS uses, this will simply be 1 of 1 For all non-SOS uses, this will simply be 1 of 1
@ -3816,7 +3816,7 @@ USERD_set_time_set_and_step
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (1 based). (IN) timeset_number = the timeset number (1 based).
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid timeset_number's returns 2, the valid timeset_number's
would be 1 and 2. would be 1 and 2.
@ -3985,14 +3985,14 @@ USERD_rigidbody_values
Arguments: Arguments:
--------- ---------
(IN) part_number = The part number (IN) part_number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
(OUT) values values[0] = IX (x location) (OUT) values values[0] = IX (x location)
values[1] = IY (y location) values[1] = IY (y location)
values[2] = IZ (z location) values[2] = IZ (z location)
@ -4037,7 +4037,7 @@ USERD_set_right_side
------------------------------------------------------------------ ------------------------------------------------------------------
ENHANCED GUI ROUTINES ENHANCED GUI ROUTINES
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_extra_gui_numbers USERD_get_extra_gui_numbers
@ -4061,7 +4061,7 @@ USERD_get_extra_gui_numbers
Arguments: Arguments:
--------- ---------
(OUT) num_Toggles = number of toggles that will be provided (OUT) num_Toggles = number of toggles that will be provided
num_pulldowns = number of pulldowns that will be provided num_pulldowns = number of pulldowns that will be provided
num_fields = number of fields that will be provided num_fields = number of fields that will be provided
@ -4081,63 +4081,63 @@ USERD_get_extra_gui_numbers
simply delete these routines, or change their simply delete these routines, or change their
names to something such as names to something such as
USERD_DISABLED_get_extra_gui_defaults USERD_DISABLED_get_extra_gui_defaults
The presence of these routines The presence of these routines
will ensure that EnSight will call them and will ensure that EnSight will call them and
use their data to modify the extraction parameters set use their data to modify the extraction parameters set
with some or all of the following: with some or all of the following:
toggles, pulldown menu and fields. toggles, pulldown menu and fields.
The user can then interact with the enhanced The user can then interact with the enhanced
GUI and then send their choices to GUI and then send their choices to
USERD_set_extra_gui_data USERD_set_extra_gui_data
Therefore if USERD_get_extra_gui_numbers Therefore if USERD_get_extra_gui_numbers
exists then the other two must exist. exists then the other two must exist.
If none exist, then the GUI will be unchanged. If none exist, then the GUI will be unchanged.
Toggle data will return an integer Toggle data will return an integer
TRUE if checked TRUE if checked
FALSE if unchecked FALSE if unchecked
Pulldown menu will return an integer representing Pulldown menu will return an integer representing
the menu item selected the menu item selected
Field will return a string Z_LEN_GUI_FIELD_STR long. Field will return a string Z_LEN_GUI_FIELD_STR long.
If all the enhanced GUI features are enabled it If all the enhanced GUI features are enabled it
might look something like this might look something like this
=================================================== ===================================================
[] Title 1 [X] Title 3 [] Title 1 [X] Title 3
[X]Title 2 [X] Title 4 [X]Title 2 [X] Title 4
Pulldown Menu -> Pulldown Menu ->
Menu Choice 1 Menu Choice 1
Menu Choice 2 Menu Choice 2
Menu Choice 3 Menu Choice 3
Data Field Title 1 ____________________________ Data Field Title 1 ____________________________
Data Field Title 2 ____________________________ Data Field Title 2 ____________________________
===================================================== =====================================================
This routine defines the numbers of toggles, pulldowns & fields This routine defines the numbers of toggles, pulldowns & fields
The following are defined in the global_extern.h The following are defined in the global_extern.h
Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns
Z_LEN_GUI_PULL_STR max length of GUI pulldown string Z_LEN_GUI_PULL_STR max length of GUI pulldown string
Z_LEN_GUI_FIELD_STR max length of field string Z_LEN_GUI_FIELD_STR max length of field string
Z_LEN_GUI_TITLE_STR max length of title string Z_LEN_GUI_TITLE_STR max length of title string
The library is loaded, this routine is The library is loaded, this routine is
called, then the library is unloaded. called, then the library is unloaded.
Do not define globals in this routine Do not define globals in this routine
as when the library is unloaded, you'll as when the library is unloaded, you'll
lose them. lose them.
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_extra_gui_defaults USERD_get_extra_gui_defaults
@ -4171,17 +4171,17 @@ USERD_get_extra_gui_defaults
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
toggle_default_status = Setting for each toggle (TRUE or FALSE) toggle_default_status = Setting for each toggle (TRUE or FALSE)
array dimension is [num_toggles] long array dimension is [num_toggles] long
pulldown_Title = title for each pulldown pulldown_Title = title for each pulldown
array dimension is [num_pulldowns] by array dimension is [num_pulldowns] by
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
pulldown_number_in_list = number of items in each pulldown pulldown_number_in_list = number of items in each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_default_selection = pulldown item selection for each pulldown pulldown_default_selection = pulldown item selection for each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_item_strings = pulldown item strings pulldown_item_strings = pulldown item strings
array is [num_pulldowns] by array is [num_pulldowns] by
@ -4201,7 +4201,7 @@ USERD_get_extra_gui_defaults
Notes: Notes:
----- -----
* The library is loaded, this routine is called, then the library is unloaded. * The library is loaded, this routine is called, then the library is unloaded.
* Do not define globals in this routine as when the library is unloaded, you'll * Do not define globals in this routine as when the library is unloaded, you'll
lose them. lose them.
@ -4242,7 +4242,7 @@ USERD_set_extra_gui_data
* This routine is called when the library is permanently * This routine is called when the library is permanently
loaded to the EnSight session, so define your globals loaded to the EnSight session, so define your globals
in this and later routines. in this and later routines.
* It's up to you to change your reader behavior according to * It's up to you to change your reader behavior according to
user entries! user entries!
@ -4272,7 +4272,7 @@ USERD_get_var_extract_gui_numbers
Arguments: Arguments:
--------- ---------
(OUT) num_Toggles = number of toggles that will be provided (OUT) num_Toggles = number of toggles that will be provided
num_pulldowns = number of pulldowns that will be provided num_pulldowns = number of pulldowns that will be provided
num_fields = number of fields that will be provided num_fields = number of fields that will be provided
@ -4291,63 +4291,63 @@ USERD_get_var_extract_gui_numbers
simply delete these routines, or change their simply delete these routines, or change their
names to something such as names to something such as
USERD_DISABLED_get_var_extract_gui_defaults USERD_DISABLED_get_var_extract_gui_defaults
The presence of these routines The presence of these routines
will ensure that EnSight will call them and will ensure that EnSight will call them and
use their data to modify the extraction parameters set use their data to modify the extraction parameters set
with some or all of the following: with some or all of the following:
toggles, pulldown menu and fields. toggles, pulldown menu and fields.
The user can then interact with the enhanced The user can then interact with the enhanced
GUI and then send their choices to GUI and then send their choices to
USERD_set_extra_gui_data USERD_set_extra_gui_data
Therefore if USERD_get_var_extract_gui_numbers Therefore if USERD_get_var_extract_gui_numbers
exists then the other two must exist. exists then the other two must exist.
If none exist, then the GUI will be unchanged. If none exist, then the GUI will be unchanged.
Toggle data will return an integer Toggle data will return an integer
TRUE if checked TRUE if checked
FALSE if unchecked FALSE if unchecked
Pulldown menu will return an integer representing Pulldown menu will return an integer representing
the menu item selected the menu item selected
Field will return a string Z_LEN_GUI_FIELD_STR long. Field will return a string Z_LEN_GUI_FIELD_STR long.
If all the enhanced GUI features are enabled it If all the enhanced GUI features are enabled it
might look something like this might look something like this
=================================================== ===================================================
[] Title 1 [X] Title 3 [] Title 1 [X] Title 3
[X]Title 2 [X] Title 4 [X]Title 2 [X] Title 4
Pulldown Menu -> Pulldown Menu ->
Menu Choice 1 Menu Choice 1
Menu Choice 2 Menu Choice 2
Menu Choice 3 Menu Choice 3
Data Field Title 1 ____________________________ Data Field Title 1 ____________________________
Data Field Title 2 ____________________________ Data Field Title 2 ____________________________
===================================================== =====================================================
This routine defines the numbers of toggles, pulldowns & fields This routine defines the numbers of toggles, pulldowns & fields
The following are defined in the global_extern.h The following are defined in the global_extern.h
Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns
Z_LEN_GUI_PULL_STR max length of GUI pulldown string Z_LEN_GUI_PULL_STR max length of GUI pulldown string
Z_LEN_GUI_FIELD_STR max length of field string Z_LEN_GUI_FIELD_STR max length of field string
Z_LEN_GUI_TITLE_STR max length of title string Z_LEN_GUI_TITLE_STR max length of title string
The library is loaded, this routine is The library is loaded, this routine is
called, then the library is unloaded. called, then the library is unloaded.
Do not define globals in this routine Do not define globals in this routine
as when the library is unloaded, you'll as when the library is unloaded, you'll
lose them. lose them.
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_var_extract_gui_defaults USERD_get_var_extract_gui_defaults
@ -4381,17 +4381,17 @@ USERD_get_var_extract_gui_defaults
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
toggle_default_status = Setting for each toggle (TRUE or FALSE) toggle_default_status = Setting for each toggle (TRUE or FALSE)
array dimension is [num_toggles] long array dimension is [num_toggles] long
pulldown_Title = title for each pulldown pulldown_Title = title for each pulldown
array dimension is [num_pulldowns] by array dimension is [num_pulldowns] by
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
pulldown_number_in_list = number of items in each pulldown pulldown_number_in_list = number of items in each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_default_selection = pulldown item selection for each pulldown pulldown_default_selection = pulldown item selection for each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_item_strings = pulldown item strings pulldown_item_strings = pulldown item strings
array is [num_pulldowns] by array is [num_pulldowns] by
@ -4411,7 +4411,7 @@ USERD_get_var_extract_gui_defaults
Notes: Notes:
----- -----
* The library is loaded, this routine is called, then the library is unloaded. * The library is loaded, this routine is called, then the library is unloaded.
* Do not define globals in this routine as when the library is unloaded, you'll * Do not define globals in this routine as when the library is unloaded, you'll
lose them. lose them.
@ -4452,7 +4452,7 @@ USERD_set_var_extract_gui_data
* This routine is called when the library is permanently * This routine is called when the library is permanently
loaded to the EnSight session, so define your globals loaded to the EnSight session, so define your globals
in this and later routines. in this and later routines.
* It's up to you to change your reader behavior according to * It's up to you to change your reader behavior according to
user entries! user entries!
@ -4464,19 +4464,19 @@ USERD_set_var_extract_gui_data
/* ---------------------------------------------------------- /* ----------------------------------------------------------
* New in EnSight 8 is the capability to remove (fail) elements * New in EnSight 8 is the capability to remove (fail) elements
* based on variable threshold values. Basically the variable * based on variable threshold values. Basically the variable
* name, a couple of thresholds, a couple of values and a logic * name, a couple of thresholds, a couple of values and a logic
* criteria are read in from this routine. Every element that * criteria are read in from this routine. Every element that
* satisfies the failure criteria is removed and not used in * satisfies the failure criteria is removed and not used in
* EnSight calculations. * EnSight calculations.
* *
* Example Failure criteria * Example Failure criteria
* Let fail_var_name = "fail_flag" * Let fail_var_name = "fail_flag"
* threshold_val1 = 0 * threshold_val1 = 0
* threshold_operator1 = Z_EQUAL_TO * threshold_operator1 = Z_EQUAL_TO
* logic_criteria2 not used * logic_criteria2 not used
* threshold_val2 not used * threshold_val2 not used
* threshold_operator2 not used * threshold_operator2 not used
* For each value of "fail_flag" at each element, * For each value of "fail_flag" at each element,
* if fail flag == threshold_val1 (0.0) then element fails * if fail flag == threshold_val1 (0.0) then element fails
* Return (Z_ERR) if this is not used. * Return (Z_ERR) if this is not used.
* Return (Z_OK) if failed element feature should be used * Return (Z_OK) if failed element feature should be used
@ -4505,7 +4505,7 @@ int USERD_get_uns_failed_params(
Z_EQUAL_TO */ Z_EQUAL_TO */
int *threshold_operator2, /* Z_GREATER_THAN, Z_LESS_THAN, int *threshold_operator2, /* Z_GREATER_THAN, Z_LESS_THAN,
Z_EQUAL_TO */ Z_EQUAL_TO */
int *logic_criteria2 int *logic_criteria2
/*-------------------------------------------------------------------- /*--------------------------------------------------------------------

View File

@ -14,16 +14,16 @@ You should refer to beginning of README_USERD_2.0 and/or README_1.0_to_2.0
for a discussion of the differences between API 1.0 and API 2.*. for a discussion of the differences between API 1.0 and API 2.*.
***>> API 2.07 additional capabilities (beyond API 2.06): ***>> API 2.07 additional capabilities (beyond API 2.06):
Optional routine to allow userd defined readers to indicate their auto Optional routine to allow userd defined readers to indicate their auto
distribute preference when used with SOS. This is used to set the auto distribute preference when used with SOS. This is used to set the auto
distribute flag default in the client. If the function does not exist, distribute flag default in the client. If the function does not exist,
then it defaults to 'use auto distribute'. If the function does exist and then it defaults to 'use auto distribute'. If the function does exist and
indicates 'no auto distribute', then it's up to the UDR to decompose a indicates 'no auto distribute', then it's up to the UDR to decompose a
distributed data set. distributed data set.
USERD_prefer_auto_distribute USERD_prefer_auto_distribute
Optional routine to allow userd defined readers to indicate their Optional routine to allow userd defined readers to indicate their
preference for the 'Set file...' button labels in the client's File->Open preference for the 'Set file...' button labels in the client's File->Open
dialog. If the function does not exist or it returns a null string for dialog. If the function does not exist or it returns a null string for
an argument, then the default values are used. an argument, then the default values are used.
USERD_set_filename_button_labels USERD_set_filename_button_labels
@ -62,10 +62,10 @@ reader itself. (Can actually be added to pre-2.05 readers)
***>> API 2.04 additional capabilities (beyond API 2.03): ***>> API 2.04 additional capabilities (beyond API 2.03):
Routines to handle failed elements. Basically Routines to handle failed elements. Basically
a.One routine to return a flag indicating the existence of a.One routine to return a flag indicating the existence of
failed elements in at least one part in at least one failed elements in at least one part in at least one
timestep in the model. timestep in the model.
b.A second routine to return a matrix of flags indexed by part and b.A second routine to return a matrix of flags indexed by part and
element type indicating which parts and element types have failed element type indicating which parts and element types have failed
elements at the current time step. elements at the current time step.
@ -81,7 +81,7 @@ c.Finally a third routine to return an array of flags for a given
**************************************************************************** ****************************************************************************
Note: Only the the Ensight Gold example reader, has been moved to Note: Only the the Ensight Gold example reader, has been moved to
this 2.06 API level. And it is purely for an example - it does not this 2.06 API level. And it is purely for an example - it does not
actually provide a benefit. actually provide a benefit.
**************************************************************************** ****************************************************************************
@ -113,10 +113,10 @@ The process for producing a user defined reader is:
You may find it useful to place your library source in this area as You may find it useful to place your library source in this area as
well, but are not limited to this location. well, but are not limited to this location.
* ===> The descriptions of each library routine and the order that the * ===> The descriptions of each library routine and the order that the
routines are called, which is provided in this file, along with routines are called, which is provided in this file, along with
the example libraries, should make it possible for you to produce the example libraries, should make it possible for you to produce
code for your own data reader. code for your own data reader.
2. Produce the dynamic shared library. 2. Produce the dynamic shared library.
@ -164,7 +164,7 @@ The process for producing a user defined reader is:
If you choose to use a different build environment for your reader, If you choose to use a different build environment for your reader,
you should take care to use compatible compilation flags to ensure you should take care to use compatible compilation flags to ensure
compatibilty with the EnSight executables, most notably on the SGI compatibility with the EnSight executables, most notably on the SGI
and HP-UX 11.0 platforms, which should use the following flags: and HP-UX 11.0 platforms, which should use the following flags:
sgi_6.2_o32: -mips2 sgi_6.2_o32: -mips2
@ -258,7 +258,7 @@ The process for producing a user defined reader is:
location, and users can set the ENSIGHT7_READER variable to access them: location, and users can set the ENSIGHT7_READER variable to access them:
setenv ENSIGHT7_READER /usr/local/lib/e7readers setenv ENSIGHT7_READER /usr/local/lib/e7readers
A user working on a new reader may compile the reader and place it in A user working on a new reader may compile the reader and place it in
a directory specified by the library path: a directory specified by the library path:
@ -303,7 +303,7 @@ USERD_get_block_ghost_flags block ghost cell flags
These routines, which formerly were only for unstructured data, will now These routines, which formerly were only for unstructured data, will now
also be called for structured data if you specify that ids will be given also be called for structured data if you specify that ids will be given
in the USERD_get_node_label_status and USERD_get_element_label_status rotuines in the USERD_get_node_label_status and USERD_get_element_label_status rotuines
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
USERD_get_part_node_ids part's node ids USERD_get_part_node_ids part's node ids
USERD_get_part_element_ids_by_type part's element ids USERD_get_part_element_ids_by_type part's element ids
@ -382,7 +382,7 @@ USERD_bkup archive routine
USERD_exit_routine cleanup upon exit routine USERD_exit_routine cleanup upon exit routine
USERD_get_uns_failed_params Gets thresholds/criteria for failure USERD_get_uns_failed_params Gets thresholds/criteria for failure
USERD_rigidbody_existence Returns whether rigid body transformation USERD_rigidbody_existence Returns whether rigid body transformation
data exists for the model. data exists for the model.
@ -405,14 +405,14 @@ Order Routines are called
The various main operations are given basically in the order they will The various main operations are given basically in the order they will
be performed. Within each operation, the order the routines will be be performed. Within each operation, the order the routines will be
called is given. called is given.
1. Setting name in the gui, and specifying one or two input fields 1. Setting name in the gui, and specifying one or two input fields
USERD_get_name_of_reader USERD_get_name_of_reader
USERD_get_reader_descrip (optional) USERD_get_reader_descrip (optional)
USERD_get_extra_gui_numbers (optional) USERD_get_extra_gui_numbers (optional)
USERD_get_extra_gui_defaults (optional) USERD_get_extra_gui_defaults (optional)
2. Getting the reader version (also distinguishes between API's) 2. Getting the reader version (also distinguishes between API's)
@ -424,7 +424,7 @@ called is given.
USERD_get_extra_gui_defaults routine) USERD_get_extra_gui_defaults routine)
USERD_get_structured_reader_cinching USERD_get_structured_reader_cinching
USERD_set_server_number USERD_set_server_number
USERD_set_extra_gui_data (optional) USERD_set_extra_gui_data (optional)
USERD_set_filenames USERD_set_filenames
USERD_get_number_of_timesets USERD_get_number_of_timesets
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
@ -459,7 +459,7 @@ called is given.
USERD_get_number_of_variables USERD_get_number_of_variables
USERD_get_gold_variable_info USERD_get_gold_variable_info
6. Part building (per part created) 6. Part building (per part created)
both unstructured and structured: both unstructured and structured:
@ -501,12 +501,12 @@ called is given.
dialog is closed) dialog is closed)
7. Loading Variables 7. Loading Variables
constants: constants:
--------- ---------
USERD_set_time_set_and_step USERD_set_time_set_and_step
USERD_get_constant_val USERD_get_constant_val
scalars/vectors/tensors: scalars/vectors/tensors:
------------------------ ------------------------
USERD_get_descrip_lines USERD_get_descrip_lines
@ -550,7 +550,7 @@ called is given.
USERD_get_border_availability (If border representation USERD_get_border_availability (If border representation
USERD_get_border_elements_by_type is selected) USERD_get_border_elements_by_type is selected)
9. Node or Element queries over time 9. Node or Element queries over time
USERD_get_var_value_at_specific USERD_get_var_value_at_specific
@ -590,7 +590,7 @@ Detailed Specifications
Include files: Include files:
-------------- --------------
The following header file is required in any file containing these library The following header file is required in any file containing these library
routines. routines.
#include "global_extern.h" #include "global_extern.h"
@ -837,24 +837,24 @@ USERD_get_block_ghost_flags
(OUT) ghost_flags = 1D array containing ghost flag value (OUT) ghost_flags = 1D array containing ghost flag value
for each block cell. for each block cell.
(Array will have been allocated (Array will have been allocated
(i-1)*(j-1)*(k-1) for the block long) (i-1)*(j-1)*(k-1) for the block long)
possible values are: 0 = non-ghost cell (normal cell) possible values are: 0 = non-ghost cell (normal cell)
>0 = ghost cell >0 = ghost cell
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Only called for structured "block" parts that have some ghost cells * Only called for structured "block" parts that have some ghost cells
as indicated by the USERD_get_ghost_in_block_flag. The model must as indicated by the USERD_get_ghost_in_block_flag. The model must
of course also have been indicated to have some ghost cells in the of course also have been indicated to have some ghost cells in the
USERD_get_ghost_in_model_flag routine. USERD_get_ghost_in_model_flag routine.
* It is sufficient to set the value to be 1 to flag as a ghost cell, * It is sufficient to set the value to be 1 to flag as a ghost cell,
but the value can be any non-zero value, so you could use it to but the value can be any non-zero value, so you could use it to
indicate which block or which server (for Server-of-server use) the indicate which block or which server (for Server-of-server use) the
@ -922,7 +922,7 @@ USERD_get_border_elements_by_type
Description: Description:
----------- -----------
Provides border element connectivity and parent information. Provides border element connectivity and parent information.
Specification: Specification:
------------- -------------
@ -991,7 +991,7 @@ USERD_get_border_elements_by_type
(Array will have been allocated (Array will have been allocated
num_of_elements of the type long) num_of_elements of the type long)
Notes: Notes:
----- -----
* Not called unless USERD_get_border_availability returned Z_OK * Not called unless USERD_get_border_availability returned Z_OK
@ -1093,7 +1093,7 @@ USERD_get_dataset_query_file_info
(Typically obtained with a call to the (Typically obtained with a call to the
"stat" system routine) (Is a long) "stat" system routine) (Is a long)
qfiles[].timemod = The time the file was last modified qfiles[].timemod = The time the file was last modified
(Z_MAXTIMLEN is the dimensioned length (Z_MAXTIMLEN is the dimensioned length
of this string) of this string)
(Typically obtained with a call to the (Typically obtained with a call to the
@ -1200,7 +1200,7 @@ USERD_get_element_label_status
on a per part, per type basis, if TRUE status is returned here. on a per part, per type basis, if TRUE status is returned here.
For structured parts, EnSight will assign ids if you return a For structured parts, EnSight will assign ids if you return a
status of TRUE here. You cannot assign them youself!! status of TRUE here. You cannot assign them yourself!!
* Starting at API 2.01: * Starting at API 2.01:
-------------------- --------------------
@ -1227,7 +1227,7 @@ USERD_get_geom_timeset_number -
Returns: Returns:
------- -------
Geom_timeset_number = The timeset number that will be used for geometry. Geom_timeset_number = The timeset number that will be used for geometry.
For example, if USERD_get_number_of timesets For example, if USERD_get_number_of timesets
returns 2, the valid timeset numbers would be returns 2, the valid timeset numbers would be
1 or 2. 1 or 2.
@ -1343,7 +1343,7 @@ USERD_get_gold_part_build_info
long) long)
(OUT) number_of_nodes = Number of unstructured nodes in the part (OUT) number_of_nodes = Number of unstructured nodes in the part
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1626,23 +1626,23 @@ USERD_get_gold_variable_info
Z_PER_ELEM Z_PER_ELEM
(OUT) var_complex = TRUE if complex, FALSE otherwise (OUT) var_complex = TRUE if complex, FALSE otherwise
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_ifilename = Variable imaginary filenames (if complex) (OUT) var_ifilename = Variable imaginary filenames (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables by Z_BUFL long) Num_variables by Z_BUFL long)
(OUT) var_freq = complex frequency (if complex) (OUT) var_freq = complex frequency (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_contran = TRUE if constant changes per time step (OUT) var_contran = TRUE if constant changes per time step
FALSE if constant truly same at all time steps FALSE if constant truly same at all time steps
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
@ -1716,7 +1716,7 @@ USERD_get_ghosts_in_block_flag
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Intended for structured parts only, value will be ignored for * Intended for structured parts only, value will be ignored for
unstructured parts unstructured parts
@ -1740,7 +1740,7 @@ USERD_get_ghosts_in_model_flag
Arguments: Arguments:
--------- ---------
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
@ -1855,7 +1855,7 @@ USERD_get_maxsize_info
--------- ---------
(OUT) max_number_of_nodes = Maximum number of unstructured nodes (OUT) max_number_of_nodes = Maximum number of unstructured nodes
in the part (over all time). in the part (over all time).
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1978,7 +1978,7 @@ USERD_get_name_of_reader
Specification: Specification:
------------- -------------
int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME], int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME],
int *two_fields) int *two_fields)
Returns: Returns:
------- -------
@ -1990,17 +1990,17 @@ USERD_get_name_of_reader
(OUT) reader_name = the name of the your reader or data format. (OUT) reader_name = the name of the your reader or data format.
(max length is Z_MAX_USERD_NAME, which is 20) (max length is Z_MAX_USERD_NAME, which is 20)
(OUT) two_fields = FALSE if only one data field is (OUT) two_fields = FALSE if only one data field is
required. required.
TRUE if two data fields required TRUE if two data fields required
-1 if one field (Geom) required -1 if one field (Geom) required
and one field (Param) is optional and one field (Param) is optional
Param field can contain any text Param field can contain any text
for example a file name, modifiers, for example a file name, modifiers,
etc. that can be used to modify the etc. that can be used to modify the
reader's behavior. reader's behavior.
Notes: Notes:
----- -----
@ -2818,37 +2818,37 @@ USERD_get_number_of_timesets
* If you have a static model, both geometry and variables, you should * If you have a static model, both geometry and variables, you should
return a value of zero. return a value of zero.
* If you have a transient model, then you should return one or more. * If you have a transient model, then you should return one or more.
For example: For example:
Geometry Variables No. of timesets Geometry Variables No. of timesets
--------- ------------------------------ --------------- --------- ------------------------------ ---------------
static static 0 static static 0
static transient, all using same timeset 1 static transient, all using same timeset 1
transient transient, all using same timeset as geom 1 transient transient, all using same timeset as geom 1
static transient, using 3 different timesets 3 static transient, using 3 different timesets 3
transient transient, using 3 different timesets and transient transient, using 3 different timesets and
none of them the same as the none of them the same as the
geometry timeset 4 geometry timeset 4
etc. etc.
NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide
the timeset number to use the timeset number to use
for geometry in: for geometry in:
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
Variables can use the same timeset as the geometry, or can use Variables can use the same timeset as the geometry, or can use
other timesets. More than one variable can use the same timeset. other timesets. More than one variable can use the same timeset.
example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0 example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0
variable 1 provided at these same five steps variable 1 provided at these same five steps
variable 2 provided at 3 steps, 0.5, 1.25, 3.33 variable 2 provided at 3 steps, 0.5, 1.25, 3.33
This routine should return a value of 2, because only This routine should return a value of 2, because only
two different timesets are needed. Timeset 1 would be for the two different timesets are needed. Timeset 1 would be for the
geometry and variable 1 (they both use it). Timeset 2 would geometry and variable 1 (they both use it). Timeset 2 would
@ -3130,7 +3130,7 @@ USERD_get_part_elements_by_type
conn_array[100][4] when called with Z_QUA04 conn_array[100][4] when called with Z_QUA04
conn_array[30][8] when called with Z_HEX08 conn_array[30][8] when called with Z_HEX08
Notes: Notes:
----- -----
* Not called unless Num_unstructured_parts is > 0 * Not called unless Num_unstructured_parts is > 0
@ -3264,7 +3264,7 @@ USERD_get_sol_times
Description: Description:
----------- -----------
Get the solution times associated with each time step for Get the solution times associated with each time step for
desired timeset. desired timeset.
Specification: Specification:
@ -3280,7 +3280,7 @@ USERD_get_sol_times
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -3316,7 +3316,7 @@ USERD_get_timeset_description -
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -3429,22 +3429,22 @@ USERD_get_var_by_component
(IN) imag_data = TRUE if imag component (IN) imag_data = TRUE if imag component
FALSE if real component FALSE if real component
(IN) component = The component: (0 if Z_SCALAR) (IN) component = The component: (0 if Z_SCALAR)
(0 - 2 if Z_VECTOR) (0 - 2 if Z_VECTOR)
(0 - 5 if Z_TENSOR) (0 - 5 if Z_TENSOR)
(0 - 8 if Z_TENSOR9) (0 - 8 if Z_TENSOR9)
* 6 Symmetric Indicies, 0:5 * * 6 Symmetric Indices, 0:5 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
* T = | 22 23 | = | 1 5 | * * T = | 22 23 | = | 1 5 | *
* | | | | * * | | | | *
* | 33 | | 2 | * * | 33 | | 2 | *
* 9 General Indicies, 0:8 *
* 9 General Indices, 0:8 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
@ -3452,7 +3452,7 @@ USERD_get_var_by_component
* | | | | * * | | | | *
* | 31 32 33 | | 7 8 2 | * * | 31 32 33 | | 7 8 2 | *
(OUT) var_array (OUT) var_array
----------------------------------------------------------------------- -----------------------------------------------------------------------
(IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!) (IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!)
@ -3474,7 +3474,7 @@ USERD_get_var_by_component
if Z_PER_ELEM: = 1D array containing variable component if Z_PER_ELEM: = 1D array containing variable component
value for each element of a particular value for each element of a particular
part and type. part and type.
(Array will have been allocated (Array will have been allocated
(number_of_elements[which_part][which_type] + 1) (number_of_elements[which_part][which_type] + 1)
long. See USERD_get_gold_part_build_info) long. See USERD_get_gold_part_build_info)
@ -3536,7 +3536,7 @@ USERD_get_var_value_at_specific
If Z_PER_NODE: If Z_PER_NODE:
= The node number. This is not the id, but is = The node number. This is not the id, but is
the index of the global node the index of the global node
list (1 based), or the block's list (1 based), or the block's
node list (1 based). node list (1 based).
@ -3745,17 +3745,17 @@ USERD_set_filenames
(IN) param_2 = The usage of this string depends on (IN) param_2 = The usage of this string depends on
'two_fields' in USERD_get_name_of_reader. 'two_fields' in USERD_get_name_of_reader.
If two_fields is FALSE then it's empty. If two_fields is FALSE then it's empty.
If two_fields is TRUE, this is the If two_fields is TRUE, this is the
manditory results file entered manditory results file entered
into the result field of the data dialog. into the result field of the data dialog.
If two_fields is -1, then this contains If two_fields is -1, then this contains
optional text (filenames, modifiers, etc.) optional text (filenames, modifiers, etc.)
that can be parsed and used to modify that can be parsed and used to modify
reader reader
(IN) the_path = the path info from the data dialog. (IN) the_path = the path info from the data dialog.
Note: filename_1 and filename_2 have already Note: filename_1 and filename_2 have already
@ -3804,7 +3804,7 @@ USERD_set_server_number
something that you can take advantage of. If your data is already something that you can take advantage of. If your data is already
partitioned in some manner, such that you can access the proper partitioned in some manner, such that you can access the proper
portions using this information. portions using this information.
For all non-SOS uses, this will simply be 1 of 1 For all non-SOS uses, this will simply be 1 of 1
@ -3830,7 +3830,7 @@ USERD_set_time_set_and_step
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (1 based). (IN) timeset_number = the timeset number (1 based).
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid timeset_number's returns 2, the valid timeset_number's
would be 1 and 2. would be 1 and 2.
@ -3999,14 +3999,14 @@ USERD_rigidbody_values
Arguments: Arguments:
--------- ---------
(IN) part_number = The part number (IN) part_number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
(OUT) values values[0] = IX (x location) (OUT) values values[0] = IX (x location)
values[1] = IY (y location) values[1] = IY (y location)
values[2] = IZ (z location) values[2] = IZ (z location)
@ -4051,7 +4051,7 @@ USERD_set_right_side
------------------------------------------------------------------ ------------------------------------------------------------------
ENHANCED GUI ROUTINES ENHANCED GUI ROUTINES
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_extra_gui_numbers USERD_get_extra_gui_numbers
@ -4075,7 +4075,7 @@ USERD_get_extra_gui_numbers
Arguments: Arguments:
--------- ---------
(OUT) num_Toggles = number of toggles that will be provided (OUT) num_Toggles = number of toggles that will be provided
num_pulldowns = number of pulldowns that will be provided num_pulldowns = number of pulldowns that will be provided
num_fields = number of fields that will be provided num_fields = number of fields that will be provided
@ -4095,63 +4095,63 @@ USERD_get_extra_gui_numbers
simply delete these routines, or change their simply delete these routines, or change their
names to something such as names to something such as
USERD_DISABLED_get_extra_gui_defaults USERD_DISABLED_get_extra_gui_defaults
The presence of these routines The presence of these routines
will ensure that EnSight will call them and will ensure that EnSight will call them and
use their data to modify the extraction parameters set use their data to modify the extraction parameters set
with some or all of the following: with some or all of the following:
toggles, pulldown menu and fields. toggles, pulldown menu and fields.
The user can then interact with the enhanced The user can then interact with the enhanced
GUI and then send their choices to GUI and then send their choices to
USERD_set_extra_gui_data USERD_set_extra_gui_data
Therefore if USERD_get_extra_gui_numbers Therefore if USERD_get_extra_gui_numbers
exists then the other two must exist. exists then the other two must exist.
If none exist, then the GUI will be unchanged. If none exist, then the GUI will be unchanged.
Toggle data will return an integer Toggle data will return an integer
TRUE if checked TRUE if checked
FALSE if unchecked FALSE if unchecked
Pulldown menu will return an integer representing Pulldown menu will return an integer representing
the menu item selected the menu item selected
Field will return a string Z_LEN_GUI_FIELD_STR long. Field will return a string Z_LEN_GUI_FIELD_STR long.
If all the enhanced GUI features are enabled it If all the enhanced GUI features are enabled it
might look something like this might look something like this
=================================================== ===================================================
[] Title 1 [X] Title 3 [] Title 1 [X] Title 3
[X]Title 2 [X] Title 4 [X]Title 2 [X] Title 4
Pulldown Menu -> Pulldown Menu ->
Menu Choice 1 Menu Choice 1
Menu Choice 2 Menu Choice 2
Menu Choice 3 Menu Choice 3
Data Field Title 1 ____________________________ Data Field Title 1 ____________________________
Data Field Title 2 ____________________________ Data Field Title 2 ____________________________
===================================================== =====================================================
This routine defines the numbers of toggles, pulldowns & fields This routine defines the numbers of toggles, pulldowns & fields
The following are defined in the global_extern.h The following are defined in the global_extern.h
Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns
Z_LEN_GUI_PULL_STR max length of GUI pulldown string Z_LEN_GUI_PULL_STR max length of GUI pulldown string
Z_LEN_GUI_FIELD_STR max length of field string Z_LEN_GUI_FIELD_STR max length of field string
Z_LEN_GUI_TITLE_STR max length of title string Z_LEN_GUI_TITLE_STR max length of title string
The library is loaded, this routine is The library is loaded, this routine is
called, then the library is unloaded. called, then the library is unloaded.
Do not define globals in this routine Do not define globals in this routine
as when the library is unloaded, you'll as when the library is unloaded, you'll
lose them. lose them.
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_extra_gui_defaults USERD_get_extra_gui_defaults
@ -4185,17 +4185,17 @@ USERD_get_extra_gui_defaults
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
toggle_default_status = Setting for each toggle (TRUE or FALSE) toggle_default_status = Setting for each toggle (TRUE or FALSE)
array dimension is [num_toggles] long array dimension is [num_toggles] long
pulldown_Title = title for each pulldown pulldown_Title = title for each pulldown
array dimension is [num_pulldowns] by array dimension is [num_pulldowns] by
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
pulldown_number_in_list = number of items in each pulldown pulldown_number_in_list = number of items in each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_default_selection = pulldown item selection for each pulldown pulldown_default_selection = pulldown item selection for each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_item_strings = pulldown item strings pulldown_item_strings = pulldown item strings
array is [num_pulldowns] by array is [num_pulldowns] by
@ -4215,7 +4215,7 @@ USERD_get_extra_gui_defaults
Notes: Notes:
----- -----
* The library is loaded, this routine is called, then the library is unloaded. * The library is loaded, this routine is called, then the library is unloaded.
* Do not define globals in this routine as when the library is unloaded, you'll * Do not define globals in this routine as when the library is unloaded, you'll
lose them. lose them.
@ -4256,7 +4256,7 @@ USERD_set_extra_gui_data
* This routine is called when the library is permanently * This routine is called when the library is permanently
loaded to the EnSight session, so define your globals loaded to the EnSight session, so define your globals
in this and later routines. in this and later routines.
* It's up to you to change your reader behavior according to * It's up to you to change your reader behavior according to
user entries! user entries!
@ -4286,7 +4286,7 @@ USERD_get_var_extract_gui_numbers
Arguments: Arguments:
--------- ---------
(OUT) num_Toggles = number of toggles that will be provided (OUT) num_Toggles = number of toggles that will be provided
num_pulldowns = number of pulldowns that will be provided num_pulldowns = number of pulldowns that will be provided
num_fields = number of fields that will be provided num_fields = number of fields that will be provided
@ -4305,63 +4305,63 @@ USERD_get_var_extract_gui_numbers
simply delete these routines, or change their simply delete these routines, or change their
names to something such as names to something such as
USERD_DISABLED_get_var_extract_gui_defaults USERD_DISABLED_get_var_extract_gui_defaults
The presence of these routines The presence of these routines
will ensure that EnSight will call them and will ensure that EnSight will call them and
use their data to modify the extraction parameters set use their data to modify the extraction parameters set
with some or all of the following: with some or all of the following:
toggles, pulldown menu and fields. toggles, pulldown menu and fields.
The user can then interact with the enhanced The user can then interact with the enhanced
GUI and then send their choices to GUI and then send their choices to
USERD_set_extra_gui_data USERD_set_extra_gui_data
Therefore if USERD_get_var_extract_gui_numbers Therefore if USERD_get_var_extract_gui_numbers
exists then the other two must exist. exists then the other two must exist.
If none exist, then the GUI will be unchanged. If none exist, then the GUI will be unchanged.
Toggle data will return an integer Toggle data will return an integer
TRUE if checked TRUE if checked
FALSE if unchecked FALSE if unchecked
Pulldown menu will return an integer representing Pulldown menu will return an integer representing
the menu item selected the menu item selected
Field will return a string Z_LEN_GUI_FIELD_STR long. Field will return a string Z_LEN_GUI_FIELD_STR long.
If all the enhanced GUI features are enabled it If all the enhanced GUI features are enabled it
might look something like this might look something like this
=================================================== ===================================================
[] Title 1 [X] Title 3 [] Title 1 [X] Title 3
[X]Title 2 [X] Title 4 [X]Title 2 [X] Title 4
Pulldown Menu -> Pulldown Menu ->
Menu Choice 1 Menu Choice 1
Menu Choice 2 Menu Choice 2
Menu Choice 3 Menu Choice 3
Data Field Title 1 ____________________________ Data Field Title 1 ____________________________
Data Field Title 2 ____________________________ Data Field Title 2 ____________________________
===================================================== =====================================================
This routine defines the numbers of toggles, pulldowns & fields This routine defines the numbers of toggles, pulldowns & fields
The following are defined in the global_extern.h The following are defined in the global_extern.h
Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns
Z_LEN_GUI_PULL_STR max length of GUI pulldown string Z_LEN_GUI_PULL_STR max length of GUI pulldown string
Z_LEN_GUI_FIELD_STR max length of field string Z_LEN_GUI_FIELD_STR max length of field string
Z_LEN_GUI_TITLE_STR max length of title string Z_LEN_GUI_TITLE_STR max length of title string
The library is loaded, this routine is The library is loaded, this routine is
called, then the library is unloaded. called, then the library is unloaded.
Do not define globals in this routine Do not define globals in this routine
as when the library is unloaded, you'll as when the library is unloaded, you'll
lose them. lose them.
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_var_extract_gui_defaults USERD_get_var_extract_gui_defaults
@ -4395,17 +4395,17 @@ USERD_get_var_extract_gui_defaults
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
toggle_default_status = Setting for each toggle (TRUE or FALSE) toggle_default_status = Setting for each toggle (TRUE or FALSE)
array dimension is [num_toggles] long array dimension is [num_toggles] long
pulldown_Title = title for each pulldown pulldown_Title = title for each pulldown
array dimension is [num_pulldowns] by array dimension is [num_pulldowns] by
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
pulldown_number_in_list = number of items in each pulldown pulldown_number_in_list = number of items in each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_default_selection = pulldown item selection for each pulldown pulldown_default_selection = pulldown item selection for each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_item_strings = pulldown item strings pulldown_item_strings = pulldown item strings
array is [num_pulldowns] by array is [num_pulldowns] by
@ -4425,7 +4425,7 @@ USERD_get_var_extract_gui_defaults
Notes: Notes:
----- -----
* The library is loaded, this routine is called, then the library is unloaded. * The library is loaded, this routine is called, then the library is unloaded.
* Do not define globals in this routine as when the library is unloaded, you'll * Do not define globals in this routine as when the library is unloaded, you'll
lose them. lose them.
@ -4466,7 +4466,7 @@ USERD_set_var_extract_gui_data
* This routine is called when the library is permanently * This routine is called when the library is permanently
loaded to the EnSight session, so define your globals loaded to the EnSight session, so define your globals
in this and later routines. in this and later routines.
* It's up to you to change your reader behavior according to * It's up to you to change your reader behavior according to
user entries! user entries!
@ -4478,19 +4478,19 @@ USERD_set_var_extract_gui_data
/* ---------------------------------------------------------- /* ----------------------------------------------------------
* New in EnSight 8 is the capability to remove (fail) elements * New in EnSight 8 is the capability to remove (fail) elements
* based on variable threshold values. Basically the variable * based on variable threshold values. Basically the variable
* name, a couple of thresholds, a couple of values and a logic * name, a couple of thresholds, a couple of values and a logic
* criteria are read in from this routine. Every element that * criteria are read in from this routine. Every element that
* satisfies the failure criteria is removed and not used in * satisfies the failure criteria is removed and not used in
* EnSight calculations. * EnSight calculations.
* *
* Example Failure criteria * Example Failure criteria
* Let fail_var_name = "fail_flag" * Let fail_var_name = "fail_flag"
* threshold_val1 = 0 * threshold_val1 = 0
* threshold_operator1 = Z_EQUAL_TO * threshold_operator1 = Z_EQUAL_TO
* logic_criteria2 not used * logic_criteria2 not used
* threshold_val2 not used * threshold_val2 not used
* threshold_operator2 not used * threshold_operator2 not used
* For each value of "fail_flag" at each element, * For each value of "fail_flag" at each element,
* if fail flag == threshold_val1 (0.0) then element fails * if fail flag == threshold_val1 (0.0) then element fails
* Return (Z_ERR) if this is not used. * Return (Z_ERR) if this is not used.
* Return (Z_OK) if failed element feature should be used * Return (Z_OK) if failed element feature should be used
@ -4519,7 +4519,7 @@ int USERD_get_uns_failed_params(
Z_EQUAL_TO */ Z_EQUAL_TO */
int *threshold_operator2, /* Z_GREATER_THAN, Z_LESS_THAN, int *threshold_operator2, /* Z_GREATER_THAN, Z_LESS_THAN,
Z_EQUAL_TO */ Z_EQUAL_TO */
int *logic_criteria2 int *logic_criteria2
/*-------------------------------------------------------------------- /*--------------------------------------------------------------------

View File

@ -18,16 +18,16 @@ Namely, rotational (yaw,pitch,roll) values were added to the values
argument of USERD_rigidbody_values routine. argument of USERD_rigidbody_values routine.
***>> API 2.07 additional capabilities (beyond API 2.06): ***>> API 2.07 additional capabilities (beyond API 2.06):
Optional routine to allow userd defined readers to indicate their auto Optional routine to allow userd defined readers to indicate their auto
distribute preference when used with SOS. This is used to set the auto distribute preference when used with SOS. This is used to set the auto
distribute flag default in the client. If the function does not exist, distribute flag default in the client. If the function does not exist,
then it defaults to 'use auto distribute'. If the function does exist and then it defaults to 'use auto distribute'. If the function does exist and
indicates 'no auto distribute', then it's up to the UDR to decompose a indicates 'no auto distribute', then it's up to the UDR to decompose a
distributed data set. distributed data set.
USERD_prefer_auto_distribute USERD_prefer_auto_distribute
Optional routine to allow userd defined readers to indicate their Optional routine to allow userd defined readers to indicate their
preference for the 'Set file...' button labels in the client's File->Open preference for the 'Set file...' button labels in the client's File->Open
dialog. If the function does not exist or it returns a null string for dialog. If the function does not exist or it returns a null string for
an argument, then the default values are used. an argument, then the default values are used.
USERD_set_filename_button_labels USERD_set_filename_button_labels
@ -66,10 +66,10 @@ reader itself. (Can actually be added to pre-2.05 readers)
***>> API 2.04 additional capabilities (beyond API 2.03): ***>> API 2.04 additional capabilities (beyond API 2.03):
Routines to handle failed elements. Basically Routines to handle failed elements. Basically
a.One routine to return a flag indicating the existence of a.One routine to return a flag indicating the existence of
failed elements in at least one part in at least one failed elements in at least one part in at least one
timestep in the model. timestep in the model.
b.A second routine to return a matrix of flags indexed by part and b.A second routine to return a matrix of flags indexed by part and
element type indicating which parts and element types have failed element type indicating which parts and element types have failed
elements at the current time step. elements at the current time step.
@ -85,7 +85,7 @@ c.Finally a third routine to return an array of flags for a given
**************************************************************************** ****************************************************************************
Note: Only the the Ensight Gold example reader, has been moved to Note: Only the the Ensight Gold example reader, has been moved to
this 2.06 API level. And it is purely for an example - it does not this 2.06 API level. And it is purely for an example - it does not
actually provide a benefit. actually provide a benefit.
**************************************************************************** ****************************************************************************
@ -117,10 +117,10 @@ The process for producing a user defined reader is:
You may find it useful to place your library source in this area as You may find it useful to place your library source in this area as
well, but are not limited to this location. well, but are not limited to this location.
* ===> The descriptions of each library routine and the order that the * ===> The descriptions of each library routine and the order that the
routines are called, which is provided in this file, along with routines are called, which is provided in this file, along with
the example libraries, should make it possible for you to produce the example libraries, should make it possible for you to produce
code for your own data reader. code for your own data reader.
2. Produce the dynamic shared library. 2. Produce the dynamic shared library.
@ -168,7 +168,7 @@ The process for producing a user defined reader is:
If you choose to use a different build environment for your reader, If you choose to use a different build environment for your reader,
you should take care to use compatible compilation flags to ensure you should take care to use compatible compilation flags to ensure
compatibilty with the EnSight executables, most notably on the SGI compatibility with the EnSight executables, most notably on the SGI
and HP-UX 11.0 platforms, which should use the following flags: and HP-UX 11.0 platforms, which should use the following flags:
sgi_6.2_o32: -mips2 sgi_6.2_o32: -mips2
@ -262,7 +262,7 @@ The process for producing a user defined reader is:
location, and users can set the ENSIGHT7_READER variable to access them: location, and users can set the ENSIGHT7_READER variable to access them:
setenv ENSIGHT7_READER /usr/local/lib/e7readers setenv ENSIGHT7_READER /usr/local/lib/e7readers
A user working on a new reader may compile the reader and place it in A user working on a new reader may compile the reader and place it in
a directory specified by the library path: a directory specified by the library path:
@ -307,7 +307,7 @@ USERD_get_block_ghost_flags block ghost cell flags
These routines, which formerly were only for unstructured data, will now These routines, which formerly were only for unstructured data, will now
also be called for structured data if you specify that ids will be given also be called for structured data if you specify that ids will be given
in the USERD_get_node_label_status and USERD_get_element_label_status rotuines in the USERD_get_node_label_status and USERD_get_element_label_status rotuines
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
USERD_get_part_node_ids part's node ids USERD_get_part_node_ids part's node ids
USERD_get_part_element_ids_by_type part's element ids USERD_get_part_element_ids_by_type part's element ids
@ -386,7 +386,7 @@ USERD_bkup archive routine
USERD_exit_routine cleanup upon exit routine USERD_exit_routine cleanup upon exit routine
USERD_get_uns_failed_params Gets thresholds/criteria for failure USERD_get_uns_failed_params Gets thresholds/criteria for failure
USERD_rigidbody_existence Returns whether rigid body transformation USERD_rigidbody_existence Returns whether rigid body transformation
data exists for the model. data exists for the model.
@ -409,14 +409,14 @@ Order Routines are called
The various main operations are given basically in the order they will The various main operations are given basically in the order they will
be performed. Within each operation, the order the routines will be be performed. Within each operation, the order the routines will be
called is given. called is given.
1. Setting name in the gui, and specifying one or two input fields 1. Setting name in the gui, and specifying one or two input fields
USERD_get_name_of_reader USERD_get_name_of_reader
USERD_get_reader_descrip (optional) USERD_get_reader_descrip (optional)
USERD_get_extra_gui_numbers (optional) USERD_get_extra_gui_numbers (optional)
USERD_get_extra_gui_defaults (optional) USERD_get_extra_gui_defaults (optional)
2. Getting the reader version (also distinguishes between API's) 2. Getting the reader version (also distinguishes between API's)
@ -428,7 +428,7 @@ called is given.
USERD_get_extra_gui_defaults routine) USERD_get_extra_gui_defaults routine)
USERD_get_structured_reader_cinching USERD_get_structured_reader_cinching
USERD_set_server_number USERD_set_server_number
USERD_set_extra_gui_data (optional) USERD_set_extra_gui_data (optional)
USERD_set_filenames USERD_set_filenames
USERD_get_number_of_timesets USERD_get_number_of_timesets
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
@ -463,7 +463,7 @@ called is given.
USERD_get_number_of_variables USERD_get_number_of_variables
USERD_get_gold_variable_info USERD_get_gold_variable_info
6. Part building (per part created) 6. Part building (per part created)
both unstructured and structured: both unstructured and structured:
@ -505,12 +505,12 @@ called is given.
dialog is closed) dialog is closed)
7. Loading Variables 7. Loading Variables
constants: constants:
--------- ---------
USERD_set_time_set_and_step USERD_set_time_set_and_step
USERD_get_constant_val USERD_get_constant_val
scalars/vectors/tensors: scalars/vectors/tensors:
------------------------ ------------------------
USERD_get_descrip_lines USERD_get_descrip_lines
@ -554,7 +554,7 @@ called is given.
USERD_get_border_availability (If border representation USERD_get_border_availability (If border representation
USERD_get_border_elements_by_type is selected) USERD_get_border_elements_by_type is selected)
9. Node or Element queries over time 9. Node or Element queries over time
USERD_get_var_value_at_specific USERD_get_var_value_at_specific
@ -594,7 +594,7 @@ Detailed Specifications
Include files: Include files:
-------------- --------------
The following header file is required in any file containing these library The following header file is required in any file containing these library
routines. routines.
#include "global_extern.h" #include "global_extern.h"
@ -841,24 +841,24 @@ USERD_get_block_ghost_flags
(OUT) ghost_flags = 1D array containing ghost flag value (OUT) ghost_flags = 1D array containing ghost flag value
for each block cell. for each block cell.
(Array will have been allocated (Array will have been allocated
(i-1)*(j-1)*(k-1) for the block long) (i-1)*(j-1)*(k-1) for the block long)
possible values are: 0 = non-ghost cell (normal cell) possible values are: 0 = non-ghost cell (normal cell)
>0 = ghost cell >0 = ghost cell
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Only called for structured "block" parts that have some ghost cells * Only called for structured "block" parts that have some ghost cells
as indicated by the USERD_get_ghost_in_block_flag. The model must as indicated by the USERD_get_ghost_in_block_flag. The model must
of course also have been indicated to have some ghost cells in the of course also have been indicated to have some ghost cells in the
USERD_get_ghost_in_model_flag routine. USERD_get_ghost_in_model_flag routine.
* It is sufficient to set the value to be 1 to flag as a ghost cell, * It is sufficient to set the value to be 1 to flag as a ghost cell,
but the value can be any non-zero value, so you could use it to but the value can be any non-zero value, so you could use it to
indicate which block or which server (for Server-of-server use) the indicate which block or which server (for Server-of-server use) the
@ -926,7 +926,7 @@ USERD_get_border_elements_by_type
Description: Description:
----------- -----------
Provides border element connectivity and parent information. Provides border element connectivity and parent information.
Specification: Specification:
------------- -------------
@ -995,7 +995,7 @@ USERD_get_border_elements_by_type
(Array will have been allocated (Array will have been allocated
num_of_elements of the type long) num_of_elements of the type long)
Notes: Notes:
----- -----
* Not called unless USERD_get_border_availability returned Z_OK * Not called unless USERD_get_border_availability returned Z_OK
@ -1097,7 +1097,7 @@ USERD_get_dataset_query_file_info
(Typically obtained with a call to the (Typically obtained with a call to the
"stat" system routine) (Is a long) "stat" system routine) (Is a long)
qfiles[].timemod = The time the file was last modified qfiles[].timemod = The time the file was last modified
(Z_MAXTIMLEN is the dimensioned length (Z_MAXTIMLEN is the dimensioned length
of this string) of this string)
(Typically obtained with a call to the (Typically obtained with a call to the
@ -1204,7 +1204,7 @@ USERD_get_element_label_status
on a per part, per type basis, if TRUE status is returned here. on a per part, per type basis, if TRUE status is returned here.
For structured parts, EnSight will assign ids if you return a For structured parts, EnSight will assign ids if you return a
status of TRUE here. You cannot assign them youself!! status of TRUE here. You cannot assign them yourself!!
* Starting at API 2.01: * Starting at API 2.01:
-------------------- --------------------
@ -1231,7 +1231,7 @@ USERD_get_geom_timeset_number -
Returns: Returns:
------- -------
Geom_timeset_number = The timeset number that will be used for geometry. Geom_timeset_number = The timeset number that will be used for geometry.
For example, if USERD_get_number_of timesets For example, if USERD_get_number_of timesets
returns 2, the valid timeset numbers would be returns 2, the valid timeset numbers would be
1 or 2. 1 or 2.
@ -1347,7 +1347,7 @@ USERD_get_gold_part_build_info
long) long)
(OUT) number_of_nodes = Number of unstructured nodes in the part (OUT) number_of_nodes = Number of unstructured nodes in the part
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1630,23 +1630,23 @@ USERD_get_gold_variable_info
Z_PER_ELEM Z_PER_ELEM
(OUT) var_complex = TRUE if complex, FALSE otherwise (OUT) var_complex = TRUE if complex, FALSE otherwise
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_ifilename = Variable imaginary filenames (if complex) (OUT) var_ifilename = Variable imaginary filenames (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables by Z_BUFL long) Num_variables by Z_BUFL long)
(OUT) var_freq = complex frequency (if complex) (OUT) var_freq = complex frequency (if complex)
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
(OUT) var_contran = TRUE if constant changes per time step (OUT) var_contran = TRUE if constant changes per time step
FALSE if constant truly same at all time steps FALSE if constant truly same at all time steps
(Array will have been allocated (Array will have been allocated
Num_variables long) Num_variables long)
@ -1720,7 +1720,7 @@ USERD_get_ghosts_in_block_flag
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
* This will be based on Current_time_step * This will be based on Current_time_step
* Intended for structured parts only, value will be ignored for * Intended for structured parts only, value will be ignored for
unstructured parts unstructured parts
@ -1744,7 +1744,7 @@ USERD_get_ghosts_in_model_flag
Arguments: Arguments:
--------- ---------
Notes: Notes:
----- -----
* This routine is new in the 2.01 API * This routine is new in the 2.01 API
@ -1859,7 +1859,7 @@ USERD_get_maxsize_info
--------- ---------
(OUT) max_number_of_nodes = Maximum number of unstructured nodes (OUT) max_number_of_nodes = Maximum number of unstructured nodes
in the part (over all time). in the part (over all time).
(Array will have been allocated (Array will have been allocated
Numparts_available long) Numparts_available long)
@ -1982,7 +1982,7 @@ USERD_get_name_of_reader
Specification: Specification:
------------- -------------
int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME], int USERD_get_name_of_reader(char reader_name[Z_MAX_USERD_NAME],
int *two_fields) int *two_fields)
Returns: Returns:
------- -------
@ -1994,17 +1994,17 @@ USERD_get_name_of_reader
(OUT) reader_name = the name of the your reader or data format. (OUT) reader_name = the name of the your reader or data format.
(max length is Z_MAX_USERD_NAME, which is 20) (max length is Z_MAX_USERD_NAME, which is 20)
(OUT) two_fields = FALSE if only one data field is (OUT) two_fields = FALSE if only one data field is
required. required.
TRUE if two data fields required TRUE if two data fields required
-1 if one field (Geom) required -1 if one field (Geom) required
and one field (Param) is optional and one field (Param) is optional
Param field can contain any text Param field can contain any text
for example a file name, modifiers, for example a file name, modifiers,
etc. that can be used to modify the etc. that can be used to modify the
reader's behavior. reader's behavior.
Notes: Notes:
----- -----
@ -2822,37 +2822,37 @@ USERD_get_number_of_timesets
* If you have a static model, both geometry and variables, you should * If you have a static model, both geometry and variables, you should
return a value of zero. return a value of zero.
* If you have a transient model, then you should return one or more. * If you have a transient model, then you should return one or more.
For example: For example:
Geometry Variables No. of timesets Geometry Variables No. of timesets
--------- ------------------------------ --------------- --------- ------------------------------ ---------------
static static 0 static static 0
static transient, all using same timeset 1 static transient, all using same timeset 1
transient transient, all using same timeset as geom 1 transient transient, all using same timeset as geom 1
static transient, using 3 different timesets 3 static transient, using 3 different timesets 3
transient transient, using 3 different timesets and transient transient, using 3 different timesets and
none of them the same as the none of them the same as the
geometry timeset 4 geometry timeset 4
etc. etc.
NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide NOTE: ALL GEOMETRY MUST USE THE SAME TIMESET!!! You will have to provide
the timeset number to use the timeset number to use
for geometry in: for geometry in:
USERD_get_geom_timeset_number USERD_get_geom_timeset_number
Variables can use the same timeset as the geometry, or can use Variables can use the same timeset as the geometry, or can use
other timesets. More than one variable can use the same timeset. other timesets. More than one variable can use the same timeset.
example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0 example: changing geometry at 5 steps, 0.0, 1.0, 2.0, 3.0, 4.0
variable 1 provided at these same five steps variable 1 provided at these same five steps
variable 2 provided at 3 steps, 0.5, 1.25, 3.33 variable 2 provided at 3 steps, 0.5, 1.25, 3.33
This routine should return a value of 2, because only This routine should return a value of 2, because only
two different timesets are needed. Timeset 1 would be for the two different timesets are needed. Timeset 1 would be for the
geometry and variable 1 (they both use it). Timeset 2 would geometry and variable 1 (they both use it). Timeset 2 would
@ -3134,7 +3134,7 @@ USERD_get_part_elements_by_type
conn_array[100][4] when called with Z_QUA04 conn_array[100][4] when called with Z_QUA04
conn_array[30][8] when called with Z_HEX08 conn_array[30][8] when called with Z_HEX08
Notes: Notes:
----- -----
* Not called unless Num_unstructured_parts is > 0 * Not called unless Num_unstructured_parts is > 0
@ -3268,7 +3268,7 @@ USERD_get_sol_times
Description: Description:
----------- -----------
Get the solution times associated with each time step for Get the solution times associated with each time step for
desired timeset. desired timeset.
Specification: Specification:
@ -3284,7 +3284,7 @@ USERD_get_sol_times
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -3320,7 +3320,7 @@ USERD_get_timeset_description -
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (IN) timeset_number = the timeset number
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid returns 2, the valid
timeset_number's would be 1 and 2 timeset_number's would be 1 and 2
@ -3433,22 +3433,22 @@ USERD_get_var_by_component
(IN) imag_data = TRUE if imag component (IN) imag_data = TRUE if imag component
FALSE if real component FALSE if real component
(IN) component = The component: (0 if Z_SCALAR) (IN) component = The component: (0 if Z_SCALAR)
(0 - 2 if Z_VECTOR) (0 - 2 if Z_VECTOR)
(0 - 5 if Z_TENSOR) (0 - 5 if Z_TENSOR)
(0 - 8 if Z_TENSOR9) (0 - 8 if Z_TENSOR9)
* 6 Symmetric Indicies, 0:5 * * 6 Symmetric Indices, 0:5 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
* T = | 22 23 | = | 1 5 | * * T = | 22 23 | = | 1 5 | *
* | | | | * * | | | | *
* | 33 | | 2 | * * | 33 | | 2 | *
* 9 General Indicies, 0:8 *
* 9 General Indices, 0:8 *
* ---------------------------- * * ---------------------------- *
* | 11 12 13 | | 0 3 4 | * * | 11 12 13 | | 0 3 4 | *
* | | | | * * | | | | *
@ -3456,7 +3456,7 @@ USERD_get_var_by_component
* | | | | * * | | | | *
* | 31 32 33 | | 7 8 2 | * * | 31 32 33 | | 7 8 2 | *
(OUT) var_array (OUT) var_array
----------------------------------------------------------------------- -----------------------------------------------------------------------
(IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!) (IMPORTANT: this array is 1-based for both Z_PER_NODE and Z_PER_ELEM!!!)
@ -3478,7 +3478,7 @@ USERD_get_var_by_component
if Z_PER_ELEM: = 1D array containing variable component if Z_PER_ELEM: = 1D array containing variable component
value for each element of a particular value for each element of a particular
part and type. part and type.
(Array will have been allocated (Array will have been allocated
(number_of_elements[which_part][which_type] + 1) (number_of_elements[which_part][which_type] + 1)
long. See USERD_get_gold_part_build_info) long. See USERD_get_gold_part_build_info)
@ -3540,7 +3540,7 @@ USERD_get_var_value_at_specific
If Z_PER_NODE: If Z_PER_NODE:
= The node number. This is not the id, but is = The node number. This is not the id, but is
the index of the global node the index of the global node
list (1 based), or the block's list (1 based), or the block's
node list (1 based). node list (1 based).
@ -3749,17 +3749,17 @@ USERD_set_filenames
(IN) param_2 = The usage of this string depends on (IN) param_2 = The usage of this string depends on
'two_fields' in USERD_get_name_of_reader. 'two_fields' in USERD_get_name_of_reader.
If two_fields is FALSE then it's empty. If two_fields is FALSE then it's empty.
If two_fields is TRUE, this is the If two_fields is TRUE, this is the
manditory results file entered manditory results file entered
into the result field of the data dialog. into the result field of the data dialog.
If two_fields is -1, then this contains If two_fields is -1, then this contains
optional text (filenames, modifiers, etc.) optional text (filenames, modifiers, etc.)
that can be parsed and used to modify that can be parsed and used to modify
reader reader
(IN) the_path = the path info from the data dialog. (IN) the_path = the path info from the data dialog.
Note: filename_1 and filename_2 have already Note: filename_1 and filename_2 have already
@ -3808,7 +3808,7 @@ USERD_set_server_number
something that you can take advantage of. If your data is already something that you can take advantage of. If your data is already
partitioned in some manner, such that you can access the proper partitioned in some manner, such that you can access the proper
portions using this information. portions using this information.
For all non-SOS uses, this will simply be 1 of 1 For all non-SOS uses, this will simply be 1 of 1
@ -3834,7 +3834,7 @@ USERD_set_time_set_and_step
Arguments: Arguments:
--------- ---------
(IN) timeset_number = the timeset number (1 based). (IN) timeset_number = the timeset number (1 based).
For example: If USERD_get_number_of_timesets For example: If USERD_get_number_of_timesets
returns 2, the valid timeset_number's returns 2, the valid timeset_number's
would be 1 and 2. would be 1 and 2.
@ -4003,14 +4003,14 @@ USERD_rigidbody_values
Arguments: Arguments:
--------- ---------
(IN) part_number = The part number (IN) part_number = The part number
(1-based index of part table, namely: (1-based index of part table, namely:
1 ... Numparts_available. 1 ... Numparts_available.
It is NOT the part_id that It is NOT the part_id that
is loaded in USERD_get_gold_part_build_info) is loaded in USERD_get_gold_part_build_info)
(OUT) values values[0] = IX (x location) (OUT) values values[0] = IX (x location)
values[1] = IY (y location) values[1] = IY (y location)
values[2] = IZ (z location) values[2] = IZ (z location)
@ -4032,7 +4032,7 @@ USERD_rigidbody_values
operation. This is useful to get parts from one operation. This is useful to get parts from one
standard layout to a different standard layout. standard layout to a different standard layout.
(example, flex body parts computed in an axis system (example, flex body parts computed in an axis system
different than that of rigid body parts manipulation) different than that of rigid body parts manipulation)
If not needed or desired, set these to 0.0 If not needed or desired, set these to 0.0
values[10] = rot_order (order the roations are applied values[10] = rot_order (order the roations are applied
@ -4087,7 +4087,7 @@ USERD_set_right_side
------------------------------------------------------------------ ------------------------------------------------------------------
ENHANCED GUI ROUTINES ENHANCED GUI ROUTINES
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_extra_gui_numbers USERD_get_extra_gui_numbers
@ -4111,7 +4111,7 @@ USERD_get_extra_gui_numbers
Arguments: Arguments:
--------- ---------
(OUT) num_Toggles = number of toggles that will be provided (OUT) num_Toggles = number of toggles that will be provided
num_pulldowns = number of pulldowns that will be provided num_pulldowns = number of pulldowns that will be provided
num_fields = number of fields that will be provided num_fields = number of fields that will be provided
@ -4131,63 +4131,63 @@ USERD_get_extra_gui_numbers
simply delete these routines, or change their simply delete these routines, or change their
names to something such as names to something such as
USERD_DISABLED_get_extra_gui_defaults USERD_DISABLED_get_extra_gui_defaults
The presence of these routines The presence of these routines
will ensure that EnSight will call them and will ensure that EnSight will call them and
use their data to modify the extraction parameters set use their data to modify the extraction parameters set
with some or all of the following: with some or all of the following:
toggles, pulldown menu and fields. toggles, pulldown menu and fields.
The user can then interact with the enhanced The user can then interact with the enhanced
GUI and then send their choices to GUI and then send their choices to
USERD_set_extra_gui_data USERD_set_extra_gui_data
Therefore if USERD_get_extra_gui_numbers Therefore if USERD_get_extra_gui_numbers
exists then the other two must exist. exists then the other two must exist.
If none exist, then the GUI will be unchanged. If none exist, then the GUI will be unchanged.
Toggle data will return an integer Toggle data will return an integer
TRUE if checked TRUE if checked
FALSE if unchecked FALSE if unchecked
Pulldown menu will return an integer representing Pulldown menu will return an integer representing
the menu item selected the menu item selected
Field will return a string Z_LEN_GUI_FIELD_STR long. Field will return a string Z_LEN_GUI_FIELD_STR long.
If all the enhanced GUI features are enabled it If all the enhanced GUI features are enabled it
might look something like this might look something like this
=================================================== ===================================================
[] Title 1 [X] Title 3 [] Title 1 [X] Title 3
[X]Title 2 [X] Title 4 [X]Title 2 [X] Title 4
Pulldown Menu -> Pulldown Menu ->
Menu Choice 1 Menu Choice 1
Menu Choice 2 Menu Choice 2
Menu Choice 3 Menu Choice 3
Data Field Title 1 ____________________________ Data Field Title 1 ____________________________
Data Field Title 2 ____________________________ Data Field Title 2 ____________________________
===================================================== =====================================================
This routine defines the numbers of toggles, pulldowns & fields This routine defines the numbers of toggles, pulldowns & fields
The following are defined in the global_extern.h The following are defined in the global_extern.h
Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns
Z_LEN_GUI_PULL_STR max length of GUI pulldown string Z_LEN_GUI_PULL_STR max length of GUI pulldown string
Z_LEN_GUI_FIELD_STR max length of field string Z_LEN_GUI_FIELD_STR max length of field string
Z_LEN_GUI_TITLE_STR max length of title string Z_LEN_GUI_TITLE_STR max length of title string
The library is loaded, this routine is The library is loaded, this routine is
called, then the library is unloaded. called, then the library is unloaded.
Do not define globals in this routine Do not define globals in this routine
as when the library is unloaded, you'll as when the library is unloaded, you'll
lose them. lose them.
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_extra_gui_defaults USERD_get_extra_gui_defaults
@ -4221,17 +4221,17 @@ USERD_get_extra_gui_defaults
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
toggle_default_status = Setting for each toggle (TRUE or FALSE) toggle_default_status = Setting for each toggle (TRUE or FALSE)
array dimension is [num_toggles] long array dimension is [num_toggles] long
pulldown_Title = title for each pulldown pulldown_Title = title for each pulldown
array dimension is [num_pulldowns] by array dimension is [num_pulldowns] by
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
pulldown_number_in_list = number of items in each pulldown pulldown_number_in_list = number of items in each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_default_selection = pulldown item selection for each pulldown pulldown_default_selection = pulldown item selection for each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_item_strings = pulldown item strings pulldown_item_strings = pulldown item strings
array is [num_pulldowns] by array is [num_pulldowns] by
@ -4251,7 +4251,7 @@ USERD_get_extra_gui_defaults
Notes: Notes:
----- -----
* The library is loaded, this routine is called, then the library is unloaded. * The library is loaded, this routine is called, then the library is unloaded.
* Do not define globals in this routine as when the library is unloaded, you'll * Do not define globals in this routine as when the library is unloaded, you'll
lose them. lose them.
@ -4292,7 +4292,7 @@ USERD_set_extra_gui_data
* This routine is called when the library is permanently * This routine is called when the library is permanently
loaded to the EnSight session, so define your globals loaded to the EnSight session, so define your globals
in this and later routines. in this and later routines.
* It's up to you to change your reader behavior according to * It's up to you to change your reader behavior according to
user entries! user entries!
@ -4322,7 +4322,7 @@ USERD_get_var_extract_gui_numbers
Arguments: Arguments:
--------- ---------
(OUT) num_Toggles = number of toggles that will be provided (OUT) num_Toggles = number of toggles that will be provided
num_pulldowns = number of pulldowns that will be provided num_pulldowns = number of pulldowns that will be provided
num_fields = number of fields that will be provided num_fields = number of fields that will be provided
@ -4341,63 +4341,63 @@ USERD_get_var_extract_gui_numbers
simply delete these routines, or change their simply delete these routines, or change their
names to something such as names to something such as
USERD_DISABLED_get_var_extract_gui_defaults USERD_DISABLED_get_var_extract_gui_defaults
The presence of these routines The presence of these routines
will ensure that EnSight will call them and will ensure that EnSight will call them and
use their data to modify the extraction parameters set use their data to modify the extraction parameters set
with some or all of the following: with some or all of the following:
toggles, pulldown menu and fields. toggles, pulldown menu and fields.
The user can then interact with the enhanced The user can then interact with the enhanced
GUI and then send their choices to GUI and then send their choices to
USERD_set_extra_gui_data USERD_set_extra_gui_data
Therefore if USERD_get_var_extract_gui_numbers Therefore if USERD_get_var_extract_gui_numbers
exists then the other two must exist. exists then the other two must exist.
If none exist, then the GUI will be unchanged. If none exist, then the GUI will be unchanged.
Toggle data will return an integer Toggle data will return an integer
TRUE if checked TRUE if checked
FALSE if unchecked FALSE if unchecked
Pulldown menu will return an integer representing Pulldown menu will return an integer representing
the menu item selected the menu item selected
Field will return a string Z_LEN_GUI_FIELD_STR long. Field will return a string Z_LEN_GUI_FIELD_STR long.
If all the enhanced GUI features are enabled it If all the enhanced GUI features are enabled it
might look something like this might look something like this
=================================================== ===================================================
[] Title 1 [X] Title 3 [] Title 1 [X] Title 3
[X]Title 2 [X] Title 4 [X]Title 2 [X] Title 4
Pulldown Menu -> Pulldown Menu ->
Menu Choice 1 Menu Choice 1
Menu Choice 2 Menu Choice 2
Menu Choice 3 Menu Choice 3
Data Field Title 1 ____________________________ Data Field Title 1 ____________________________
Data Field Title 2 ____________________________ Data Field Title 2 ____________________________
===================================================== =====================================================
This routine defines the numbers of toggles, pulldowns & fields This routine defines the numbers of toggles, pulldowns & fields
The following are defined in the global_extern.h The following are defined in the global_extern.h
Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns Z_MAX_NUM_GUI_PULL_ITEMS max num GUI pulldowns
Z_LEN_GUI_PULL_STR max length of GUI pulldown string Z_LEN_GUI_PULL_STR max length of GUI pulldown string
Z_LEN_GUI_FIELD_STR max length of field string Z_LEN_GUI_FIELD_STR max length of field string
Z_LEN_GUI_TITLE_STR max length of title string Z_LEN_GUI_TITLE_STR max length of title string
The library is loaded, this routine is The library is loaded, this routine is
called, then the library is unloaded. called, then the library is unloaded.
Do not define globals in this routine Do not define globals in this routine
as when the library is unloaded, you'll as when the library is unloaded, you'll
lose them. lose them.
-------------------------------------------------------------------- --------------------------------------------------------------------
USERD_get_var_extract_gui_defaults USERD_get_var_extract_gui_defaults
@ -4431,17 +4431,17 @@ USERD_get_var_extract_gui_defaults
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
toggle_default_status = Setting for each toggle (TRUE or FALSE) toggle_default_status = Setting for each toggle (TRUE or FALSE)
array dimension is [num_toggles] long array dimension is [num_toggles] long
pulldown_Title = title for each pulldown pulldown_Title = title for each pulldown
array dimension is [num_pulldowns] by array dimension is [num_pulldowns] by
[Z_LEN_GUI_TITLE_STR] long [Z_LEN_GUI_TITLE_STR] long
pulldown_number_in_list = number of items in each pulldown pulldown_number_in_list = number of items in each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_default_selection = pulldown item selection for each pulldown pulldown_default_selection = pulldown item selection for each pulldown
array dimension is [num_pulldowns] long array dimension is [num_pulldowns] long
pulldown_item_strings = pulldown item strings pulldown_item_strings = pulldown item strings
array is [num_pulldowns] by array is [num_pulldowns] by
@ -4461,7 +4461,7 @@ USERD_get_var_extract_gui_defaults
Notes: Notes:
----- -----
* The library is loaded, this routine is called, then the library is unloaded. * The library is loaded, this routine is called, then the library is unloaded.
* Do not define globals in this routine as when the library is unloaded, you'll * Do not define globals in this routine as when the library is unloaded, you'll
lose them. lose them.
@ -4502,7 +4502,7 @@ USERD_set_var_extract_gui_data
* This routine is called when the library is permanently * This routine is called when the library is permanently
loaded to the EnSight session, so define your globals loaded to the EnSight session, so define your globals
in this and later routines. in this and later routines.
* It's up to you to change your reader behavior according to * It's up to you to change your reader behavior according to
user entries! user entries!
@ -4514,19 +4514,19 @@ USERD_set_var_extract_gui_data
/* ---------------------------------------------------------- /* ----------------------------------------------------------
* New in EnSight 8 is the capability to remove (fail) elements * New in EnSight 8 is the capability to remove (fail) elements
* based on variable threshold values. Basically the variable * based on variable threshold values. Basically the variable
* name, a couple of thresholds, a couple of values and a logic * name, a couple of thresholds, a couple of values and a logic
* criteria are read in from this routine. Every element that * criteria are read in from this routine. Every element that
* satisfies the failure criteria is removed and not used in * satisfies the failure criteria is removed and not used in
* EnSight calculations. * EnSight calculations.
* *
* Example Failure criteria * Example Failure criteria
* Let fail_var_name = "fail_flag" * Let fail_var_name = "fail_flag"
* threshold_val1 = 0 * threshold_val1 = 0
* threshold_operator1 = Z_EQUAL_TO * threshold_operator1 = Z_EQUAL_TO
* logic_criteria2 not used * logic_criteria2 not used
* threshold_val2 not used * threshold_val2 not used
* threshold_operator2 not used * threshold_operator2 not used
* For each value of "fail_flag" at each element, * For each value of "fail_flag" at each element,
* if fail flag == threshold_val1 (0.0) then element fails * if fail flag == threshold_val1 (0.0) then element fails
* Return (Z_ERR) if this is not used. * Return (Z_ERR) if this is not used.
* Return (Z_OK) if failed element feature should be used * Return (Z_OK) if failed element feature should be used
@ -4555,7 +4555,7 @@ int USERD_get_uns_failed_params(
Z_EQUAL_TO */ Z_EQUAL_TO */
int *threshold_operator2, /* Z_GREATER_THAN, Z_LESS_THAN, int *threshold_operator2, /* Z_GREATER_THAN, Z_LESS_THAN,
Z_EQUAL_TO */ Z_EQUAL_TO */
int *logic_criteria2 int *logic_criteria2
/*-------------------------------------------------------------------- /*--------------------------------------------------------------------

View File

@ -799,7 +799,7 @@ USERD_get_part_element_ids_by_type_in_buffers(int part_number,
* (0 - 5 if Z_TENSOR) * (0 - 5 if Z_TENSOR)
* (0 - 8 if Z_TENSOR9) * (0 - 8 if Z_TENSOR9)
* *
* * 6 Symmetric Indicies, 0:5 * * * 6 Symmetric Indices, 0:5 *
* * ---------------------------- * * * ---------------------------- *
* * | 11 12 13 | | 0 3 4 | * * * | 11 12 13 | | 0 3 4 | *
* * | | | | * * * | | | | *
@ -807,7 +807,7 @@ USERD_get_part_element_ids_by_type_in_buffers(int part_number,
* * | | | | * * * | | | | *
* * | 33 | | 2 | * * * | 33 | | 2 | *
* *
* * 9 General Indicies, 0:8 * * * 9 General Indices, 0:8 *
* * ---------------------------- * * * ---------------------------- *
* * | 11 12 13 | | 0 1 2 | * * * | 11 12 13 | | 0 1 2 | *
* * | | | | * * * | | | | *

View File

@ -93,7 +93,7 @@ int USERD_set_filenames
fieldNames = objects.names(); fieldNames = objects.names();
// because of the spray being a 'field' ... // because of the spray being a 'field' ...
// get the availabe number of variables and // get the available number of variables and
// check for type (scalar/vector/tensor) // check for type (scalar/vector/tensor)
label nVar = 0; label nVar = 0;

View File

@ -365,7 +365,7 @@ enum z_matset_via_file_type
#define DATA_TARGET_MASK 0x0000000f #define DATA_TARGET_MASK 0x0000000f
/* --------------------------------------- /* ---------------------------------------
* Failed elemenet enums * Failed element enums
* --------------------------------------- */ * --------------------------------------- */
enum z_element_failure_criteria enum z_element_failure_criteria

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -61,10 +61,10 @@ Description
@endverbatim @endverbatim
When the operation is peformed - for union, all of the edges generates where When the operation is performed - for union, all of the edges generates
one surfaces cuts another are all "internal" for union, and "external" for where one surfaces cuts another are all "internal" for union, and "external"
intersection, b - a and a - b. This has been assumed, formal (dis)proof is for intersection, b - a and a - b. This has been assumed, formal (dis)proof
invited. is invited.
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/

View File

@ -681,7 +681,7 @@ static void getSplitVerts
} }
else else
{ {
// Copy upto (but not including) e[1] // Copy up to (but not including) e[1]
label i1 = findIndex(orderedVerts, e[1]); label i1 = findIndex(orderedVerts, e[1]);
splitVerts = SubList<label>(orderedVerts, i1, 0); splitVerts = SubList<label>(orderedVerts, i1, 0);
splitWeights = SubList<scalar>(orderedWeights, i1, 0); splitWeights = SubList<scalar>(orderedWeights, i1, 0);
@ -714,7 +714,7 @@ static void getSplitVerts
{ {
// Reverse. // Reverse.
// Copy upto (but not including) e[0] // Copy up to (but not including) e[0]
label i0 = findIndex(orderedVerts, e[0]); label i0 = findIndex(orderedVerts, e[0]);
splitVerts = SubList<label>(orderedVerts, i0, 0); splitVerts = SubList<label>(orderedVerts, i0, 0);

View File

@ -40,7 +40,7 @@ Quaternion model_orientation; // orientation of bunny
// We just set up this system here in this module // We just set up this system here in this module
// so that we could retrieve the model at any desired vertex count. // so that we could retrieve the model at any desired vertex count.
// Therefore if this part of the program confuses you, then // Therefore if this part of the program confuses you, then
// dont worry about it. It might help to look over the progmesh.cpp // don't worry about it. It might help to look over the progmesh.cpp
// module first. // module first.
// Map() // Map()
@ -93,7 +93,7 @@ void DrawModelTriangles() {
// could have been made into a "break" statement. // could have been made into a "break" statement.
if(p0==p1 || p1==p2 || p2==p0) continue; if(p0==p1 || p1==p2 || p2==p0) continue;
renderpolycount++; renderpolycount++;
// if we are not currenly morphing between 2 levels of detail // if we are not currently morphing between 2 levels of detail
// (i.e. if morph=1.0) then q0,q1, and q2 are not necessary. // (i.e. if morph=1.0) then q0,q1, and q2 are not necessary.
int q0= Map(p0,(int)(render_num*lodbase)); int q0= Map(p0,(int)(render_num*lodbase));
int q1= Map(p1,(int)(render_num*lodbase)); int q1= Map(p1,(int)(render_num*lodbase));

View File

@ -273,7 +273,7 @@ void AddFaces(List<tridata> &tri){
Vertex *MinimumCostEdge(){ Vertex *MinimumCostEdge(){
// Find the edge that when collapsed will affect model the least. // Find the edge that when collapsed will affect model the least.
// This funtion actually returns a Vertex, the second vertex // This function actually returns a Vertex, the second vertex
// of the edge (collapse candidate) is stored in the vertex data. // of the edge (collapse candidate) is stored in the vertex data.
// Serious optimization opportunity here: this function currently // Serious optimization opportunity here: this function currently
// does a sequential search through an unsorted list :-( // does a sequential search through an unsorted list :-(

View File

@ -14,7 +14,7 @@ float magnitude(Vector v) {
Vector normalize(Vector v) { Vector normalize(Vector v) {
float d=magnitude(v); float d=magnitude(v);
if (d==0) { if (d==0) {
printf("Cant normalize ZERO vector\n"); printf("Can't normalize ZERO vector\n");
assert(0); assert(0);
d=0.1f; d=0.1f;
} }

View File

@ -76,7 +76,7 @@ void CalcFPSDeltaT(){
} }
DeltaT = (float)(current-last)/CLOCKS_PER_SEC; DeltaT = (float)(current-last)/CLOCKS_PER_SEC;
if(current==last) { if(current==last) {
DeltaT = 0.1f/CLOCKS_PER_SEC; // it just cant be 0 DeltaT = 0.1f/CLOCKS_PER_SEC; // it just can't be 0
} }
// if(DeltaT>1.0) DeltaT=1.0; // if(DeltaT>1.0) DeltaT=1.0;
FPS = (float)rv; FPS = (float)rv;

View File

@ -242,7 +242,7 @@ label markBorderPoints
} }
// Get minumum length of edges connected to pointi // Get minimum length of edges connected to pointi
// Serves to get some local length scale. // Serves to get some local length scale.
scalar minEdgeLen(const triSurface& surf, const label pointi) scalar minEdgeLen(const triSurface& surf, const label pointi)
{ {

View File

@ -1,14 +1,14 @@
EXTENDED THIRD MILLENIUM IDEAL GAS AND CONDENSED PHASE THERMOCHEMICAL DATABASE EXTENDED THIRD MILLENNIUM IDEAL GAS AND CONDENSED PHASE THERMOCHEMICAL DATABASE
FOR COMBUSTION WITH UPDATES FROM ACTIVE THERMOCHEMICAL TABLES FOR COMBUSTION WITH UPDATES FROM ACTIVE THERMOCHEMICAL TABLES
Authors: Elke Goos, Alexander Burcat and Branko Ruscic. Authors: Elke Goos, Alexander Burcat and Branko Ruscic.
It is strictly forbiden to include this database as is or parts of it in any It is strictly forbidden to include this database as is or parts of it in any
commercial software firmware or hardware without permission from the authors. commercial software firmware or hardware without permission from the authors.
Contact: Elke.Goos@dlr.de Contact: Elke.Goos@dlr.de
*WARNING***The original 7-coeficient polynomials can accept molecules *WARNING***The original 7-coeficient polynomials can accept molecules
containing only four different elements. The new CHEMKIN program was changed to containing only four different elements. The new CHEMKIN program was changed to
accept polynomials with 5 diferent elements. See the CHEMKIN manual. accept polynomials with 5 different elements. See the CHEMKIN manual.
Where the fifth element exist, the new Chemkin convention was folowed. Where the fifth element exist, the new Chemkin convention was folowed.
THERMO ALL THERMO ALL

View File

@ -1,15 +1,15 @@
/* /*
EXTENDED THIRD MILLENIUM IDEAL GAS AND CONDENSED PHASE THERMOCHEMICAL DATABASE EXTENDED THIRD MILLENNIUM IDEAL GAS AND CONDENSED PHASE THERMOCHEMICAL DATABASE
FOR COMBUSTION WITH UPDATES FROM ACTIVE THERMOCHEMICAL TABLES FOR COMBUSTION WITH UPDATES FROM ACTIVE THERMOCHEMICAL TABLES
Authors: Elke Goos, Alexander Burcat and Branko Ruscic. Authors: Elke Goos, Alexander Burcat and Branko Ruscic.
It is strictly forbiden to include this database as is or parts of it in any It is strictly forbidden to include this database as is or parts of it in any
commercial software firmware or hardware without permission from the authors. commercial software firmware or hardware without permission from the authors.
Contact: Elke.Goos@dlr.de Contact: Elke.Goos@dlr.de
*WARNING***The original 7-coeficient polynomials can accept molecules *WARNING***The original 7-coeficient polynomials can accept molecules
containing only four different elements. The new CHEMKIN program was changed to containing only four different elements. The new CHEMKIN program was changed to
accept polynomials with 5 diferent elements. See the CHEMKIN manual. accept polynomials with 5 different elements. See the CHEMKIN manual.
Where the fifth element exist, the new Chemkin convention was folowed. Where the fifth element exist, the new Chemkin convention was folowed.
This file was generated from therm.dat provided in this directory. This file was generated from therm.dat provided in this directory.

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -186,7 +186,7 @@ public:
inline void resizeMatrix(scalarSquareMatrix& m) const; inline void resizeMatrix(scalarSquareMatrix& m) const;
//- Solve the ODE system as far as possible upto dxTry //- Solve the ODE system as far as possible up to dxTry
// adjusting the step as necessary to provide a solution within // adjusting the step as necessary to provide a solution within
// the specified tolerance. // the specified tolerance.
// Update the state and return an estimate for the next step in dxTry // Update the state and return an estimate for the next step in dxTry
@ -197,7 +197,7 @@ public:
scalar& dxTry scalar& dxTry
) const; ) const;
//- Solve the ODE system as far as possible upto dxTry //- Solve the ODE system as far as possible up to dxTry
// adjusting the step as necessary to provide a solution within // adjusting the step as necessary to provide a solution within
// the specified tolerance. // the specified tolerance.
// Update the state and return an estimate for the next step in dxTry // Update the state and return an estimate for the next step in dxTry

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -259,7 +259,7 @@ Foam::fileName Foam::cwd()
} }
else if(errno == ERANGE) else if(errno == ERANGE)
{ {
// Increment path length upto the pathLengthMax limit // Increment path length up to the pathLengthMax limit
if if
( (
(pathLengthLimit += POSIX::pathLengthChunk) (pathLengthLimit += POSIX::pathLengthChunk)
@ -687,7 +687,7 @@ Foam::fileNameList Foam::readDir
{ {
fileName fName(list->d_name); fileName fName(list->d_name);
// ignore files begining with ., i.e. '.', '..' and '.*' // ignore files beginning with ., i.e. '.', '..' and '.*'
if (fName.size() && fName[0] != '.') if (fName.size() && fName[0] != '.')
{ {
word fExt = fName.ext(); word fExt = fName.ext();

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,9 +25,9 @@ Class
Foam::sigInt Foam::sigInt
Description Description
Signal handler for INT interupt. Signal handler for INT interrupt.
The standard interupt handler is overridden to ensure that the The standard interrupt handler is overridden to ensure that the
runningJob file is removed. runningJob file is removed.
See also See also

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,9 +25,9 @@ Class
Foam::sigQuit Foam::sigQuit
Description Description
Signal handler for QUIT interupt. Signal handler for QUIT interrupt.
The standard interupt handler is overridden to ensure that the The standard interrupt handler is overridden to ensure that the
runningJob file is removed. runningJob file is removed.
See also See also

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,9 +25,9 @@ Class
Foam::sigSegv Foam::sigSegv
Description Description
Signal handler for SEGV interupt. Signal handler for SEGV interrupt.
The standard interupt handler is overridden to ensure that the The standard interrupt handler is overridden to ensure that the
runningJob file is removed. runningJob file is removed.
See also See also

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,7 +25,7 @@ Class
Foam::sigStopAtWriteNow Foam::sigStopAtWriteNow
Description Description
Signal handler for interupt defined by Signal handler for interrupt defined by
OptimisationSwitches::stopAtWriteNowSignal OptimisationSwitches::stopAtWriteNowSignal
Write and stop the job. Write and stop the job.

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,7 +25,7 @@ Class
Foam::sigWriteNow Foam::sigWriteNow
Description Description
Signal handler for interupt defined by OptimisationSwitches::writeNowSignal Signal handler for interrupt defined by OptimisationSwitches::writeNowSignal
Write once and continue. Write once and continue.

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -67,7 +67,7 @@ SourceFiles
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
//- Check it a timeout has occured //- Check it a timeout has occurred
// keep setjmp in same stack frame so no function calls // keep setjmp in same stack frame so no function calls
#define timedOut(x) \ #define timedOut(x) \
(((x).newTimeOut_ > 0) ? setjmp(Foam::timer::envAlarm) : false) (((x).newTimeOut_ > 0) ? setjmp(Foam::timer::envAlarm) : false)

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -158,7 +158,7 @@ List<OutList> invertManyToMany(const label len, const UList<InList>& in)
//- Create identity map (map[i] == i) of given length //- Create identity map (map[i] == i) of given length
labelList identity(const label len); labelList identity(const label len);
//- Find first occurence of given element and return index, //- Find first occurrence of given element and return index,
// return -1 if not found. Linear search. // return -1 if not found. Linear search.
template<class ListType> template<class ListType>
label findIndex label findIndex
@ -168,7 +168,7 @@ label findIndex
const label start=0 const label start=0
); );
//- Find all occurences of given element. Linear search. //- Find all occurrences of given element. Linear search.
template<class ListType> template<class ListType>
labelList findIndices labelList findIndices
( (
@ -208,7 +208,7 @@ template<class ListType>
label findMin(const ListType&, const label start=0); label findMin(const ListType&, const label start=0);
//- Find first occurence of given element in sorted list and return index, //- Find first occurrence of given element in sorted list and return index,
// return -1 if not found. Binary search. // return -1 if not found. Binary search.
template<class ListType> template<class ListType>
label findSortedIndex label findSortedIndex

View File

@ -311,11 +311,11 @@ public:
// Check // Check
//- Check IOstream status for given operation //- Check IOstream status for given operation
// print IOstream state if error has occured // print IOstream state if error has occurred
virtual bool check(const char* operation) const; virtual bool check(const char* operation) const;
//- Check IOstream status for given operation //- Check IOstream status for given operation
// print IOstream state if error has occured and exit // print IOstream state if error has occurred and exit
void fatalCheck(const char* operation) const; void fatalCheck(const char* operation) const;
//- Return true if stream has been opened //- Return true if stream has been opened

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -97,7 +97,7 @@ Foam::token::compound& Foam::token::transferCompoundToken(const Istream& is)
if (compoundTokenPtr_->empty()) if (compoundTokenPtr_->empty())
{ {
FatalIOErrorInFunction(is) FatalIOErrorInFunction(is)
<< "compound has already been transfered from token\n " << "compound has already been transferred from token\n "
<< info() << abort(FatalIOError); << info() << abort(FatalIOError);
} }
else else

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -138,7 +138,7 @@ public:
// if registerCopy is true // if registerCopy is true
regIOobject(const regIOobject&, bool registerCopy); regIOobject(const regIOobject&, bool registerCopy);
//- Construct as copy with new name, transfering registry registration //- Construct as copy with new name, transferring registry registration
// to copy as specified // to copy as specified
regIOobject(const word& newName, const regIOobject&, bool registerCopy); regIOobject(const word& newName, const regIOobject&, bool registerCopy);

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -408,7 +408,7 @@ Foam::Istream& Foam::dimensionSet::read
{ {
multiplier = 1.0; multiplier = 1.0;
// Read begining of dimensionSet // Read beginning of dimensionSet
token startToken(is); token startToken(is);
if (startToken != token::BEGIN_SQR) if (startToken != token::BEGIN_SQR)
@ -503,7 +503,7 @@ Foam::Istream& Foam::dimensionSet::read
{ {
multiplier = 1.0; multiplier = 1.0;
// Read begining of dimensionSet // Read beginning of dimensionSet
token startToken(is); token startToken(is);
if (startToken != token::BEGIN_SQR) if (startToken != token::BEGIN_SQR)

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -207,7 +207,7 @@ public:
// This function is added to overide the hack in pointPatchField.H // This function is added to overide the hack in pointPatchField.H
// which enables simple backward compatability with verions using // which enables simple backward compatibility with verions using
// referenceLevel in GeometicField // referenceLevel in GeometicField
template<class Type> template<class Type>
tmp<Field<Type>> operator+ tmp<Field<Type>> operator+

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -489,7 +489,7 @@ public:
}; };
// This function is added as a hack to enable simple backward compatability // This function is added as a hack to enable simple backward compatibility
// with verions using referenceLevel in GeometicField // with verions using referenceLevel in GeometicField
template<class Type> template<class Type>
const pointPatchField<Type>& operator+ const pointPatchField<Type>& operator+

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield |2011 OpenFOAM: The Open Source CFD Toolbox \\ / F ield |2011 OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -140,7 +140,7 @@ Foam::autoPtr<Foam::pointPatchField<Type>> Foam::pointPatchField<Type>::New
} }
} }
// Construct (but not necesarily returned) // Construct (but not necessarily returned)
autoPtr<pointPatchField<Type>> pfPtr(cstrIter()(p, iF, dict)); autoPtr<pointPatchField<Type>> pfPtr(cstrIter()(p, iF, dict));
if if

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2017-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -598,7 +598,7 @@ bool Foam::fileOperations::uncollatedFileOperation::read
if (masterOnly && Pstream::parRun()) if (masterOnly && Pstream::parRun())
{ {
// Master reads headerclassname from file. Make sure this gets // Master reads headerclassname from file. Make sure this gets
// transfered as well as contents. // transferred as well as contents.
Pstream::scatter(io.headerClassName()); Pstream::scatter(io.headerClassName());
Pstream::scatter(io.note()); Pstream::scatter(io.note());

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -144,7 +144,7 @@ public:
const tmp<Field<Type>>& tff const tmp<Field<Type>>& tff
) const; ) const;
//- Do what is neccessary if the mesh has moved //- Do what is necessary if the mesh has moved
bool movePoints(); bool movePoints();
}; };

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,7 +25,7 @@ Class
Foam::uniformInterpolationTable Foam::uniformInterpolationTable
Description Description
Table with uniform interval in independant variable, with linear Table with uniform interval in independent variable, with linear
interpolation interpolation
Example usage (scalar): values specified within a dictionary: Example usage (scalar): values specified within a dictionary:

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -32,7 +32,7 @@ Description
Addressing arrays must be supplied for the upper and lower triangles. Addressing arrays must be supplied for the upper and lower triangles.
Note Note
It might be better if this class were organised as a hierachy starting It might be better if this class were organised as a hierarchy starting
from an empty matrix, then deriving diagonal, symmetric and asymmetric from an empty matrix, then deriving diagonal, symmetric and asymmetric
matrices. matrices.

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -135,7 +135,7 @@ Foam::LduMatrix<Type, DType, LUType>::faceH(const Field<Type>& psi) const
const Field<LUType>& Lower = const_cast<const LduMatrix&>(*this).lower(); const Field<LUType>& Lower = const_cast<const LduMatrix&>(*this).lower();
const Field<LUType>& Upper = const_cast<const LduMatrix&>(*this).upper(); const Field<LUType>& Upper = const_cast<const LduMatrix&>(*this).upper();
// Take refereces to addressing // Take references to addressing
const unallocLabelList& l = lduAddr().lowerAddr(); const unallocLabelList& l = lduAddr().lowerAddr();
const unallocLabelList& u = lduAddr().upperAddr(); const unallocLabelList& u = lduAddr().upperAddr();

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,7 +25,7 @@ Class
Foam::SmoothSolver Foam::SmoothSolver
Description Description
Iterative solver for symmetric and assymetric matrices which uses a Iterative solver for symmetric and asymmetric matrices which uses a
run-time selected smoother e.g. GaussSeidel to converge the solution to run-time selected smoother e.g. GaussSeidel to converge the solution to
the required tolerance. To improve efficiency, the residual is evaluated the required tolerance. To improve efficiency, the residual is evaluated
after every nSweeps smoothing iterations. after every nSweeps smoothing iterations.

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -31,7 +31,7 @@ Description
Addressing arrays must be supplied for the upper and lower triangles. Addressing arrays must be supplied for the upper and lower triangles.
It might be better if this class were organised as a hierachy starting It might be better if this class were organised as a hierarchy starting
from an empty matrix, then deriving diagonal, symmetric and asymmetric from an empty matrix, then deriving diagonal, symmetric and asymmetric
matrices. matrices.

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -161,7 +161,7 @@ public:
//- Assignment to pointer changing this tmp to a temporary T //- Assignment to pointer changing this tmp to a temporary T
inline void operator=(T*); inline void operator=(T*);
//- Assignment transfering the temporary T to this tmp //- Assignment transferring the temporary T to this tmp
inline void operator=(const tmp<T>&); inline void operator=(const tmp<T>&);
}; };

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2016-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -151,7 +151,7 @@ public:
//- Assignment to pointer changing this tmpNrc to a temporary T //- Assignment to pointer changing this tmpNrc to a temporary T
inline void operator=(T*); inline void operator=(T*);
//- Assignment transfering the temporary T to this tmpNrc //- Assignment transferring the temporary T to this tmpNrc
inline void operator=(const tmpNrc<T>&); inline void operator=(const tmpNrc<T>&);
}; };

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -39,7 +39,7 @@ Description
- procSchedule()[proci] gives per proci - procSchedule()[proci] gives per proci
Does not care whether 'talking' is first send, second receive or maybe Does not care whether 'talking' is first send, second receive or maybe
full swap. This is all responsability of caller. See ProcessorTopology full swap. This is all responsibility of caller. See ProcessorTopology
class for use in scheduling processor boundary swaps. class for use in scheduling processor boundary swaps.
SourceFiles SourceFiles

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -68,7 +68,7 @@ Foam::label Foam::cell::opposingFaceLabel
{ {
bool sharedPoint = false; bool sharedPoint = false;
// Compare every vertex of the current face agains the // Compare every vertex of the current face against the
// vertices of the master face // vertices of the master face
forAll(curFace, pointi) forAll(curFace, pointi)
{ {

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -277,7 +277,7 @@ void Foam::globalMeshData::countSharedEdges
{ {
if (globalFnd() == -1) if (globalFnd() == -1)
{ {
// Second time occurence of this edge. Assign proper // Second time occurrence of this edge. Assign proper
// edge label. // edge label.
globalFnd() = sharedEdgeI++; globalFnd() = sharedEdgeI++;
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -892,7 +892,7 @@ bool Foam::polyBoundaryMesh::checkParallelSync(const bool report) const
Pout<< " ***Problem with boundary patch " << patchi Pout<< " ***Problem with boundary patch " << patchi
<< " named " << bm[patchi].name() << " named " << bm[patchi].name()
<< " of type " << bm[patchi].type() << " of type " << bm[patchi].type()
<< ". The patch seems to be preceeded by processor" << ". The patch seems to be preceded by processor"
<< " patches. This is can give problems." << " patches. This is can give problems."
<< endl; << endl;
} }

View File

@ -1427,7 +1427,7 @@ bool Foam::cyclicPolyPatch::order
ownerPatchPtr_.clear(); ownerPatchPtr_.clear();
// Return false if no change neccesary, true otherwise. // Return false if no change necessary, true otherwise.
forAll(faceMap, facei) forAll(faceMap, facei)
{ {

View File

@ -1204,7 +1204,7 @@ bool Foam::oldCyclicPolyPatch::order
rotation rotation
); );
// Return false if no change neccesary, true otherwise. // Return false if no change necessary, true otherwise.
forAll(faceMap, facei) forAll(faceMap, facei)
{ {

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -99,7 +99,7 @@ class oldCyclicPolyPatch
// Face ordering // Face ordering
//- Find the two parts of the faces of pp using feature edges. //- Find the two parts of the faces of pp using feature edges.
// Returns true if successfull. // Returns true if successful.
bool getGeometricHalves bool getGeometricHalves
( (
const primitivePatch&, const primitivePatch&,

View File

@ -151,7 +151,7 @@ class primitiveMesh
mutable labelListList* cpPtr_; mutable labelListList* cpPtr_;
// On-the-fly edge addresing storage // On-the-fly edge addressing storage
//- Temporary storage for addressing. //- Temporary storage for addressing.
mutable DynamicList<label> labels_; mutable DynamicList<label> labels_;
@ -516,7 +516,7 @@ public:
//- Return faces //- Return faces
virtual const faceList& faces() const = 0; virtual const faceList& faces() const = 0;
//- Face face-owner addresing //- Face face-owner addressing
virtual const labelList& faceOwner() const = 0; virtual const labelList& faceOwner() const = 0;
//- Face face-neighbour addressing //- Face face-neighbour addressing

View File

@ -22,7 +22,7 @@ License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>. along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Description Description
Calulate the face centres and areas. Calculate the face centres and areas.
Calculate the centre by breaking the face into triangles using the face Calculate the centre by breaking the face into triangles using the face
centre and area-weighted averaging their centres. This method copes with centre and area-weighted averaging their centres. This method copes with

View File

@ -64,7 +64,7 @@ static const doubleScalar doubleScalarRootVSmall = ::sqrt(doubleScalarVSmall);
static const doubleScalar doubleScalarRootGreat = ::sqrt(doubleScalarGreat); static const doubleScalar doubleScalarRootGreat = ::sqrt(doubleScalarGreat);
static const doubleScalar doubleScalarRootSmall = ::sqrt(doubleScalarSmall); static const doubleScalar doubleScalarRootSmall = ::sqrt(doubleScalarSmall);
//- Read whole of buf as a scalar. Return true if succesful. //- Read whole of buf as a scalar. Return true if successful.
inline bool readScalar(const char* buf, doubleScalar& s) inline bool readScalar(const char* buf, doubleScalar& s)
{ {
char* endPtr; char* endPtr;

View File

@ -64,7 +64,7 @@ static const floatScalar floatScalarRootVSmall = ::sqrt(floatScalarVSmall);
static const floatScalar floatScalarRootGreat = ::sqrt(floatScalarGreat); static const floatScalar floatScalarRootGreat = ::sqrt(floatScalarGreat);
static const floatScalar floatScalarRootSmall = ::sqrt(floatScalarSmall); static const floatScalar floatScalarRootSmall = ::sqrt(floatScalarSmall);
//- Read whole of buf as a scalar. Return true if succesful. //- Read whole of buf as a scalar. Return true if successful.
inline bool readScalar(const char* buf, floatScalar& s) inline bool readScalar(const char* buf, floatScalar& s)
{ {
char* endPtr; char* endPtr;

View File

@ -72,7 +72,7 @@ static const longDoubleScalar longDoubleScalarRootGreat
static const longDoubleScalar longDoubleScalarRootSmall static const longDoubleScalar longDoubleScalarRootSmall
= ::sqrtl(longDoubleScalarSmall); = ::sqrtl(longDoubleScalarSmall);
//- Read whole of buf as a scalar. Return true if succesful. //- Read whole of buf as a scalar. Return true if successful.
inline bool readScalar(const char* buf, longDoubleScalar& s) inline bool readScalar(const char* buf, longDoubleScalar& s)
{ {
char* endPtr; char* endPtr;

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -31,7 +31,7 @@ Description
A centre() member function which returns the Vector for which it is called A centre() member function which returns the Vector for which it is called
is defined so that point which is a typedef to Vector\<scalar\> behaves as is defined so that point which is a typedef to Vector\<scalar\> behaves as
other shapes in the shape hierachy. other shapes in the shape hierarchy.
SourceFiles SourceFiles
VectorI.H VectorI.H

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -154,7 +154,7 @@ public:
//- Avoid masking the normal std::string replace //- Avoid masking the normal std::string replace
using std::string::replace; using std::string::replace;
//- Replace first occurence of sub-string oldStr with newStr //- Replace first occurrence of sub-string oldStr with newStr
// starting at start // starting at start
string& replace string& replace
( (
@ -163,7 +163,7 @@ public:
size_type start = 0 size_type start = 0
); );
//- Replace all occurences of sub-string oldStr with newStr //- Replace all occurrences of sub-string oldStr with newStr
// starting at start // starting at start
string& replaceAll string& replaceAll
( (
@ -172,7 +172,7 @@ public:
size_type start = 0 size_type start = 0
); );
//- Expand initial tildes and all occurences of environment variables //- Expand initial tildes and all occurrences of environment variables
// Expansion includes: // Expansion includes:
// -# environment variables // -# environment variables
// - "$VAR", "${VAR}" // - "$VAR", "${VAR}"

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -50,7 +50,7 @@ namespace Foam
namespace stringOps namespace stringOps
{ {
//- Expand occurences of variables according to the mapping //- Expand occurrences of variables according to the mapping
// Expansion includes: // Expansion includes:
// -# variables // -# variables
// - "$VAR", "${VAR}" // - "$VAR", "${VAR}"
@ -84,7 +84,7 @@ namespace stringOps
); );
//- Inplace expand occurences of variables according to the mapping //- Inplace expand occurrences of variables according to the mapping
// Expansion includes: // Expansion includes:
// -# variables // -# variables
// - "$VAR", "${VAR}" // - "$VAR", "${VAR}"
@ -117,7 +117,7 @@ namespace stringOps
const char sigil = '$' const char sigil = '$'
); );
//- Expand occurences of variables according to the dictionary //- Expand occurrences of variables according to the dictionary
// Expansion includes: // Expansion includes:
// -# variables // -# variables
// - "$VAR", "${VAR}" // - "$VAR", "${VAR}"
@ -156,7 +156,7 @@ namespace stringOps
); );
//- Inplace expand occurences of variables according to the dictionary //- Inplace expand occurrences of variables according to the dictionary
// and optionally environment variables // and optionally environment variables
// Expansion includes: // Expansion includes:
// -# variables // -# variables
@ -177,7 +177,7 @@ namespace stringOps
); );
//- Inplace expand occurences of variables according to the dictionary //- Inplace expand occurrences of variables according to the dictionary
// Expansion includes: // Expansion includes:
// -# variables // -# variables
// - "$VAR", "${VAR}" // - "$VAR", "${VAR}"
@ -194,7 +194,7 @@ namespace stringOps
); );
//- Expand initial tildes and all occurences of environment variables //- Expand initial tildes and all occurrences of environment variables
// Expansion includes: // Expansion includes:
// -# environment variables // -# environment variables
// - "$VAR", "${VAR}" // - "$VAR", "${VAR}"
@ -233,7 +233,7 @@ namespace stringOps
); );
//- Expand initial tildes and all occurences of environment variables //- Expand initial tildes and all occurrences of environment variables
// Expansion includes: // Expansion includes:
// -# environment variables // -# environment variables
// - "$VAR", "${VAR}" // - "$VAR", "${VAR}"

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -149,7 +149,7 @@ public:
//- Return the model 'active' status - default active = true //- Return the model 'active' status - default active = true
virtual bool active() const; virtual bool active() const;
//- Cache dependant sub-model fields //- Cache dependent sub-model fields
virtual void cacheFields(const bool store); virtual void cacheFields(const bool store);
//- Flag to indicate when to write a property //- Flag to indicate when to write a property

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -79,7 +79,7 @@ Foam::UIPstream::UIPstream
} }
// If the buffer size is not specified, probe the incomming message // If the buffer size is not specified, probe the incoming message
// and set it // and set it
if (!wantedSize) if (!wantedSize)
{ {
@ -180,7 +180,7 @@ Foam::UIPstream::UIPstream(const int fromProcNo, PstreamBuffers& buffers)
<< Foam::endl; << Foam::endl;
} }
// If the buffer size is not specified, probe the incomming message // If the buffer size is not specified, probe the incoming message
// and set it // and set it
if (!wantedSize) if (!wantedSize)
{ {
@ -274,7 +274,7 @@ Foam::label Foam::UIPstream::read
) )
{ {
FatalErrorInFunction FatalErrorInFunction
<< "MPI_Recv cannot receive incomming message" << "MPI_Recv cannot receive incoming message"
<< Foam::abort(FatalError); << Foam::abort(FatalError);
return 0; return 0;
@ -298,7 +298,7 @@ Foam::label Foam::UIPstream::read
{ {
FatalErrorInFunction FatalErrorInFunction
<< "buffer (" << label(bufSize) << "buffer (" << label(bufSize)
<< ") not large enough for incomming message (" << ") not large enough for incoming message ("
<< messageSize << ')' << messageSize << ')'
<< Foam::abort(FatalError); << Foam::abort(FatalError);
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -59,7 +59,7 @@ class totalFlowRateAdvectiveDiffusiveFvPatchScalarField
word phiName_; word phiName_;
//- Name of the density field used to normalise the mass flux //- Name of the density field used to normalise the mass flux
// if neccessary // if necessary
word rhoName_; word rhoName_;
//- Mass flux fraction //- Mass flux fraction

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -173,7 +173,7 @@ public:
// Member functions // Member functions
// Acces functions // Access functions
// Return z0 // Return z0
scalarField& z0() scalarField& z0()

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -171,7 +171,7 @@ public:
// Member functions // Member functions
// Acces functions // Access functions
// Return Ks // Return Ks
scalarField& Ks() scalarField& Ks()

View File

@ -1186,7 +1186,7 @@ Foam::dynamicRefineFvMesh::~dynamicRefineFvMesh()
bool Foam::dynamicRefineFvMesh::update() bool Foam::dynamicRefineFvMesh::update()
{ {
// Re-read dictionary. Choosen since usually -small so trivial amount // Re-read dictionary. Chosen since usually -small so trivial amount
// of time compared to actual refinement. Also very useful to be able // of time compared to actual refinement. Also very useful to be able
// to modify on-the-fly. // to modify on-the-fly.
dictionary refineDict dictionary refineDict
@ -1376,7 +1376,7 @@ bool Foam::dynamicRefineFvMesh::update()
if ((nRefinementIterations_ % 10) == 0) if ((nRefinementIterations_ % 10) == 0)
{ {
// Compact refinement history occassionally (how often?). // Compact refinement history occasionally (how often?).
// Unrefinement causes holes in the refinementHistory. // Unrefinement causes holes in the refinementHistory.
const_cast<refinementHistory&>(meshCutter().history()).compact(); const_cast<refinementHistory&>(meshCutter().history()).compact();
} }

View File

@ -520,7 +520,7 @@ void Foam::cellCuts::calcFaceCuts() const
// string of connected cuts; we don't want to start somewhere in the // string of connected cuts; we don't want to start somewhere in the
// middle. // middle.
// Pass1: find first point cut not preceeded by a cut. // Pass1: find first point cut not preceded by a cut.
label startFp = -1; label startFp = -1;
forAll(f, fp) forAll(f, fp)
@ -544,7 +544,7 @@ void Foam::cellCuts::calcFaceCuts() const
} }
} }
// Pass2: first edge cut not preceeded by point cut // Pass2: first edge cut not preceded by point cut
if (startFp == -1) if (startFp == -1)
{ {
forAll(f, fp) forAll(f, fp)
@ -1086,7 +1086,7 @@ bool Foam::cellCuts::walkCell
{ {
// Cut along existing edge. So is in fact on two faces. // Cut along existing edge. So is in fact on two faces.
// Get faces on both sides of the edge to make // Get faces on both sides of the edge to make
// sure we dont fold back on to those. // sure we don't fold back on to those.
label f0, f1; label f0, f1;
meshTools::getEdgeFaces(mesh(), celli, edgeI, f0, f1); meshTools::getEdgeFaces(mesh(), celli, edgeI, f0, f1);
@ -1595,7 +1595,7 @@ bool Foam::cellCuts::calcAnchors
{ {
if (hasSet1) if (hasSet1)
{ {
// Second occurence of set1. // Second occurrence of set1.
WarningInFunction WarningInFunction
<< "Invalid loop " << loop << " for cell " << celli << "Invalid loop " << loop << " for cell " << celli
<< " since face " << f << " would be split into" << " since face " << f << " would be split into"
@ -1612,7 +1612,7 @@ bool Foam::cellCuts::calcAnchors
{ {
if (hasSet2) if (hasSet2)
{ {
// Second occurence of set1. // Second occurrence of set1.
WarningInFunction WarningInFunction
<< "Invalid loop " << loop << " for cell " << celli << "Invalid loop " << loop << " for cell " << celli
<< " since face " << f << " would be split into" << " since face " << f << " would be split into"
@ -1650,7 +1650,7 @@ bool Foam::cellCuts::calcAnchors
{ {
if (hasSet1) if (hasSet1)
{ {
// Second occurence of set1. // Second occurrence of set1.
WarningInFunction WarningInFunction
<< "Invalid loop " << loop << " for cell " << celli << "Invalid loop " << loop << " for cell " << celli
<< " since face " << f << " would be split into" << " since face " << f << " would be split into"
@ -1667,7 +1667,7 @@ bool Foam::cellCuts::calcAnchors
{ {
if (hasSet2) if (hasSet2)
{ {
// Second occurence of set1. // Second occurrence of set1.
WarningInFunction WarningInFunction
<< "Invalid loop " << loop << " for cell " << celli << "Invalid loop " << loop << " for cell " << celli
<< " since face " << f << " would be split into" << " since face " << f << " would be split into"

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -442,7 +442,7 @@ class cellCuts
//- Set orientation of loops //- Set orientation of loops
void orientPlanesAndLoops(); void orientPlanesAndLoops();
//- Top level driver: adressing calculation and loop detection //- Top level driver: addressing calculation and loop detection
// (loops splitting cells). // (loops splitting cells).
void calcLoopsAndAddressing(const labelList& cutCells); void calcLoopsAndAddressing(const labelList& cutCells);

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -257,7 +257,7 @@ bool Foam::boundaryCutter::splitFace
else if (nSplitEdges + nModPoints == 1) else if (nSplitEdges + nModPoints == 1)
{ {
// single or multiple cuts on a single edge or single modified point // single or multiple cuts on a single edge or single modified point
// Dont cut and let caller handle this. // Don't cut and let caller handle this.
Warning << "Face " << facei << " has only one edge cut " << endl; Warning << "Face " << facei << " has only one edge cut " << endl;
return false; return false;
} }
@ -759,7 +759,7 @@ void Foam::boundaryCutter::setRefinement
// Is external face so split // Is external face so split
if (splitFace(facei, pointToPos, edgeToAddedPoints, meshMod)) if (splitFace(facei, pointToPos, edgeToAddedPoints, meshMod))
{ {
// Successfull split // Successful split
faceUptodate[facei] = true; faceUptodate[facei] = true;
} }
} }

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -177,7 +177,7 @@ class motionSmootherAlgo
const scalarField& edgeWeight const scalarField& edgeWeight
) const; ) const;
//- Average postion of connected points. //- Average position of connected points.
template<class Type> template<class Type>
tmp<GeometricField<Type, pointPatchField, pointMesh>> avgPositions tmp<GeometricField<Type, pointPatchField, pointMesh>> avgPositions
( (

View File

@ -891,7 +891,7 @@ void Foam::polyMeshAdder::mergePointZones
// Zone(s) per point. Two levels: if only one zone // Zone(s) per point. Two levels: if only one zone
// stored in pointToZone. Any extra stored in additionalPointToZones. // stored in pointToZone. Any extra stored in additionalPointToZones.
// This is so we only allocate labelLists per point if absolutely // This is so we only allocate labelLists per point if absolutely
// necesary. // necessary.
labelList pointToZone(nAllPoints, -1); labelList pointToZone(nAllPoints, -1);
labelListList addPointToZones(nAllPoints); labelListList addPointToZones(nAllPoints);
@ -1216,7 +1216,7 @@ void Foam::polyMeshAdder::mergeCellZones
// Zone(s) per cell. Two levels: if only one zone // Zone(s) per cell. Two levels: if only one zone
// stored in cellToZone. Any extra stored in additionalCellToZones. // stored in cellToZone. Any extra stored in additionalCellToZones.
// This is so we only allocate labelLists per cell if absolutely // This is so we only allocate labelLists per cell if absolutely
// necesary. // necessary.
labelList cellToZone(nAllCells, -1); labelList cellToZone(nAllCells, -1);
labelListList addCellToZones(nAllCells); labelListList addCellToZones(nAllCells);

View File

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2018 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -291,7 +291,7 @@ void Foam::faceCollapser::setRefinement
near.setPoint(newPoint); near.setPoint(newPoint);
} }
// Responsability of caller to make sure polyModifyPoint is only // Responsibility of caller to make sure polyModifyPoint is only
// called once per point. (so max only one collapse face per // called once per point. (so max only one collapse face per
// edge) // edge)
meshMod.setAction meshMod.setAction
@ -344,7 +344,7 @@ void Foam::faceCollapser::setRefinement
near.setPoint(newPoint); near.setPoint(newPoint);
} }
// Responsability of caller to make sure polyModifyPoint is only // Responsibility of caller to make sure polyModifyPoint is only
// called once per point. (so max only one collapse face per // called once per point. (so max only one collapse face per
// edge) // edge)
meshMod.setAction meshMod.setAction

View File

@ -274,7 +274,7 @@ class hexRef8
polyTopoChange& meshMod polyTopoChange& meshMod
) const; ) const;
//- Store vertices from startFp upto face split point. //- Store vertices from startFp up to face split point.
// Used when splitting face into 4. // Used when splitting face into 4.
void walkFaceToMid void walkFaceToMid
( (

Some files were not shown because too many files have changed in this diff Show More