History.record edited to improve Euler method simulation efficiency #290
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changes the record class method in the History class such that it records the
self.datasets[element]
dataframes as entries in a dictionary with thetime_stamp
as keys that map to corresponding dataframe for each element.The
self.dicts
property is introduced to account for this - this is a nested dictionary with theeptm.elements
as keys and the above dictionaries as the values.This allows for appending the dataframes at each time step without having to load onto memory the increasingly large
self.datasets[element]
dataframes.The
update_datasets
class method is introduced in order to concatenate all the dataframes withinself.datasets[element]
at the end of the simulation.This will be accompanied by changes to the
EulerSolver
class method solve to runHistory.update_datasets
at the final time point.