fmdtools 2.0.4__tar.gz → 2.0.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. {fmdtools-2.0.4 → fmdtools-2.0.5}/LICENSE +1 -1
  2. {fmdtools-2.0.4 → fmdtools-2.0.5}/PKG-INFO +8 -6
  3. {fmdtools-2.0.4 → fmdtools-2.0.5}/README.md +4 -4
  4. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/__init__.py +1 -1
  5. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/architecture/base.py +3 -2
  6. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/block/function.py +1 -1
  7. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/environment.py +8 -10
  8. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/object/coords.py +10 -2
  9. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/sim/propagate.py +5 -2
  10. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools.egg-info/PKG-INFO +8 -6
  11. {fmdtools-2.0.4 → fmdtools-2.0.5}/pyproject.toml +3 -1
  12. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/__init__.py +0 -0
  13. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/asg_demo/__init__.py +0 -0
  14. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/asg_demo/demo_model.py +0 -0
  15. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/eps/__init__.py +0 -0
  16. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/eps/eps.py +0 -0
  17. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/eps/test_eps.py +0 -0
  18. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multiflow_demo/__init__.py +0 -0
  19. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multiflow_demo/multiflow_demo.py +0 -0
  20. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multiflow_demo/test_multiflow.py +0 -0
  21. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multirotor/__init__.py +0 -0
  22. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multirotor/drone_mdl_dynamic.py +0 -0
  23. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multirotor/drone_mdl_hierarchical.py +0 -0
  24. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multirotor/drone_mdl_rural.py +0 -0
  25. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multirotor/drone_mdl_static.py +0 -0
  26. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multirotor/drone_mdl_urban.py +0 -0
  27. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multirotor/opt_drone_rural.py +0 -0
  28. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/multirotor/test_multirotor.py +0 -0
  29. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/pump/__init__.py +0 -0
  30. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/pump/ex_pump.py +0 -0
  31. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/pump/jointfaults_ex.py +0 -0
  32. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/pump/parallelism_methods.py +0 -0
  33. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/pump/pump_indiv.py +0 -0
  34. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/pump/pump_stochastic.py +0 -0
  35. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/pump/test_pump.py +0 -0
  36. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/pump/test_pump_example.py +0 -0
  37. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/pump/test_pump_stochastic.py +0 -0
  38. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/rover/__init__.py +0 -0
  39. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/rover/opt_rover.py +0 -0
  40. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/rover/optimization/ea_analysis.py +0 -0
  41. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/rover/optimization/search_rover.py +0 -0
  42. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/rover/optimization/untitled2.py +0 -0
  43. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/rover/rover_degradation.py +0 -0
  44. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/rover/rover_mode_space.py +0 -0
  45. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/rover/rover_model.py +0 -0
  46. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/rover/rover_model_human.py +0 -0
  47. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/rover/test_rover.py +0 -0
  48. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/tank/__init__.py +0 -0
  49. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/tank/tank_model.py +0 -0
  50. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/tank/tank_optimization_model.py +0 -0
  51. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/tank/test_tank.py +0 -0
  52. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/taxiway/ATC.py +0 -0
  53. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/taxiway/asset.py +0 -0
  54. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/taxiway/common.py +0 -0
  55. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/taxiway/model.py +0 -0
  56. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/taxiway/test_asset.py +0 -0
  57. {fmdtools-2.0.4 → fmdtools-2.0.5}/examples/taxiway/test_model.py +0 -0
  58. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/__init__.py +0 -0
  59. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/common.py +0 -0
  60. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/graph/__init__.py +0 -0
  61. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/graph/base.py +0 -0
  62. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/graph/label.py +0 -0
  63. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/graph/model.py +0 -0
  64. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/graph/style.py +0 -0
  65. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/history.py +0 -0
  66. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/phases.py +0 -0
  67. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/result.py +0 -0
  68. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/analyze/tabulate.py +0 -0
  69. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/__init__.py +0 -0
  70. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/architecture/__init__.py +0 -0
  71. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/architecture/action.py +0 -0
  72. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/architecture/component.py +0 -0
  73. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/architecture/function.py +0 -0
  74. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/architecture/geom.py +0 -0
  75. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/base.py +0 -0
  76. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/block/__init__.py +0 -0
  77. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/block/action.py +0 -0
  78. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/block/base.py +0 -0
  79. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/block/component.py +0 -0
  80. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/container/__init__.py +0 -0
  81. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/container/base.py +0 -0
  82. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/container/mode.py +0 -0
  83. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/container/parameter.py +0 -0
  84. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/container/rand.py +0 -0
  85. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/container/state.py +0 -0
  86. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/container/time.py +0 -0
  87. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/flow/__init__.py +0 -0
  88. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/flow/base.py +0 -0
  89. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/flow/commsflow.py +0 -0
  90. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/flow/multiflow.py +0 -0
  91. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/object/__init__.py +0 -0
  92. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/object/base.py +0 -0
  93. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/object/geom.py +0 -0
  94. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/define/object/timer.py +0 -0
  95. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/sim/__init__.py +0 -0
  96. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/sim/sample.py +0 -0
  97. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/sim/scenario.py +0 -0
  98. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools/sim/search.py +0 -0
  99. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools.egg-info/SOURCES.txt +0 -0
  100. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools.egg-info/dependency_links.txt +0 -0
  101. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools.egg-info/requires.txt +0 -0
  102. {fmdtools-2.0.4 → fmdtools-2.0.5}/fmdtools.egg-info/top_level.txt +0 -0
  103. {fmdtools-2.0.4 → fmdtools-2.0.5}/setup.cfg +0 -0
  104. {fmdtools-2.0.4 → fmdtools-2.0.5}/tests/test_graph.py +0 -0
  105. {fmdtools-2.0.4 → fmdtools-2.0.5}/tests/test_packages.py +0 -0
