nastranWriter Class Reference

Write coordSet(s) as Nastran plot lines. Does not do field data. More...

Inheritance diagram for nastranWriter:
[legend]
Collaboration diagram for nastranWriter:
[legend]

Public Types

using fieldFormat = Foam::fileFormats::NASCore::fieldFormat
 File field formats. More...
 
using loadFormat = Foam::fileFormats::NASCore::loadFormat
 Output load format. More...
 

Public Member Functions

 TypeNameNoDebug ("nastran")
 Runtime type information (no debug) More...
 
 nastranWriter ()
 Default construct. More...
 
 nastranWriter (const dictionary &options)
 Default construct with specified options. More...
 
 nastranWriter (const coordSet &coords, const fileName &outputPath, const dictionary &options=dictionary())
 Construct from components. More...
 
 nastranWriter (const UPtrList< coordSet > &tracks, const fileName &outputPath, const dictionary &options=dictionary())
 Construct from components. More...
 
virtual ~nastranWriter ()
 Destructor. Calls close() More...
 
virtual fileName path () const
 Characteristic output file name - information only. More...
 
 declareCoordSetWriterWriteMethod (label)
 
 declareCoordSetWriterWriteMethod (scalar)
 
 declareCoordSetWriterWriteMethod (vector)
 
 declareCoordSetWriterWriteMethod (sphericalTensor)
 
 declareCoordSetWriterWriteMethod (symmTensor)
 
 declareCoordSetWriterWriteMethod (tensor)
 
template<class Type >
Foam::fileName writeTemplate (const word &fieldName, const Field< Type > &values)
 
template<class Type >
Foam::fileName writeTemplate (const word &fieldName, const List< Field< Type > > &fieldValues)
 
template<class Type >
Foam::fileName writeTemplate (const word &fieldName, const Field< Type > &localValues)
 
- Public Member Functions inherited from coordSetWriter
 TypeName ("coordSetWriter")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, coordSetWriter, word,(),())
 
 declareRunTimeSelectionTable (autoPtr, coordSetWriter, wordDict,(const dictionary &writeOptions),(writeOptions))
 
 coordSetWriter ()
 Default construct. More...
 
 coordSetWriter (const dictionary &options)
 Default construct with specified options. More...
 
virtual ~coordSetWriter ()
 Destructor. Calls close() More...
 
virtual bool buffering () const
 True if the format uses internal buffering (eg, column output) More...
 
virtual bool buffering (const bool on)
 Turn internal buffering on/off (only if supported by the writer) More...
 
virtual bool enabled () const
 
virtual bool needsUpdate () const
 Does the writer need an update (eg, lagging behind other changes) More...
 
virtual bool wroteData () const
 Geometry or fields written since the last open? More...
 
virtual bool expire ()
 
virtual void clear ()
 
virtual void setCoordinates (const coordSet *coords)
 Set coordinates, can also be nullptr. More...
 
virtual void setCoordinates (const coordSet &coords)
 Set coordinates. More...
 
virtual void setTracks (const UPtrList< coordSet > &tracks)
 Set track coordinates. More...
 
virtual void setTrackTimes (const UList< scalarField > &times)
 Set track times. More...
 
label numPoints () const
 The number of associated points (local processor) More...
 
label numTracks () const
 The number of coordinate tracks. More...
 
bool hasCoords () const
 Writer is associated with content. More...
 
bool empty () const
 Writer is not associated with content. More...
 
bool is_open () const noexcept
 Test if outputPath has been set. More...
 
label nFields () const noexcept
 The number of expected output fields. More...
 
label nFields (const label n) noexcept
 Set the number of expected output fields. More...
 
bool useTracks () const noexcept
 Prefer tracks to points during single set writing. More...
 
bool useTracks (const bool on) noexcept
 Enable/disable tracks preference. More...
 
bool useTimeDir () const noexcept
 Should a time directory be spliced into the output path? More...
 
