gemseo.caches.simple_cache module#
Caching module to store only one entry.
- class SimpleCache(tolerance=0.0, name='')[source]#
Bases:
BaseCache
Dictionary-based cache storing a unique entry.
- Parameters:
tolerance (float) --
The tolerance below which two input arrays are considered equal:
norm(new_array-cached_array)/(1+norm(cached_array)) <= tolerance
. If this is the case for all the input names, then the cached output data shall be returned rather than re-evaluating the discipline. This tolerance could be useful to optimize CPU time. It could be something like2 * numpy.finfo(float).eps
.By default it is set to 0.0.
name (str) --
A name for the cache. If empty, use the class name.
By default it is set to "".
- cache_jacobian(input_data, jacobian_data)[source]#
Cache the input and Jacobian data.
- Parameters:
input_data (StrKeyMapping) -- The data containing the input data to cache.
jacobian_data (JacobianData) -- The Jacobian data to cache.
- Return type:
None
- cache_outputs(input_data, output_data)[source]#
Cache input and output data.
- Parameters:
input_data (StrKeyMapping) -- The data containing the input data to cache.
output_data (StrKeyMapping) -- The data containing the output data to cache.
- Return type:
None
- get_all_entries()[source]#
Return an iterator over all the entries.
The tolerance is ignored.
- Yields:
The entries.
- Return type:
Iterator[CacheEntry]
- property last_entry: CacheEntry#
The last cache entry.