@@ -1,4 +1,4 @@
1
- fmdtools version 2.0.4
1
+ fmdtools version 2.0.5
2
2
  ---------------------------
3
3
  Apache License
4
4
  Version 2.0, January 2004
@@ -1,10 +1,10 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fmdtools
3
- Version: 2.0.4
3
+ Version: 2.0.5
4
4
  Summary: System resilience modelling, simulation, and assessment in Python
5
5
  Author: fmdtools Developers
6
6
  Maintainer-email: Daniel Hulse <daniel.e.hulse@nasa.gov>
7
- License: fmdtools version 2.0.4
7
+ License: fmdtools version 2.0.5
8
8
  ---------------------------
9
9
  Apache License
10
10
  Version 2.0, January 2004
@@ -236,7 +236,9 @@ Project-URL: Documentation, https://nasa.github.io/fmdtools/
236
236
  Project-URL: source-code, https://github.com/nasa/fmdtools
237
237
  Classifier: Development Status :: 5 - Production/Stable
238
238
  Classifier: Intended Audience :: Science/Research
239
+ Classifier: Programming Language :: Python :: 3.10
239
240
  Classifier: Programming Language :: Python :: 3.11
241
+ Classifier: Programming Language :: Python :: 3.12
240
242
  Classifier: License :: OSI Approved :: Apache Software License
241
243
  Classifier: Operating System :: OS Independent
242
244
  Classifier: Topic :: Scientific/Engineering
@@ -268,7 +270,7 @@ Requires-Dist: shapely>=2.0
268
270
  [![GitHub Tag](https://img.shields.io/github/v/tag/nasa/fmdtools)](https://github.com/nasa/fmdtools/tags)
269
271
  [![CodeFactor](https://www.codefactor.io/repository/github/nasa/fmdtools/badge)](https://www.codefactor.io/repository/github/nasa/fmdtools)
270
272
  [![Tests Status](./reports/full-py311/tests-badge.svg)](https://htmlpreview.github.io/?https://github.com/nasa/fmdtools/blob/main/reports/full-py311/junit/report.html)
271
- [![Tests Coverage](./reports/full-py311/coverage-badge.svg)](https://htmlpreview.github.io/?https://github.com/nasa/fmdtools/blob/main/reports/full-py311/coverage/index.html)
273
+ [![Tests Coverage](./reports/full-py311/coverage-badge.svg)](https://htmlpreview.github.io/?https://github.com/nasa/fmdtools/blob/main/reports/full-py311/coverage_html/index.html)
272
274
  [![GitHub License](https://img.shields.io/badge/License-Apache%202.0-green)](https://github.com/nasa/fmdtools/blob/main/LICENSE)
273
275
  [![NASA Software Classification](https://img.shields.io/badge/Software_Class-E-blue)](https://nodis3.gsfc.nasa.gov/displayDir.cfm?Internal_ID=N_PR_7150_002D_&page_name=AppendixD)
274
276
 
@@ -355,7 +357,7 @@ This may then be installed using:
355
357
  Note that this version reflects the latest version on the ``main`` git branch along with any local changes. To use a particular version of ``fmdtools`` you can checkout the tag corresponding to the version you want, e.g.:
356
358
 
357
359
  ```
358
- git checkout v2.0.4
360
+ git checkout v2.0.5
359
361
  ```
360
362
 
361
363
 
@@ -493,8 +495,8 @@ To cite a particular version of the fmdtools, you may use:
493
495
  author = {{NASA}},
494
496
  title = {fmdtools},
495
497
  url = {https://github.com/nasa/fmdtools},
496
- version = {2.0.4}, # <- replace with your version number
497
- date = {2024-10-25},
498
+ version = {2.0.5}, # <- replace with your version number
499
+ date = {2024-11-13},
498
500
  }
499
501
  ```
500
502
 
@@ -10,7 +10,7 @@
10
10
  [![GitHub Tag](https://img.shields.io/github/v/tag/nasa/fmdtools)](https://github.com/nasa/fmdtools/tags)
11
11
  [![CodeFactor](https://www.codefactor.io/repository/github/nasa/fmdtools/badge)](https://www.codefactor.io/repository/github/nasa/fmdtools)
12
12
  [![Tests Status](./reports/full-py311/tests-badge.svg)](https://htmlpreview.github.io/?https://github.com/nasa/fmdtools/blob/main/reports/full-py311/junit/report.html)
13
- [![Tests Coverage](./reports/full-py311/coverage-badge.svg)](https://htmlpreview.github.io/?https://github.com/nasa/fmdtools/blob/main/reports/full-py311/coverage/index.html)
13
+ [![Tests Coverage](./reports/full-py311/coverage-badge.svg)](https://htmlpreview.github.io/?https://github.com/nasa/fmdtools/blob/main/reports/full-py311/coverage_html/index.html)
14
14
  [![GitHub License](https://img.shields.io/badge/License-Apache%202.0-green)](https://github.com/nasa/fmdtools/blob/main/LICENSE)
15
15
  [![NASA Software Classification](https://img.shields.io/badge/Software_Class-E-blue)](https://nodis3.gsfc.nasa.gov/displayDir.cfm?Internal_ID=N_PR_7150_002D_&page_name=AppendixD)
16
16
 
@@ -97,7 +97,7 @@ This may then be installed using:
97
97
  Note that this version reflects the latest version on the ``main`` git branch along with any local changes. To use a particular version of ``fmdtools`` you can checkout the tag corresponding to the version you want, e.g.:
98
98
 
99
99
  ```
100
- git checkout v2.0.4
100
+ git checkout v2.0.5
101
101
  ```
102
102
 
103
103
 
@@ -235,8 +235,8 @@ To cite a particular version of the fmdtools, you may use:
235
235
  author = {{NASA}},
236
236
  title = {fmdtools},
237
237
  url = {https://github.com/nasa/fmdtools},
238
- version = {2.0.4}, # <- replace with your version number
239
- date = {2024-10-25},
238
+ version = {2.0.5}, # <- replace with your version number
239
+ date = {2024-11-13},
240
240
  }
241
241
  ```
242
242
 
@@ -22,6 +22,6 @@ import fmdtools.sim as sim
22
22
  import fmdtools.analyze as analyze
23
23
 
24
24
  __all__ = ['analyze', 'sim', 'define']
25
- __version__ = '2.0.4'
25
+ __version__ = '2.0.5'
26
26
  __copyright__ = "Copyright 2024 United States Government"
27
27
  __license__ = "Apache-2.0"
@@ -156,6 +156,9 @@ class Architecture(Simulable):
156
156
  as_copy = self.as_copy
157
157
 
158
158
  track = get_sub_include(name, get_sub_include(flex_role, self.track))
159
+ # sync rands, if present
160
+ if hasattr(self, 'r') and hasattr(objclass, "container_r"):
161
+ kwargs = {**{'r': {"seed": self.r.seed}}, **kwargs}
159
162
  obj = init_obj(name=name, objclass=objclass, track=track,
160
163
  as_copy=as_copy, root=self.get_full_name()+"."+flex_role,
161
164
  **kwargs)
@@ -231,8 +234,6 @@ class Architecture(Simulable):
231
234
  """
232
235
  flows = self.get_flows(*flownames, all_if_empty=False)
233
236
  fkwargs = {**{'sp': self.sp.asdict()}, **kwargs}
234
- if hasattr(self, 'r'):
235
- fkwargs = {**{'r': {"seed": self.r.seed}}, **fkwargs}
236
237
  if not self.sp.use_local:
237
238
  fkwargs = {**{'t': {'dt': self.sp.dt}}, **fkwargs}
238
239
 
@@ -120,7 +120,7 @@ class Function(Block):
120
120
 
121
121
  def update_seed(self, seed=[]):
122
122
  """
123
- Update seed and propogates update to contained actions/components.
123
+ Update seed and propagates update to contained actions/components.
124
124
 
125
125
  (keeps seeds in sync)
126
126
 
@@ -66,15 +66,18 @@ class Environment(CommsFlow):
66
66
 
67
67
  def __init__(self, name='', root='', glob=[], p={}, s={}, r={}, c={}, ga={},
68
68
  track='default'):
69
+ super().__init__(name=name, root=root, glob=glob, p=p, s=s, track=track)
70
+ # NOTE: p and s also init here because if not, they are overritten
71
+ # may need to change in the future
72
+ self.init_roletypes('container', "coords", "arch", r=r, p=p, s=s)
69
73
  if 'p' not in c and getattr(self.coords_c, 'container_p', None) == getattr(self, 'container_p', None):
70
74
  c = {**c, 'p': p}
71
75
  if 'p' not in ga and getattr(self.arch_ga, 'container_p', None) == getattr(self, 'container_p', None):
72
76
  ga = {**ga, 'p': p}
73
- super().__init__(name=name, root=root, glob=glob, p=p, s=s, track=track)
74
- # NOTE: p and s also init here because if not, they are overritten
75
- # may need to change in the future
76
- self.init_roletypes('container', "coords", "arch", r=r, p=p, s=s, c=c, ga=ga)
77
- self.update_seed()
77
+ r_kwargs = {'run_stochastic': self.r.run_stochastic, 'seed': self.r.seed}
78
+ c = {**{'r': r_kwargs}, **c}
79
+ ga = {**{'r': r_kwargs}, **ga}
80
+ self.init_roletypes('coords', 'arch', c=c, ga=ga)
78
81
 
79
82
  def base_type(self):
80
83
  """Return fmdtools type of the model class."""
@@ -123,11 +126,6 @@ class Environment(CommsFlow):
123
126
  self.c = self.coords_c(**self._args_c)
124
127
  self.ga.reset()
125
128
 
126
- def update_seed(self, seed=[]):
127
- if not seed:
128
- seed = self.r.seed
129
- self.c.r.update_seed(seed)
130
-
131
129
  def return_probdens(self):
132
130
  return self.r.return_probdens() * self.c.r.return_probdens()
133
131
 
@@ -787,7 +787,7 @@ class Coords(BaseObject):
787
787
 
788
788
  def set_rand_pts(self, prop, value, number, pts=None, replace=False):
789
789
  """
790
- Ses a given number of points for a property to random value.
790
+ Set a given number of points for a property to random value.
791
791
 
792
792
  Parameters
793
793
  ----------
@@ -840,7 +840,7 @@ class Coords(BaseObject):
840
840
 
841
841
  def return_mutables(self):
842
842
  """Check if grid properties have changed (used in propagation)."""
843
- return tuple([*(tuple(map(tuple, getattr(self, state)))
843
+ return tuple([*(tuple(map(tuple, replace_array_nan(getattr(self, state))))
844
844
  for state in self.states)])
845
845
 
846
846
  def copy(self):
@@ -1321,6 +1321,14 @@ class Coords(BaseObject):
1321
1321
  return fig, ax
1322
1322
 
1323
1323
 
1324
+ def replace_array_nan(array):
1325
+ """Turn arrays with nans into arrays with infs."""
1326
+ if np.isnan(array).any():
1327
+ return np.nan_to_num(array, nan=np.inf)
1328
+ else:
1329
+ return array
1330
+
1331
+
1324
1332
  class ExampleCoordsParam(CoordsParam):
1325
1333
  """Example of a Coords param for use in documentation/testing."""
1326
1334
 
@@ -359,9 +359,12 @@ def exec_nom_par(arg):
359
359
  return endclass, mdlhist
360
360
 
361
361
 
362
- def exec_nom_helper(mdl, scen, name, **kwargs):
362
+ def exec_nom_helper(mdl, scen, name, mdl_kwargs={}, **kwargs):
363
363
  """Execute a nominal scenario (helper function)."""
364
- mdl_run = mdl.new(p=scen.p, sp=scen.sp, r=scen.r)
364
+ mdl_kwargs = {'p': {**mdl_kwargs.get('p', {}), **scen.p},
365
+ 'sp': {**mdl_kwargs.get('sp', {}), **scen.sp},
366
+ 'r': {**mdl_kwargs.get('r', {}), **scen.r}}
367
+ mdl_run = mdl.new(**mdl_kwargs)
365
368
  result, mdlhist, _, t_end = prop_one_scen(mdl_run, scen, **kwargs)
366
369
  check_hist_memory(mdlhist, kwargs['num_scens'], max_mem=kwargs['max_mem'])
367
370
  save_helper(kwargs['save_args'], result, mdlhist, name, name)
@@ -1,10 +1,10 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fmdtools
3
- Version: 2.0.4
3
+ Version: 2.0.5
4
4
  Summary: System resilience modelling, simulation, and assessment in Python
5
5
  Author: fmdtools Developers
6
6
  Maintainer-email: Daniel Hulse <daniel.e.hulse@nasa.gov>
7
- License: fmdtools version 2.0.4
7
+ License: fmdtools version 2.0.5
8
8
  ---------------------------
9
9
  Apache License
10
10
  Version 2.0, January 2004
@@ -236,7 +236,9 @@ Project-URL: Documentation, https://nasa.github.io/fmdtools/
236
236
  Project-URL: source-code, https://github.com/nasa/fmdtools
237
237
  Classifier: Development Status :: 5 - Production/Stable
238
238
  Classifier: Intended Audience :: Science/Research
239
+ Classifier: Programming Language :: Python :: 3.10
239
240
  Classifier: Programming Language :: Python :: 3.11
241
+ Classifier: Programming Language :: Python :: 3.12
240
242
  Classifier: License :: OSI Approved :: Apache Software License
241
243
  Classifier: Operating System :: OS Independent
242
244
  Classifier: Topic :: Scientific/Engineering
@@ -268,7 +270,7 @@ Requires-Dist: shapely>=2.0
268
270
  [![GitHub Tag](https://img.shields.io/github/v/tag/nasa/fmdtools)](https://github.com/nasa/fmdtools/tags)
269
271
  [![CodeFactor](https://www.codefactor.io/repository/github/nasa/fmdtools/badge)](https://www.codefactor.io/repository/github/nasa/fmdtools)
270
272
  [![Tests Status](./reports/full-py311/tests-badge.svg)](https://htmlpreview.github.io/?https://github.com/nasa/fmdtools/blob/main/reports/full-py311/junit/report.html)
271
- [![Tests Coverage](./reports/full-py311/coverage-badge.svg)](https://htmlpreview.github.io/?https://github.com/nasa/fmdtools/blob/main/reports/full-py311/coverage/index.html)
273
+ [![Tests Coverage](./reports/full-py311/coverage-badge.svg)](https://htmlpreview.github.io/?https://github.com/nasa/fmdtools/blob/main/reports/full-py311/coverage_html/index.html)
272
274
  [![GitHub License](https://img.shields.io/badge/License-Apache%202.0-green)](https://github.com/nasa/fmdtools/blob/main/LICENSE)
273
275
  [![NASA Software Classification](https://img.shields.io/badge/Software_Class-E-blue)](https://nodis3.gsfc.nasa.gov/displayDir.cfm?Internal_ID=N_PR_7150_002D_&page_name=AppendixD)
274
276
 
@@ -355,7 +357,7 @@ This may then be installed using:
355
357
  Note that this version reflects the latest version on the ``main`` git branch along with any local changes. To use a particular version of ``fmdtools`` you can checkout the tag corresponding to the version you want, e.g.:
356
358
 
357
359
  ```
358
- git checkout v2.0.4
360
+ git checkout v2.0.5
359
361
  ```
360
362
 
361
363
 
@@ -493,8 +495,8 @@ To cite a particular version of the fmdtools, you may use:
493
495
  author = {{NASA}},
494
496
  title = {fmdtools},
495
497
  url = {https://github.com/nasa/fmdtools},
496
- version = {2.0.4}, # <- replace with your version number
497
- date = {2024-10-25},
498
+ version = {2.0.5}, # <- replace with your version number
499
+ date = {2024-11-13},
498
500
  }
499
501
  ```
500
502
 
@@ -8,7 +8,9 @@ maintainers = [
8
8
  classifiers = [
9
9
  "Development Status :: 5 - Production/Stable",
10
10
  "Intended Audience :: Science/Research",
11
+ "Programming Language :: Python :: 3.10",
11
12
  "Programming Language :: Python :: 3.11",
13
+ "Programming Language :: Python :: 3.12",
12
14
  "License :: OSI Approved :: Apache Software License",
13
15
  "Operating System :: OS Independent",
14
16
  "Topic :: Scientific/Engineering",
@@ -16,7 +18,7 @@ classifiers = [
16
18
  description = "System resilience modelling, simulation, and assessment in Python"
17
19
  license = {file="LICENSE"}
18
20
  name = "fmdtools"
19
- version="2.0.4"
21
+ version="2.0.5"
20
22
  readme = "README.md"
21
23
  requires-python = ">=3.10"
22
24
 
File without changes
File without changes
File without changes
File without changes