bool useTimeDir (const bool on) noexcept
 Enable/disable use of spliced output path. More...
 
bool verbose () const noexcept
 Get output verbosity. More...
 
bool verbose (bool on) noexcept
 Enable/disable verbose output. More...
 
bool hasTime () const
 True if there is a known time. More...
 
const wordtimeName () const
 The current time value/name. More...
 
scalar timeValue () const
 The current time value/name. More...
 
void setTime (const instant &inst)
 Set the current time. More...
 
void setTime (scalar timeValue)
 Set current time from timeValue, auto generating the name. More...
 
void setTime (scalar timeValue, const word &timeName)
 Set current time from timeValue and timeName. More...
 
void unsetTime ()
 Clear the current time. More...
 
virtual void beginTime (const Time &t)
 Begin a time-step. More...
 
virtual void beginTime (const instant &inst)
 Begin a time-step. More...
 
virtual void endTime ()
 End a time-step. More...
 
virtual fileName path () const =0
 
virtual void open (const fileName &outputPath)
 Write separate geometry to file. More...
 
virtual void open (const coordSet &coords, const fileName &outputPath)
 Open from components. More...
 
virtual void open (const UPtrList< coordSet > &tracks, const fileName &outputPath)
 Open from components. More...
 
virtual void close (bool force=false)
 Finish output, performing any necessary cleanup. More...
 
virtual InfoProxy< coordSetWriterinfo () const
 Return info proxy. More...
 
virtual fileName write (const word &fieldName, const Field< label > &field)=0
 Write field of label (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< label > > &fieldValues)=0
 Write track fields of label (point data) More...
 
virtual fileName write (const word &fieldName, const Field< scalar > &field)=0
 Write field of scalar (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< scalar > > &fieldValues)=0
 Write track fields of scalar (point data) More...
 
virtual fileName write (const word &fieldName, const Field< vector > &field)=0
 Write field of vector (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< vector > > &fieldValues)=0
 Write track fields of vector (point data) More...
 
virtual fileName write (const word &fieldName, const Field< sphericalTensor > &field)=0
 Write field of sphericalTensor (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< sphericalTensor > > &fieldValues)=0
 Write track fields of sphericalTensor (point data) More...
 
virtual fileName write (const word &fieldName, const Field< symmTensor > &field)=0
 Write field of symmTensor (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< symmTensor > > &fieldValues)=0
 Write track fields of symmTensor (point data) More...
 
virtual fileName write (const word &fieldName, const Field< tensor > &field)=0
 Write field of tensor (point data) More...
 
virtual fileName write (const word &fieldName, const List< Field< tensor > > &fieldValues)=0
 Write track fields of tensor (point data) More...
 
template<class Type >
Foam::UPtrList< const Foam::Field< Type > > repackageFields (const Field< Type > &field)
 
template<class Type >
Foam::UPtrList< const Foam::Field< Type > > repackageFields (const UList< Field< Type > > &fieldValues)
 

Additional Inherited Members

- Static Public Member Functions inherited from coordSetWriter
static bool supportedType (const word &writeType)
 True if New is likely to succeed for this writeType. More...
 
static autoPtr< coordSetWriterNew (const word &writeFormat)
 Return a reference to the selected writer. More...
 
static autoPtr< coordSetWriterNew (const word &writeFormat, const dictionary &writeOptions)
 Return a reference to the selected writer. More...
 
static word suffix (const word &fldName, const word &fileExt=word::null)
 Name suffix based on fieldName (underscore separator) More...
 
static word suffix (const wordList &fieldNames, const word &fileExt=word::null)
 Name suffix based on fieldNames (underscore separator) More...
 
- Protected Member Functions inherited from coordSetWriter
void appendField (const word &fieldName, const Field< label > &vals)
 
void appendField (const word &fieldName, const Field< scalar > &vals)
 
void appendField (const word &fieldName, const Field< vector > &vals)
 
