axom
axom copied to clipboard
Inlet: Add capability for external data tables
Often, we want to load table-based data into simulation codes. For example, consider the following in the main deck:
boundary condition = {
velocity_file = load_curve.txt
}
and another file (load_curve.txt
) contains the velocity information in x-y format:
# time and velocities
0.0 0.0
0.1 1.0
1.0 1.0
5.0 0.0
(ping @white238 )
Would it also be possible to have an out-of-core kind of table option here, so one that would live on disk instead of these tables having to be in memory in the datastore all the time? I am sure there are other examples that could benefit, but consider a case of the user needing to specify large arrays of time varying boundary conditions (possibly scaling as horrible as one curve per element on some problem). There's certainly no need to store every time state in memory the whole time for data like this. Inlet would seem to be a useful place to coordinate that given it could facilitate readings things into some other nice random access data file the datastore can talk to, either from inlets inputs directly or just lists of plain text files or whatever, removing the need for users to pack up some random file format/structure for this and the accompanying user support burden that would put on the code developers when they run into issues.
@white238 let's chat about this.