- Feb 20, 2023
-
-
Sergey Lesnik authored
- Accumulate field data in a dictionary - ASCII data - with keywords are stored in primitiveEntry objects - without keywords are stored in formattingEntry objects - Binary data are stored in fieldDataEntry objects - The IDs in the data.bp are names of the entries - New feature: global uniform. Determine whether each field is uniform on all the ranks. Do it using a single reduce per GeometricField. - For volFields the procPatch fields are removed from the IO - For surfaceFields the procPatch fields are mapped into the global internal surfaceField and then removed
-
- Dec 22, 2022
-
-
Sergey Lesnik authored
-
Gregor Weiss authored
- STYLE: added comments and separation of concerns in sliceProcPatch - ENH: separation of concerns in slicePermutation for reusibility of sorting permutations
-
- Dec 21, 2022
-
-
Gregor Weiss authored
-
Gregor Weiss authored
-
Gregor Weiss authored
-
- Dec 16, 2022
-
-
Sergey Lesnik authored
-
- Dec 15, 2022
-
-
Sergey Lesnik authored
-
Sergey Lesnik authored
- Provide correct field id (no processor in the name if needed) - Introduce a check to identify globally uniform fields
-
- Dec 12, 2022
-
-
Gregor Weiss authored
-
Gregor Weiss authored
-
- Nov 30, 2022
-
-
Sergey Lesnik authored
- Introduce OFCstream derived from OFstream - OFCstream is created in GeometricField and enables tracking which List will be written next - Back-up for currently not supported Lists: write with full id containing processor directory name - Derive sliceMesh from MeshObject in order to put the former into the objectRegistry, thus, keeping it at run and enabling access via the registry
-
- Nov 29, 2022
-
-
Gregor Weiss authored
-
- Nov 17, 2022
-
-
Sergey Lesnik authored
- Reason: the former depends on the latter
-
- Oct 11, 2022
-
-
Gregor Weiss authored
-
Gregor Weiss authored
-
- Oct 10, 2022
-
-
Sergey Lesnik authored
-
- Oct 07, 2022
-
-
Sergey Lesnik authored
-
Gregor Weiss authored
-
- Oct 04, 2022
-
-
Sergey Lesnik authored
- Lists for linear and tree communications were allocated at start-up, each of those is n^2 large where n is number of MPI ranks. This behavior leeded to job failure due to insufficient memory for large jobs. - Only size the lists to n at the start-up. Do not allocate the memory for the list entries. Evaluate a communication list entry of type commsStruct on the fly when accessed via operator[] of the UList.
-
- Aug 09, 2022
-
-
Gregor Weiss authored
-
- Jul 12, 2022
-
-
Gregor Weiss authored
-
- Jul 11, 2022
-
-
Gregor Weiss authored
Writing parallel mesh (via renumbering the mesh by new cell numbering, using sliceMesh and writing paritionStarts) from decomposePar. (Use with flag -mesh)
-
- Jul 07, 2022
-
-
Gregor Weiss authored
(BROKEN PARALLEL IO AND RESTARTS) Writing points in vector format and removing redundant move semantics.
-
Gregor Weiss authored
(BROKEN PARALLEL IO AND RESTARTS) Starting new format (TODO siceable fields) and refactoring of adios instantiation through abstract factory.
-
- May 19, 2022
-
-
Gregor Weiss authored
First implementation of sliceMesh conversion and initial encapsulation of ADIOS2 dependencies for writing.
-
- Mar 15, 2022
-
-
Gregor Weiss authored
-
- Feb 01, 2022
-
-
Gregor Weiss authored
- adds icoFoamTar - installation of tar modules requires local manual third party installation (see applications/tarmodules/startTarCase/thirdParty/myreadme) - usage of tar modules is described in applications/tarmodules/README - example controlDict for tar modules in applications/tarmodules/tarSystemCall/controlDict - to use ADIOS2 IO in decomposePar it has to be performed twice 1) decomposePar -mesh 2) decomposePar -fields - uncollated ascii, binary, and parallel IO mode can all be started from polyMesh.bp and data.bp (Processor folders are still created during decomposition to enable uncollated IO modes.)
-
- Jan 28, 2022
-
-
Sergey Lesnik authored
- ADIOS restricts the string size (64kB?) and thus e.g. faces could not be written - Switch from std::string to char arrays - Reading with bpls is still possible with -S flag, e.g.: bpls -Sd constant/polyMesh.bp constant/polyMesh/faces
-
- Jan 24, 2022
-
-
Sergey Lesnik authored
- ADIOS Mesh data is written and read to/from "constant/polyMesh.bp" - When reading such functions such headerOkPar, findInstance or parStreamPar check first whether data.bp or polyMesh.bp are present
-
- Jan 19, 2022
-
-
Sergey Lesnik authored
- Exclude some solvers and schemes not needed for basic runs
-
- Jan 18, 2022
-
-
Sergey Lesnik authored
- Add a functionality to UListIO for writing non-contiguous data in order to handle faces (list of lists) - UListIO uses a OStringStream to buffer list of lists and OFStream puts it as a string into the .bp file at destruction - Make a typedef parIOType for the ADIOS data type which are not strings. Now it can be changed (e.g. from char to double) at one place in IOStream.H
-
- Jan 14, 2022
-
-
Sergey Lesnik authored
- added libraries blockMesh relies on: - src/ODE excluding sixDOF - src/dynamicMesh/dynamicMesh - src/mesh/blockMesh
-
- Jan 07, 2022
-
-
Sergey Lesnik authored
- Hack BeginStep/EndStep into regIOobject using static member functions. Allows to Put variables in Deffered Mode. - Somewhat ugly solution, but enables proper benchmarking. - Since Mode::Append has a bug (no aggregation possible) on ADIOS side, the default mode for writing is set to Mode::Write.
-
Sergey Lesnik authored
-
- Jan 03, 2022
-
-
Sergey Lesnik authored
- Check if data.bp is present. If yes, read from it. If not, fall back to standard IO.
-
Sergey Lesnik authored
-
Sergey Lesnik authored
-
- Dec 28, 2021
-
-
Sergey Lesnik authored
- The only working variant for write is BeginStep() and EndStep() in Mode::Append. Other variants of writing have issues, see commentary in adiosWrite.C - Save only double arrays => all adios templates are instantiated with double* instead of char*. - Refactor adios classes. Pull adios write and read functionality out of adiosCore into seprate classes. Clean up.
-
- Dec 10, 2021
-
-
Sergey Lesnik authored
Example of a subdict in controlDict: DebugSwitches { dictionary 2; IOobject 1; time 1; DebugIOList 1; DebugIOField 1; volScalarField 1; volVectorField 1; OFstream 1; ISstream 2; IFstream 1; } Note that some of the switches have several level of verbosity, i.e. much more ouput if set to 2.
-