void appendField (const word &fieldName, const Field< sphericalTensor > &vals)
 
void appendField (const word &fieldName, const Field< symmTensor > &vals)
 
void appendField (const word &fieldName, const Field< tensor > &vals)
 
void clearBuffers ()
 Clear out buffering. More...
 
label nDataColumns () const
 The number of buffer data columns, after splitting into components. More...
 
virtual bool writeBuffered ()
 Write buffered data. More...
 
void writeBufferContents (Ostream &os, const coordSet &coords, const char *sep) const
 Write buffered data. More...
 
void getBufferLine (DynamicList< scalar > &buf, const coordSet &coords, const label pointi) const
 Get buffered data line (components) More...
 
fileName getExpectedPath (const word &fileExt=word::null) const
 Get expected (characteristic) output file name - information only. More...
 
fileName getFieldPrefixedPath (const word &fieldName, const word &fileExt=word::null) const
 Get field-prefixed output file name. More...
 
void checkOpen () const
 Verify that the outputPath_ has been set or FatalError. More...
 
virtual bool merge () const
 
template<class Type >
fileName writeTemplate (const word &fieldName, const Field< Type > &values)
 Dummy templated write operation. More...
 
template<class Type >
fileName writeTemplate (const word &fieldName, const List< Field< Type > > &fieldValues)
 Dummy templated write operation. Multiple tracks. More...
 
 coordSetWriter (const coordSetWriter &)=delete
 No copy construct. More...
 
void operator= (const coordSetWriter &)=delete
 No copy assignment. More...
 
- Static Protected Member Functions inherited from coordSetWriter
static void writeLine (Ostream &, const UList< word > &, const char *sep)
 Write line contents (eg, buffered) More...
 
static void writeLine (Ostream &, const UList< scalar > &, const char *sep)
 Write line contents (eg, buffered) More...
 
template<class Type >
static UPtrList< const Field< Type > > repackageFields (const Field< Type > &field)
 Repackage field into a UPtrList. More...
 
template<class Type >
static UPtrList< const Field< Type > > repackageFields (const UList< Field< Type > > &fieldValues)
 Repackage multiple fields into a UPtrList. More...
 
template<class Type >
static void writeTable (Ostream &os, const coordSet &coords, const UList< Type > &values, const char *sep)
 Write coordinates and values. More...
 
- Protected Attributes inherited from coordSetWriter
UPtrList< const coordSetcoords_
 Reference to coordinate set(s) More...
 
List< scalarFieldtrackTimes_
 Track times (eg, streamlines), one per coords_ entry. More...
 
bool upToDate_
 The content is up-to-date? More...
 
bool wroteGeom_
 Track if geometry has been written since the last open. More...
 
bool buffering_
 Writer with buffering output. More...
 
bool useTracks_
 Prefer tracks to points during single set writing. More...
 
bool useTimeDir_
 Insert additional time sub-directory in the output path. More...
 
bool verbose_
 Additional output verbosity. More...
 
label nFields_
 The number of fields. More...
 
instant currTime_
 The current time value/name. More...
 
fileName outputPath_
 The full output directory and file (coords) name. More...
 
DynamicList< wordlabelNames_
 
PtrDynList< Field< label > > labelFields_
 
DynamicList< wordscalarNames_
 
PtrDynList< Field< scalar > > scalarFields_
 
DynamicList< wordvectorNames_
 
PtrDynList< Field< vector > > vectorFields_
 
DynamicList< wordsphericalTensorNames_
 
PtrDynList< Field< sphericalTensor > > sphericalTensorFields_
 
DynamicList< wordsymmTensorNames_
 
PtrDynList< Field< symmTensor > > symmTensorFields_
 
DynamicList< wordtensorNames_
 
PtrDynList< Field< tensor > > tensorFields_
 

Detailed Description

Write coordSet(s) as Nastran plot lines. Does not do field data.

