ENH: sampledSetWriters - updated writing of particle tracks

This commit is contained in:
Andrew Heather
2021-11-11 12:30:50 +00:00
committed by Mark Olesen
parent 79fafda22c
commit e5267bf81d
19 changed files with 66 additions and 99 deletions

View File

@ -39,13 +39,6 @@ Foam::csvSetWriter<Type>::csvSetWriter()
{} {}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
template<class Type>
Foam::csvSetWriter<Type>::~csvSetWriter()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class Type> template<class Type>
@ -86,13 +79,14 @@ template<class Type>
void Foam::csvSetWriter<Type>::write void Foam::csvSetWriter<Type>::write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>& points, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>& valueSets, const List<List<Field<Type>>>& valueSets,
Ostream& os Ostream& os
) const ) const
{ {
writeHeader(points[0],valueSetNames,os); writeHeader(tracks[0],valueSetNames,os);
if (valueSets.size() != valueSetNames.size()) if (valueSets.size() != valueSetNames.size())
{ {
@ -104,7 +98,7 @@ void Foam::csvSetWriter<Type>::write
List<const List<Type>*> columns(valueSets.size()); List<const List<Type>*> columns(valueSets.size());
forAll(points, trackI) forAll(tracks, trackI)
{ {
// Collect sets into columns // Collect sets into columns
forAll(valueSets, i) forAll(valueSets, i)
@ -112,7 +106,7 @@ void Foam::csvSetWriter<Type>::write
columns[i] = &valueSets[i][trackI]; columns[i] = &valueSets[i][trackI];
} }
this->writeTable(points[trackI], columns, os); this->writeTable(tracks[trackI], columns, os);
os << nl << nl; os << nl << nl;
} }
} }

View File

@ -79,7 +79,7 @@ public:
//- Destructor //- Destructor
virtual ~csvSetWriter(); virtual ~csvSetWriter() = default;
// Member Functions // Member Functions
@ -101,9 +101,10 @@ public:
virtual void write virtual void write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>&, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>&, const List<List<Field<Type>>>& valueSets,
Ostream& Ostream&
) const; ) const;
}; };

View File

@ -41,12 +41,6 @@ Foam::ensightSetWriter<Type>::ensightSetWriter()
writer<Type>() writer<Type>()
{} {}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
template<class Type>
Foam::ensightSetWriter<Type>::~ensightSetWriter()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
@ -174,6 +168,7 @@ template<class Type>
void Foam::ensightSetWriter<Type>::write void Foam::ensightSetWriter<Type>::write
( (
const bool writeTracks, const bool writeTracks,
const List<scalarField>& times,
const PtrList<coordSet>& tracks, const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>& valueSets, const List<List<Field<Type>>>& valueSets,

View File

@ -66,7 +66,7 @@ public:
//- Destructor //- Destructor
virtual ~ensightSetWriter(); virtual ~ensightSetWriter() = default;
// Member Functions // Member Functions
@ -88,9 +88,10 @@ public:
virtual void write virtual void write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>&, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>&, const List<List<Field<Type>>>& valueSets,
Ostream& Ostream&
) const; ) const;
}; };

View File

@ -41,12 +41,6 @@ Foam::gnuplotSetWriter<Type>::gnuplotSetWriter()
writer<Type>() writer<Type>()
{} {}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
template<class Type>
Foam::gnuplotSetWriter<Type>::~gnuplotSetWriter()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
@ -112,7 +106,8 @@ template<class Type>
void Foam::gnuplotSetWriter<Type>::write void Foam::gnuplotSetWriter<Type>::write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>& trackPoints, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>& valueSets, const List<List<Field<Type>>>& valueSets,
Ostream& os Ostream& os
@ -125,12 +120,12 @@ void Foam::gnuplotSetWriter<Type>::write
<< "Number of valueSets:" << valueSets.size() << "Number of valueSets:" << valueSets.size()
<< exit(FatalError); << exit(FatalError);
} }
if (trackPoints.size() > 0) if (tracks.size() > 0)
{ {
os << "set term postscript color" << nl os << "set term postscript color" << nl
<< "set output \"" << trackPoints[0].name() << ".ps\"" << nl; << "set output \"" << tracks[0].name() << ".ps\"" << nl;
forAll(trackPoints, trackI) forAll(tracks, trackI)
{ {
os << "plot"; os << "plot";
@ -147,7 +142,7 @@ void Foam::gnuplotSetWriter<Type>::write
forAll(valueSets, i) forAll(valueSets, i)
{ {
this->writeTable(trackPoints[trackI], valueSets[i][trackI], os); this->writeTable(tracks[trackI], valueSets[i][trackI], os);
os << "e" << nl; os << "e" << nl;
} }
} }

View File

@ -66,7 +66,7 @@ public:
//- Destructor //- Destructor
virtual ~gnuplotSetWriter(); virtual ~gnuplotSetWriter() = default;
// Member Functions // Member Functions
@ -88,9 +88,10 @@ public:
virtual void write virtual void write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>&, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>&, const List<List<Field<Type>>>& valueSets,
Ostream& Ostream&
) const; ) const;
}; };

View File

@ -53,13 +53,6 @@ Foam::jplotSetWriter<Type>::jplotSetWriter()
{} {}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
template<class Type>
Foam::jplotSetWriter<Type>::~jplotSetWriter()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class Type> template<class Type>

View File

@ -70,7 +70,7 @@ public:
//- Destructor //- Destructor
virtual ~jplotSetWriter(); virtual ~jplotSetWriter() = default;
// Member Functions // Member Functions
@ -92,9 +92,10 @@ public:
virtual void write virtual void write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>&, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>&, const List<List<Field<Type>>>& valueSets,
Ostream& Ostream&
) const ) const
{ {

View File

@ -38,12 +38,6 @@ Foam::nastranSetWriter<Type>::nastranSetWriter()
writer<Type>() writer<Type>()
{} {}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
template<class Type>
Foam::nastranSetWriter<Type>::~nastranSetWriter()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
@ -129,6 +123,7 @@ template<class Type>
void Foam::nastranSetWriter<Type>::write void Foam::nastranSetWriter<Type>::write
( (
const bool writeTracks, const bool writeTracks,
const List<scalarField>& times,
const PtrList<coordSet>& tracks, const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>& valueSets, const List<List<Field<Type>>>& valueSets,

View File

@ -86,7 +86,7 @@ public:
//- Destructor //- Destructor
virtual ~nastranSetWriter(); virtual ~nastranSetWriter() = default;
// Member Functions // Member Functions
@ -108,9 +108,10 @@ public:
virtual void write virtual void write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>&, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>&, const List<List<Field<Type>>>& valueSets,
Ostream& Ostream&
) const; ) const;
}; };

View File

@ -39,13 +39,6 @@ Foam::rawSetWriter<Type>::rawSetWriter()
{} {}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
template<class Type>
Foam::rawSetWriter<Type>::~rawSetWriter()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class Type> template<class Type>
@ -84,7 +77,8 @@ template<class Type>
void Foam::rawSetWriter<Type>::write void Foam::rawSetWriter<Type>::write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>& points, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>& valueSets, const List<List<Field<Type>>>& valueSets,
Ostream& os Ostream& os
@ -100,7 +94,7 @@ void Foam::rawSetWriter<Type>::write
List<const List<Type>*> columns(valueSets.size()); List<const List<Type>*> columns(valueSets.size());
forAll(points, trackI) forAll(tracks, trackI)
{ {
// Collect sets into columns // Collect sets into columns
forAll(valueSets, i) forAll(valueSets, i)
@ -108,7 +102,7 @@ void Foam::rawSetWriter<Type>::write
columns[i] = &valueSets[i][trackI]; columns[i] = &valueSets[i][trackI];
} }
this->writeTable(points[trackI], columns, os); this->writeTable(tracks[trackI], columns, os);
os << nl << nl; os << nl << nl;
} }
} }

View File

@ -66,7 +66,7 @@ public:
//- Destructor //- Destructor
virtual ~rawSetWriter(); virtual ~rawSetWriter() = default;
// Member Functions // Member Functions
@ -88,9 +88,10 @@ public:
virtual void write virtual void write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>&, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>&, const List<List<Field<Type>>>& valueSets,
Ostream& Ostream&
) const; ) const;
}; };

View File

@ -41,12 +41,6 @@ Foam::vtkSetWriter<Type>::vtkSetWriter()
writer<Type>() writer<Type>()
{} {}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
template<class Type>
Foam::vtkSetWriter<Type>::~vtkSetWriter()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
@ -111,6 +105,7 @@ template<class Type>
void Foam::vtkSetWriter<Type>::write void Foam::vtkSetWriter<Type>::write
( (
const bool writeTracks, const bool writeTracks,
const List<scalarField>& times,
const PtrList<coordSet>& tracks, const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>& valueSets, const List<List<Field<Type>>>& valueSets,

View File

@ -69,7 +69,7 @@ public:
//- Destructor //- Destructor
virtual ~vtkSetWriter(); virtual ~vtkSetWriter() = default;
// Member Functions // Member Functions
@ -91,9 +91,10 @@ public:
virtual void write virtual void write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>&, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>&, const List<List<Field<Type>>>& valueSets,
Ostream& Ostream&
) const; ) const;
}; };

View File

@ -178,9 +178,10 @@ public:
virtual void write virtual void write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>&, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>&, const List<List<Field<Type>>>& valueSets,
Ostream& Ostream&
) const = 0; ) const = 0;

View File

@ -40,13 +40,6 @@ Foam::xmgraceSetWriter<Type>::xmgraceSetWriter()
{} {}
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
template<class Type>
Foam::xmgraceSetWriter<Type>::~xmgraceSetWriter()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class Type> template<class Type>
@ -91,7 +84,8 @@ template<class Type>
void Foam::xmgraceSetWriter<Type>::write void Foam::xmgraceSetWriter<Type>::write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>& trackPoints, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>& valueSets, const List<List<Field<Type>>>& valueSets,
Ostream& os Ostream& os
@ -104,24 +98,24 @@ void Foam::xmgraceSetWriter<Type>::write
<< "Number of valueSets:" << valueSets.size() << "Number of valueSets:" << valueSets.size()
<< exit(FatalError); << exit(FatalError);
} }
if (trackPoints.size() > 0) if (tracks.size() > 0)
{ {
os << "@g0 on" << nl os << "@g0 on" << nl
<< "@with g0" << nl << "@with g0" << nl
<< "@ title \"" << trackPoints[0].name() << '"' << nl << "@ title \"" << tracks[0].name() << '"' << nl
<< "@ xaxis label " << '"' << trackPoints[0].axis() << '"' << nl; << "@ xaxis label " << '"' << tracks[0].axis() << '"' << nl;
// Data index. // Data index.
label sI = 0; label sI = 0;
forAll(trackPoints, trackI) forAll(tracks, trackI)
{ {
forAll(valueSets, i) forAll(valueSets, i)
{ {
os << "@ s" << sI << " legend " << '"' os << "@ s" << sI << " legend " << '"'
<< valueSetNames[i] << "_track" << i << '"' << nl << valueSetNames[i] << "_track" << i << '"' << nl
<< "@target G0.S" << sI << nl; << "@target G0.S" << sI << nl;
this->writeTable(trackPoints[trackI], valueSets[i][trackI], os); this->writeTable(tracks[trackI], valueSets[i][trackI], os);
os << '&' << nl; os << '&' << nl;
sI++; sI++;

View File

@ -66,7 +66,7 @@ public:
//- Destructor //- Destructor
virtual ~xmgraceSetWriter(); virtual ~xmgraceSetWriter() = default;
// Member Functions // Member Functions
@ -88,9 +88,10 @@ public:
virtual void write virtual void write
( (
const bool writeTracks, const bool writeTracks,
const PtrList<coordSet>&, const List<scalarField>& times,
const PtrList<coordSet>& tracks,
const wordList& valueSetNames, const wordList& valueSetNames,
const List<List<Field<Type>>>&, const List<List<Field<Type>>>& valueSets,
Ostream& Ostream&
) const; ) const;
}; };

View File

@ -743,6 +743,7 @@ bool Foam::functionObjects::streamLineBase::writeToFile()
scalarFormatterPtr_().write scalarFormatterPtr_().write
( (
true, // writeTracks true, // writeTracks
List<scalarField>(), // times
tracks, tracks,
scalarNames_, scalarNames_,
scalarValues, scalarValues,
@ -783,6 +784,7 @@ bool Foam::functionObjects::streamLineBase::writeToFile()
vectorFormatterPtr_().write vectorFormatterPtr_().write
( (
true, // writeTracks true, // writeTracks
List<scalarField>(), // times
tracks, tracks,
vectorNames_, vectorNames_,
vectorValues, vectorValues,

View File

@ -2701,6 +2701,7 @@ Foam::label Foam::meshRefinement::findRegions
leakPathFormatter.write leakPathFormatter.write
( (
true, // write tracks true, // write tracks
List<scalarField>(), // times
allLeakPaths, allLeakPaths,
valueSetNames, valueSetNames,
allLeakData, allLeakData,