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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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