The formatOptions for nastran:

Property Description Required Default
format short / long / free no free

file locations

The rootdir normally corresponds to something like postProcessing/<name>

Geometry

    rootdir
    `-- <time>
        |-- setName0.{nas}
        `-- setName1.{nas}
Source files

Definition at line 82 of file nastranCoordSetWriter.H.

Member Typedef Documentation

◆ fieldFormat

File field formats.

Definition at line 89 of file nastranCoordSetWriter.H.

◆ loadFormat

Output load format.

Definition at line 92 of file nastranCoordSetWriter.H.

Constructor & Destructor Documentation

◆ nastranWriter() [1/4]

Default construct.

Definition at line 78 of file nastranCoordSetWriter.C.

◆ nastranWriter() [2/4]

nastranWriter ( const dictionary options)
explicit

Default construct with specified options.

Definition at line 91 of file nastranCoordSetWriter.C.

◆ nastranWriter() [3/4]

nastranWriter ( const coordSet coords,
const fileName outputPath,
const dictionary options = dictionary() 
)

Construct from components.

Definition at line 112 of file nastranCoordSetWriter.C.

References coordSetWriter::open().

Here is the call graph for this function:

◆ nastranWriter() [4/4]

nastranWriter ( const UPtrList< coordSet > &  tracks,
const fileName outputPath,
const dictionary options = dictionary() 
)

Construct from components.

Definition at line 125 of file nastranCoordSetWriter.C.

References coordSetWriter::open().

Here is the call graph for this function:

◆ ~nastranWriter()

~nastranWriter ( )
virtual

Destructor. Calls close()

Definition at line 140 of file nastranCoordSetWriter.C.

Member Function Documentation

◆ TypeNameNoDebug()

TypeNameNoDebug ( "nastran"  )

Runtime type information (no debug)

◆ path()

Foam::fileName path ( ) const
virtual

Characteristic output file name - information only.

Implements coordSetWriter.

Definition at line 148 of file nastranCoordSetWriter.C.

◆ declareCoordSetWriterWriteMethod() [1/6]

declareCoordSetWriterWriteMethod ( label  )

◆ declareCoordSetWriterWriteMethod() [2/6]

declareCoordSetWriterWriteMethod ( scalar  )

◆ declareCoordSetWriterWriteMethod() [3/6]

declareCoordSetWriterWriteMethod ( vector  )

◆ declareCoordSetWriterWriteMethod() [4/6]

declareCoordSetWriterWriteMethod ( sphericalTensor  )

◆ declareCoordSetWriterWriteMethod() [5/6]

declareCoordSetWriterWriteMethod ( symmTensor  )

◆ declareCoordSetWriterWriteMethod() [6/6]

declareCoordSetWriterWriteMethod ( tensor  )

◆ writeTemplate() [1/3]

Foam::fileName writeTemplate ( const word fieldName,
const Field< Type > &  values 
)

Definition at line 232 of file nastranCoordSetWriter.C.

References Foam::endl(), Foam::Info, Foam::isDir(), Foam::mkDir(), fileName::nameLessExt(), Foam::nl, fileName::null, os(), fileName::path(), path(), NASCore::setPrecision(), and writeGeometry().

Here is the call graph for this function:

◆ writeTemplate() [2/3]

Foam::fileName writeTemplate ( const word fieldName,
const List< Field< Type > > &  fieldValues 
)

Definition at line 275 of file nastranCoordSetWriter.C.

References Foam::endl(), Foam::Info, Foam::isDir(), Foam::mkDir(), fileName::nameLessExt(), Foam::nl, fileName::null, os(), fileName::path(), path(), NASCore::setPrecision(), and writeGeometry().

Here is the call graph for this function:

◆ writeTemplate() [3/3]

Foam::fileName writeTemplate ( const word fieldName,
const Field< Type > &  localValues 
)

The documentation for this class was generated from the following files: