Mesa 3.0.0b0__py3-none-any.whl → 3.0.0b1__py3-none-any.whl

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.

Potentially problematic release.


This version of Mesa might be problematic. Click here for more details.

Files changed (87) hide show
  1. examples/README.md +37 -0
  2. examples/__init__.py +0 -0
  3. examples/advanced/__init__.py +0 -0
  4. examples/advanced/epstein_civil_violence/Epstein Civil Violence.ipynb +116 -0
  5. examples/advanced/epstein_civil_violence/Readme.md +33 -0
  6. examples/advanced/epstein_civil_violence/epstein_civil_violence/__init__.py +0 -0
  7. examples/advanced/epstein_civil_violence/epstein_civil_violence/agent.py +158 -0
  8. examples/advanced/epstein_civil_violence/epstein_civil_violence/model.py +146 -0
  9. examples/advanced/epstein_civil_violence/epstein_civil_violence/portrayal.py +33 -0
  10. examples/advanced/epstein_civil_violence/epstein_civil_violence/server.py +81 -0
  11. examples/advanced/epstein_civil_violence/requirements.txt +3 -0
  12. examples/advanced/epstein_civil_violence/run.py +3 -0
  13. examples/advanced/pd_grid/analysis.ipynb +228 -0
  14. examples/advanced/pd_grid/pd_grid/__init__.py +0 -0
  15. examples/advanced/pd_grid/pd_grid/agent.py +50 -0
  16. examples/advanced/pd_grid/pd_grid/model.py +72 -0
  17. examples/advanced/pd_grid/pd_grid/portrayal.py +19 -0
  18. examples/advanced/pd_grid/pd_grid/server.py +21 -0
  19. examples/advanced/pd_grid/readme.md +42 -0
  20. examples/advanced/pd_grid/requirements.txt +3 -0
  21. examples/advanced/pd_grid/run.py +3 -0
  22. examples/advanced/sugarscape_g1mt/Readme.md +87 -0
  23. examples/advanced/sugarscape_g1mt/app.py +61 -0
  24. examples/advanced/sugarscape_g1mt/requirements.txt +6 -0
  25. examples/advanced/sugarscape_g1mt/run.py +105 -0
  26. examples/advanced/sugarscape_g1mt/sugarscape_g1mt/__init__.py +0 -0
  27. examples/advanced/sugarscape_g1mt/sugarscape_g1mt/model.py +180 -0
  28. examples/advanced/sugarscape_g1mt/sugarscape_g1mt/resource_agents.py +26 -0
  29. examples/advanced/sugarscape_g1mt/sugarscape_g1mt/server.py +61 -0
  30. examples/advanced/sugarscape_g1mt/sugarscape_g1mt/sugar-map.txt +50 -0
  31. examples/advanced/sugarscape_g1mt/sugarscape_g1mt/trader_agents.py +321 -0
  32. examples/advanced/sugarscape_g1mt/tests.py +72 -0
  33. examples/advanced/wolf_sheep/Readme.md +57 -0
  34. examples/advanced/wolf_sheep/__init__.py +0 -0
  35. examples/advanced/wolf_sheep/requirements.txt +1 -0
  36. examples/advanced/wolf_sheep/run.py +3 -0
  37. examples/advanced/wolf_sheep/wolf_sheep/__init__.py +0 -0
  38. examples/advanced/wolf_sheep/wolf_sheep/agents.py +102 -0
  39. examples/advanced/wolf_sheep/wolf_sheep/model.py +136 -0
  40. examples/advanced/wolf_sheep/wolf_sheep/resources/sheep.png +0 -0
  41. examples/advanced/wolf_sheep/wolf_sheep/resources/wolf.png +0 -0
  42. examples/advanced/wolf_sheep/wolf_sheep/server.py +78 -0
  43. examples/basic/__init__.py +13 -0
  44. examples/basic/boid_flockers/Readme.md +43 -0
  45. examples/basic/boid_flockers/agents.py +71 -0
  46. examples/basic/boid_flockers/app.py +59 -0
  47. examples/basic/boid_flockers/model.py +70 -0
  48. examples/basic/boltzmann_wealth_model/Readme.md +60 -0
  49. examples/basic/boltzmann_wealth_model/agents.py +31 -0
  50. examples/basic/boltzmann_wealth_model/app.py +66 -0
  51. examples/basic/boltzmann_wealth_model/model.py +44 -0
  52. examples/basic/boltzmann_wealth_model/st_app.py +115 -0
  53. examples/basic/conways_game_of_life/Readme.md +35 -0
  54. examples/basic/conways_game_of_life/agents.py +47 -0
  55. examples/basic/conways_game_of_life/model.py +32 -0
  56. examples/basic/conways_game_of_life/portrayal.py +18 -0
  57. examples/basic/conways_game_of_life/requirements.txt +1 -0
  58. examples/basic/conways_game_of_life/server.py +11 -0
  59. examples/basic/conways_game_of_life/st_app.py +71 -0
  60. examples/basic/schelling/README.md +47 -0
  61. examples/basic/schelling/agents.py +26 -0
  62. examples/basic/schelling/analysis.ipynb +205 -0
  63. examples/basic/schelling/app.py +43 -0
  64. examples/basic/schelling/model.py +60 -0
  65. examples/basic/virus_on_network/README.md +61 -0
  66. examples/basic/virus_on_network/agents.py +69 -0
  67. examples/basic/virus_on_network/app.py +133 -0
  68. examples/basic/virus_on_network/model.py +99 -0
  69. mesa/__init__.py +4 -1
  70. mesa/agent.py +14 -19
  71. mesa/examples.py +3 -0
  72. mesa/experimental/__init__.py +8 -2
  73. mesa/experimental/cell_space/cell.py +9 -0
  74. mesa/experimental/cell_space/discrete_space.py +7 -1
  75. mesa/experimental/cell_space/grid.py +13 -0
  76. mesa/experimental/cell_space/network.py +3 -0
  77. mesa/model.py +63 -12
  78. mesa/time.py +5 -3
  79. mesa/visualization/components/matplotlib.py +9 -4
  80. mesa/visualization/solara_viz.py +13 -58
  81. {mesa-3.0.0b0.dist-info → mesa-3.0.0b1.dist-info}/METADATA +1 -1
  82. mesa-3.0.0b1.dist-info/RECORD +114 -0
  83. mesa-3.0.0b0.dist-info/RECORD +0 -45
  84. {mesa-3.0.0b0.dist-info → mesa-3.0.0b1.dist-info}/WHEEL +0 -0
  85. {mesa-3.0.0b0.dist-info → mesa-3.0.0b1.dist-info}/entry_points.txt +0 -0
  86. {mesa-3.0.0b0.dist-info → mesa-3.0.0b1.dist-info}/licenses/LICENSE +0 -0
  87. {mesa-3.0.0b0.dist-info → mesa-3.0.0b1.dist-info}/licenses/NOTICE +0 -0
@@ -63,7 +63,9 @@ def SpaceMatplotlib(
63
63
  elif space is None and propertylayer_portrayal:
64
64
  draw_property_layers(space_ax, space, propertylayer_portrayal, model)
65
65
 
66
- solara.FigureMatplotlib(space_fig, format="png", dependencies=dependencies)
66
+ solara.FigureMatplotlib(
67
+ space_fig, format="png", bbox_inches="tight", dependencies=dependencies
68
+ )
67
69
 
68
70
 
69
71
  def draw_property_layers(ax, space, propertylayer_portrayal, model):
@@ -327,11 +329,14 @@ def PlotMatplotlib(model, measure, dependencies: list[any] | None = None):
327
329
  elif isinstance(measure, dict):
328
330
  for m, color in measure.items():
329
331
  ax.plot(df.loc[:, m], label=m, color=color)
330
- fig.legend()
332
+ ax.legend(loc="best")
331
333
  elif isinstance(measure, list | tuple):
332
334
  for m in measure:
333
335
  ax.plot(df.loc[:, m], label=m)
334
- fig.legend()
336
+ ax.legend(loc="best")
337
+ ax.set_xlabel("Step")
335
338
  # Set integer x axis
336
339
  ax.xaxis.set_major_locator(plt.MaxNLocator(integer=True))
337
- solara.FigureMatplotlib(fig, dependencies=dependencies)
340
+ solara.FigureMatplotlib(
341
+ fig, format="png", bbox_inches="tight", dependencies=dependencies
342
+ )
@@ -30,10 +30,8 @@ from typing import TYPE_CHECKING, Literal
30
30
 
31
31
  import reacton.core
32
32
  import solara
33
- from solara.alias import rv
34
33
 
35
34
  import mesa.visualization.components.altair as components_altair
36
- import mesa.visualization.components.matplotlib as components_matplotlib
37
35
  from mesa.visualization.UserParam import Slider
38
36
  from mesa.visualization.utils import force_update, update_counter
39
37
 
@@ -41,55 +39,6 @@ if TYPE_CHECKING:
41
39
  from mesa.model import Model
42
40
 
43
41
 
44
- # TODO: Turn this function into a Solara component once the current_step.value
45
- # dependency is passed to measure()
46
- def Card(
47
- model, measures, agent_portrayal, space_drawer, dependencies, color, layout_type
48
- ):
49
- """Create a card component for visualizing model space or measures.
50
-
51
- Args:
52
- model: The Mesa model instance
53
- measures: List of measures to be plotted
54
- agent_portrayal: Function to define agent appearance
55
- space_drawer: Method to render agent space
56
- dependencies: List of dependencies for updating the visualization
57
- color: Background color of the card
58
- layout_type: Type of layout (Space or Measure)
59
-
60
- Returns:
61
- rv.Card: A card component containing the visualization
62
- """
63
- with rv.Card(
64
- style_=f"background-color: {color}; width: 100%; height: 100%"
65
- ) as main:
66
- if "Space" in layout_type:
67
- rv.CardTitle(children=["Space"])
68
- if space_drawer == "default":
69
- # draw with the default implementation
70
- components_matplotlib.SpaceMatplotlib(
71
- model, agent_portrayal, dependencies=dependencies
72
- )
73
- elif space_drawer == "altair":
74
- components_altair.SpaceAltair(
75
- model, agent_portrayal, dependencies=dependencies
76
- )
77
- elif space_drawer:
78
- # if specified, draw agent space with an alternate renderer
79
- space_drawer(model, agent_portrayal, dependencies=dependencies)
80
- elif "Measure" in layout_type:
81
- rv.CardTitle(children=["Measure"])
82
- measure = measures[layout_type["Measure"]]
83
- if callable(measure):
84
- # Is a custom object
85
- measure(model)
86
- else:
87
- components_matplotlib.PlotMatplotlib(
88
- model, measure, dependencies=dependencies
89
- )
90
- return main
91
-
92
-
93
42
  @solara.component
94
43
  def SolaraViz(
95
44
  model: Model | solara.Reactive[Model],
@@ -207,10 +156,16 @@ def ComponentsView(
207
156
  model: Model instance to pass to each component
208
157
  """
209
158
  wrapped_components = [_wrap_component(component) for component in components]
210
-
211
- with solara.Column():
212
- for component in wrapped_components:
213
- component(model)
159
+ items = [component(model) for component in wrapped_components]
160
+ grid_layout_initial = make_initial_grid_layout(num_components=len(items))
161
+ grid_layout, set_grid_layout = solara.use_state(grid_layout_initial)
162
+ solara.GridDraggable(
163
+ items=items,
164
+ grid_layout=grid_layout,
165
+ resizable=True,
166
+ draggable=True,
167
+ on_grid_layout=set_grid_layout,
168
+ )
214
169
 
215
170
 
216
171
  JupyterViz = SolaraViz
@@ -448,11 +403,11 @@ def UserInputs(user_params, on_change=None):
448
403
  raise ValueError(f"{input_type} is not a supported input type")
449
404
 
450
405
 
451
- def make_initial_grid_layout(layout_types):
406
+ def make_initial_grid_layout(num_components):
452
407
  """Create an initial grid layout for visualization components.
453
408
 
454
409
  Args:
455
- layout_types: List of layout types (Space or Measure)
410
+ num_components: Number of components to display
456
411
 
457
412
  Returns:
458
413
  list: Initial grid layout configuration
@@ -466,7 +421,7 @@ def make_initial_grid_layout(layout_types):
466
421
  "x": 6 * (i % 2),
467
422
  "y": 16 * (i - i % 2),
468
423
  }
469
- for i in range(len(layout_types))
424
+ for i in range(num_components)
470
425
  ]
471
426
 
472
427
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: Mesa
3
- Version: 3.0.0b0
3
+ Version: 3.0.0b1
4
4
  Summary: Agent-based modeling (ABM) in Python
5
5
  Project-URL: homepage, https://github.com/projectmesa/mesa
6
6
  Project-URL: repository, https://github.com/projectmesa/mesa
@@ -0,0 +1,114 @@
1
+ examples/README.md,sha256=-H6ECbl2bqkAK3PKz6ixlm9pN13f-CyKfNssm2Kbyw0,2810
2
+ examples/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
+ examples/advanced/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ examples/advanced/epstein_civil_violence/Epstein Civil Violence.ipynb,sha256=yh50ZAK2BVJyJIKsQTTxywnasqWn1IiQUVrwmZKue4w,29032
5
+ examples/advanced/epstein_civil_violence/Readme.md,sha256=X3VHD2oI43QEeNd2_PzcYSK1PQMXwJHipluZtud7hx4,1891
6
+ examples/advanced/epstein_civil_violence/requirements.txt,sha256=wGbc4N4Ald5cHmssu6QROK9XwbFlWPAiE3U0dE4qrjs,29
7
+ examples/advanced/epstein_civil_violence/run.py,sha256=pGq0Y8_T_1shBU8t4ohJjHEun2rLrtD8AnffIArgKUg,83
8
+ examples/advanced/epstein_civil_violence/epstein_civil_violence/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
+ examples/advanced/epstein_civil_violence/epstein_civil_violence/agent.py,sha256=R1Nu-_c_qBPCvr1vl6GgamOP4AUV9GJdcF3V7frAgdY,5676
10
+ examples/advanced/epstein_civil_violence/epstein_civil_violence/model.py,sha256=Rf6UuypdkER85V3uX9eVsWvwG7FitL0-biVSIj6227s,5100
11
+ examples/advanced/epstein_civil_violence/epstein_civil_violence/portrayal.py,sha256=Ob9wWMwMtTEp52zSiGoNVoowBOtbN8neHtU73OyqLuU,804
12
+ examples/advanced/epstein_civil_violence/epstein_civil_violence/server.py,sha256=26Yrf_tuPC1V1iLbbEZT1AK4x9lhRe0EKu5yOGWETR8,2233
13
+ examples/advanced/pd_grid/analysis.ipynb,sha256=ReYtRe2JVyCCXoMBONvynXDQ_eGtQSWhNcuJY3CYTTI,82323
14
+ examples/advanced/pd_grid/readme.md,sha256=teHdk3retAgsLYiJ3BNPeH0Jj5vYVk3drV-OPeT4hQI,2334
15
+ examples/advanced/pd_grid/requirements.txt,sha256=wGbc4N4Ald5cHmssu6QROK9XwbFlWPAiE3U0dE4qrjs,29
16
+ examples/advanced/pd_grid/run.py,sha256=XHBRcsV1TkxDucGqpEujwzZRWefP7UnYux2mJ-ZE1FI,68
17
+ examples/advanced/pd_grid/pd_grid/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
+ examples/advanced/pd_grid/pd_grid/agent.py,sha256=DzGj4LZUjV0xMQAwkRsv2Aoap1cUvLscJswfA1PdVDs,1716
19
+ examples/advanced/pd_grid/pd_grid/model.py,sha256=xLYg7aGYrTqdxSRH4EsuvjMixrbDbMPTlv-54zlSKAI,2295
20
+ examples/advanced/pd_grid/pd_grid/portrayal.py,sha256=bm1966HZTZsbaukEAiCVd4LiZGNS5wsKnf4vygNf9a8,561
21
+ examples/advanced/pd_grid/pd_grid/server.py,sha256=mgjFSVvGl00WwA5P3lOuEGTsnStUWigAcJ-0Ixbk1p0,531
22
+ examples/advanced/sugarscape_g1mt/Readme.md,sha256=EQTefsVYNVM_J82Bf4BSHwEA7rAcF6j7TFTY99XSsuw,4126
23
+ examples/advanced/sugarscape_g1mt/app.py,sha256=PSLY6nPWQ2KGz809-FlMrUp5mS_Yrh09CRUf8hR9yGM,1946
24
+ examples/advanced/sugarscape_g1mt/requirements.txt,sha256=qOAQy-dhycq2AqbbIWY_v3IeSbehPyzBjqrrPE4KnWA,51
25
+ examples/advanced/sugarscape_g1mt/run.py,sha256=LpepAdiG2ee3Ne2Ce1feamAYt43MdRz6MyZ14MdQ7_M,2940
26
+ examples/advanced/sugarscape_g1mt/tests.py,sha256=y8s88SymYtul0OE4g6YVElm0rbZ7wq5AEUUvn8WbpJU,2582
27
+ examples/advanced/sugarscape_g1mt/sugarscape_g1mt/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
28
+ examples/advanced/sugarscape_g1mt/sugarscape_g1mt/model.py,sha256=MAQp3LIC0yiJBmGsWmuv7-UFc39W_R2n2MXyjNeNk7I,6038
29
+ examples/advanced/sugarscape_g1mt/sugarscape_g1mt/resource_agents.py,sha256=PJRJv3odUCJT93iwpulxP9p-IL36sCu8KMQA8k3dWG8,789
30
+ examples/advanced/sugarscape_g1mt/sugarscape_g1mt/server.py,sha256=oT70ARLGPW8SuyEH2PBYPGna0JQgzyqX7NFdgLxXbRM,1697
31
+ examples/advanced/sugarscape_g1mt/sugarscape_g1mt/sugar-map.txt,sha256=zZtGYciBPT4miZVnbVuoQ5TugTmGrbDWV9yb5KH6tnU,5000
32
+ examples/advanced/sugarscape_g1mt/sugarscape_g1mt/trader_agents.py,sha256=oWOxvKd67bCis2MPhaLEF8_YZZ4If40y1anEo8oJkhA,9473
33
+ examples/advanced/wolf_sheep/Readme.md,sha256=6zrtCg4Fb-hgQxqdLMpTkIYMwD6owCv8BMz_qn0N98Q,3165
34
+ examples/advanced/wolf_sheep/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
+ examples/advanced/wolf_sheep/requirements.txt,sha256=RiDVcvMXkHZ6u1mwimddgbae3h9ngQGDnhNEGTgMTXE,10
36
+ examples/advanced/wolf_sheep/run.py,sha256=GGoA95RIlaaVBGfdMcn_MPTEUTiGj1BzVETgLUnxOUU,71
37
+ examples/advanced/wolf_sheep/wolf_sheep/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
+ examples/advanced/wolf_sheep/wolf_sheep/agents.py,sha256=UocDCsKmXkWxt0-ToVIOhBjX-amYwMtZbHN8U2AolFI,3068
39
+ examples/advanced/wolf_sheep/wolf_sheep/model.py,sha256=VAFqDNGhUzdKCR4Fajwnq6KMXsoLorw6XatBQNvIDCw,4416
40
+ examples/advanced/wolf_sheep/wolf_sheep/server.py,sha256=vzb2l1dtEjR2qnoyHmSoGhj2o8GeB8nCxPe5DcR7Wug,2556
41
+ examples/advanced/wolf_sheep/wolf_sheep/resources/sheep.png,sha256=WPO6dZNpSQmj3vbmXzJrFSBgZNvswfCqedOZB3pKaPY,1322
42
+ examples/advanced/wolf_sheep/wolf_sheep/resources/wolf.png,sha256=1R9EXUI-BoI6exPTkscGrTpHEnEpsHM0_7oPmV-AhJQ,1473
43
+ examples/basic/__init__.py,sha256=nvxSxncLovRhynU91IPhU9YtlnF2Akp9zlxVj9al_f4,384
44
+ examples/basic/boid_flockers/Readme.md,sha256=-QjoIQcpGBXH0ix_3dHG-FcykbOf1FTkapSQme86nW0,1268
45
+ examples/basic/boid_flockers/agents.py,sha256=QXT1zxOq_kdk_w60H2zPV3KpivzCHQ-ApyFIIDvxvok,2693
46
+ examples/basic/boid_flockers/app.py,sha256=bNBDUZBwWqRegX_3OtMoro-y1NlVWWJIGGUYKyJLKHc,1237
47
+ examples/basic/boid_flockers/model.py,sha256=a8B1afwAedgo-VyrCkS4KfnzO2G06kv4KKDuUcghwmw,2169
48
+ examples/basic/boltzmann_wealth_model/Readme.md,sha256=FQSNNK7lXKZhGx_c688mrkjyr34g6YrHQw0nioD5bXk,2772
49
+ examples/basic/boltzmann_wealth_model/agents.py,sha256=uVUo9jWQnv5I3uCaYE_N7X-cOdHhdy6RtLUL_znELgI,892
50
+ examples/basic/boltzmann_wealth_model/app.py,sha256=yxaIPEvco21PQtdYmSfQGH2cYeFpOn7NCB-QXPDhfCk,1902
51
+ examples/basic/boltzmann_wealth_model/model.py,sha256=XDd6XZ3z32R_bzC7tSwTBREda4KXpVnddVe6UxE4BUQ,1447
52
+ examples/basic/boltzmann_wealth_model/st_app.py,sha256=v3Je2hSe8nXPgfmZhX8lHM-7xs8dk2g1Zz0X81AqX3k,3466
53
+ examples/basic/conways_game_of_life/Readme.md,sha256=pYTAtzybiyxVZSmwwPlgIa4Y1X2d7iKLs_Ial0JVcsE,1535
54
+ examples/basic/conways_game_of_life/agents.py,sha256=FF9eZgm_Lwt080wOk9LGnaXpdwD4WMSY44vHw2RE68A,1619
55
+ examples/basic/conways_game_of_life/model.py,sha256=1X21-NlbtU9qseOfsLaTOTgGA9klWZCIFfgDWazyij4,1115
56
+ examples/basic/conways_game_of_life/portrayal.py,sha256=pZYZFlShdz1OJ-lt5LhmJsxhKHBTjDv3I4JRBNfpHIs,531
57
+ examples/basic/conways_game_of_life/requirements.txt,sha256=6qxgQJ4_fAsmgzZq2RuRG0xaP9NAg4QKBMBsQkVoNCM,9
58
+ examples/basic/conways_game_of_life/server.py,sha256=Goe3hmrgiDFNV5k4q7BtUWnLpmY4lavVxyHsBmfaCKc,347
59
+ examples/basic/conways_game_of_life/st_app.py,sha256=pAEepCp5vzfW52imEB_iTZ5254ZlQh0SnEUjSOOuJpA,2358
60
+ examples/basic/schelling/README.md,sha256=G7SW0JkPpBBJg_bzG5LvcIJcaloMBwf-OJmOcLRPtqA,2417
61
+ examples/basic/schelling/agents.py,sha256=dvznzN2As979x-4EH8Y-i7HhlCuv1OdtWYebOdxTdhk,773
62
+ examples/basic/schelling/analysis.ipynb,sha256=JDJy6-U6eO-LrHWxZr1c3lkvtoY0DNHa-kJ4J-Z-wwo,5804
63
+ examples/basic/schelling/app.py,sha256=DiSjAQZaI0jFBc3RvadrTHJlIaO64kOifxdt3EycDkI,945
64
+ examples/basic/schelling/model.py,sha256=CfqWr1ZEu5FpC2YVYvHyJRlhN-mF8iQIaHcVTXWCA5M,1828
65
+ examples/basic/virus_on_network/README.md,sha256=UnCkKiJK7wVw40a-oDR6qdf3QpCsBhgNOVZg-2UXPlc,2528
66
+ examples/basic/virus_on_network/agents.py,sha256=a_WhqYblJlW6od67eXfU-nb7IMRyYpgxtf0le--VYoA,1975
67
+ examples/basic/virus_on_network/app.py,sha256=y1Ie-E1cY3KhDnAVfFUSY0X6pf8dbBB8U62adtbEmk0,3288
68
+ examples/basic/virus_on_network/model.py,sha256=EmInC4AdZLP_2S5yAoDrR-_7gq9siWuyyvV4mHM8VQw,2768
69
+ mesa/__init__.py,sha256=eRKj2P6Fn6LvISXl5egh19VTDDu92HIPK1fKAxxIFnk,708
70
+ mesa/agent.py,sha256=R8NchFZZlbUIE9eHkUV3U22W6EPS0JqEtkK1dhurv0I,24157
71
+ mesa/batchrunner.py,sha256=0AqTcvjWNPp1aqn7zuUKSovx6Rnkk4M-KouCZ4Guqy0,6419
72
+ mesa/datacollection.py,sha256=xyb07aBpd-HSDh5bk-XcVqGiDu5bfaLlxj5eDlGIwqY,16138
73
+ mesa/examples.py,sha256=nD62FlGD-cf02sG_o6ViCJbOI0Z2sJbpqyjS_F19BbI,109
74
+ mesa/main.py,sha256=_KgeVGbi0znzezjjoM09vhGdyaqcuDEwb9M7vH2c_O4,1668
75
+ mesa/model.py,sha256=iJMlnqQPSgI1rUgnwpBIpyvdULO-XASlRU_H94nRlo8,9844
76
+ mesa/space.py,sha256=1sVl78o5lYP6aEg32QIb9-tcv3V3UeFdC7A_h_8CgO8,62838
77
+ mesa/time.py,sha256=5yWubqst13MfjXpsYjY-MNdIQH3KWi373KRmRZT5BBo,15044
78
+ mesa/cookiecutter-mesa/cookiecutter.json,sha256=tBSWli39fOWUXGfiDCTKd92M7uKaBIswXbkOdbUufYY,337
79
+ mesa/cookiecutter-mesa/hooks/post_gen_project.py,sha256=UKz12l6mKc7fILK0MvV5djsTKwkmD4DlH8LYjFO8ehI,316
80
+ mesa/cookiecutter-mesa/{{cookiecutter.snake}}/README.md,sha256=Yji4lGY-NtQSnW-oBj0_Jhs-XhCfZA8R1mBBM_IllGs,80
81
+ mesa/cookiecutter-mesa/{{cookiecutter.snake}}/app.pytemplate,sha256=36f9k9CH6TK6VrXsPvTFXGUfCKzCLwgYTeK-Gt27GNg,584
82
+ mesa/cookiecutter-mesa/{{cookiecutter.snake}}/setup.pytemplate,sha256=UtRpLM_CkeUZRec-Ef_LiO_x7SKaWN11fOiH9T1UmTw,214
83
+ mesa/cookiecutter-mesa/{{cookiecutter.snake}}/{{cookiecutter.snake}}/__init__.py,sha256=WgJccMfsAlD_mA3zTBPJVHadF3FtO8xgi8SPKORzyMs,22
84
+ mesa/cookiecutter-mesa/{{cookiecutter.snake}}/{{cookiecutter.snake}}/model.pytemplate,sha256=Aml4Z6E1yj7E7DtHNSUqnKNRUdkxG9WWtJyW8fkxCng,1870
85
+ mesa/experimental/UserParam.py,sha256=f32nmFjroe76HpxU75ZCEOqFW2nAsDfmqIf8kQ1zt-E,2086
86
+ mesa/experimental/__init__.py,sha256=faBYyHSp-sFQPaBx8-WsLToVKCndpSzpt18HmNZtasM,385
87
+ mesa/experimental/solara_viz.py,sha256=uWrNQAX3oEWSftmyjNorN839dBCUp86hnhpL704dyGQ,15212
88
+ mesa/experimental/cell_space/__init__.py,sha256=-NtSCT7mA-aszLSAdqbICGqeFe2vBdb-GrcW562legY,999
89
+ mesa/experimental/cell_space/cell.py,sha256=lDm7NQhPDFf3-SZu5W594lDNGtzcdSPUSSsELFRg0bs,7166
90
+ mesa/experimental/cell_space/cell_agent.py,sha256=jvYOV9OIaBaqAsAG0YLV64X_f3BJe_wP7qfos_RXi0Y,3759
91
+ mesa/experimental/cell_space/cell_collection.py,sha256=ZcyuPEevCZEXW7jFnX6StjBMw4UBDQvUspZRcFi2dFg,3426
92
+ mesa/experimental/cell_space/discrete_space.py,sha256=bA-Ledq4mELnRtV5M-I9hhT3XKOy0uTdaT9U7u_Y0MY,5053
93
+ mesa/experimental/cell_space/grid.py,sha256=oWTy6kaaHXLPneA-w5XdqzwA0YItMWYgCq_UjNH9iA8,7711
94
+ mesa/experimental/cell_space/network.py,sha256=_x0zKlI-odNCSRb_Zqh4nBPjqnW5iVj8sVheKPCLzmU,1321
95
+ mesa/experimental/cell_space/voronoi.py,sha256=lSY8zQhELvOy0RfDyZIek09UMwY9_20UY9SPqFWsNoM,10014
96
+ mesa/experimental/components/altair.py,sha256=49OHgrm1JncfrKqDfw_5ifPtsbMKdgVYCacL9SMwucc,2624
97
+ mesa/experimental/components/matplotlib.py,sha256=j477UBk_7yW5vzT3rjhnuTixpA7PedDNghoK9TLgHVY,8043
98
+ mesa/experimental/devs/__init__.py,sha256=EByaC66ikUIu9G9p1geLm6ESEMWZOPTO9r9627S83j0,211
99
+ mesa/experimental/devs/eventlist.py,sha256=Trvc5S-NG5B792uuk_cY8Q_5Rw99zioUYDQXcXWVuCo,5972
100
+ mesa/experimental/devs/simulator.py,sha256=wvqkLIDgbJNaem9nwMacyEYRp0W3ai5Oxptw3-QmbSw,10595
101
+ mesa/experimental/devs/examples/epstein_civil_violence.py,sha256=E8YSV3O5ihKsntGtnltHM-4IyS8eg2DSRUqmIiw_1iU,10916
102
+ mesa/experimental/devs/examples/wolf_sheep.py,sha256=1eb1CfYNQoprqSJat-LPYPvwWH1ENQdj39viEqwSk0s,8103
103
+ mesa/visualization/UserParam.py,sha256=Dl2WOwLYLf0pfLpabCZtIdFRyKZrK6Qtc3utZx5GPYg,2139
104
+ mesa/visualization/__init__.py,sha256=sa8lqeLcDtte19SMzFiKP6K4CrVLxAPwrhDu_AsDWTs,395
105
+ mesa/visualization/solara_viz.py,sha256=SHlQ8Y4k6EU7LxlJjjvvjDJWGWryahjQXCwMiVgoF0E,14944
106
+ mesa/visualization/utils.py,sha256=lJHgRKF5BHLf72Tw3YpwyiWuRoIimaTKQ7xBCw_Rx3A,146
107
+ mesa/visualization/components/altair.py,sha256=E-iblqpWhx72qrjkNz4Ie9c66Hh1OFpLVjuDIg9m2sA,2804
108
+ mesa/visualization/components/matplotlib.py,sha256=_l0W_kjFsvpoOl-CBHvCoPplb5w_LQ77JC2xteIn2u0,11825
109
+ mesa-3.0.0b1.dist-info/METADATA,sha256=Xnnt_bkId5QAI0-LWep2n0Kn-bf9iDEn9OI-RTbKzpo,9937
110
+ mesa-3.0.0b1.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
111
+ mesa-3.0.0b1.dist-info/entry_points.txt,sha256=IOcQtetGF8l4wHpOs_hGb19Rz-FS__BMXOJR10IBPsA,39
112
+ mesa-3.0.0b1.dist-info/licenses/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
113
+ mesa-3.0.0b1.dist-info/licenses/NOTICE,sha256=GbsWoK0QWv1JyZ_xer2s-jNilv0RtWl-0UrtlJANHPg,578
114
+ mesa-3.0.0b1.dist-info/RECORD,,
@@ -1,45 +0,0 @@
1
- mesa/__init__.py,sha256=GM836SFDxNMX8ePHbGQt5Yi4G3jiYLyOb3f-AUDLmaQ,618
2
- mesa/agent.py,sha256=XeBMwbq7Ruhbt6xj9PPEDuDMtO185Bff9dOFagUxiq8,24254
3
- mesa/batchrunner.py,sha256=0AqTcvjWNPp1aqn7zuUKSovx6Rnkk4M-KouCZ4Guqy0,6419
4
- mesa/datacollection.py,sha256=xyb07aBpd-HSDh5bk-XcVqGiDu5bfaLlxj5eDlGIwqY,16138
5
- mesa/main.py,sha256=_KgeVGbi0znzezjjoM09vhGdyaqcuDEwb9M7vH2c_O4,1668
6
- mesa/model.py,sha256=zMs5_ZlLity7hYcrwhz1BY1ysK3y3aQa9hf1KIoxryM,7845
7
- mesa/space.py,sha256=1sVl78o5lYP6aEg32QIb9-tcv3V3UeFdC7A_h_8CgO8,62838
8
- mesa/time.py,sha256=FaVqRwWWdFH6iagfXrdmCN7YSvRpDmikyzfz6GJ8yU4,14977
9
- mesa/cookiecutter-mesa/cookiecutter.json,sha256=tBSWli39fOWUXGfiDCTKd92M7uKaBIswXbkOdbUufYY,337
10
- mesa/cookiecutter-mesa/hooks/post_gen_project.py,sha256=UKz12l6mKc7fILK0MvV5djsTKwkmD4DlH8LYjFO8ehI,316
11
- mesa/cookiecutter-mesa/{{cookiecutter.snake}}/README.md,sha256=Yji4lGY-NtQSnW-oBj0_Jhs-XhCfZA8R1mBBM_IllGs,80
12
- mesa/cookiecutter-mesa/{{cookiecutter.snake}}/app.pytemplate,sha256=36f9k9CH6TK6VrXsPvTFXGUfCKzCLwgYTeK-Gt27GNg,584
13
- mesa/cookiecutter-mesa/{{cookiecutter.snake}}/setup.pytemplate,sha256=UtRpLM_CkeUZRec-Ef_LiO_x7SKaWN11fOiH9T1UmTw,214
14
- mesa/cookiecutter-mesa/{{cookiecutter.snake}}/{{cookiecutter.snake}}/__init__.py,sha256=WgJccMfsAlD_mA3zTBPJVHadF3FtO8xgi8SPKORzyMs,22
15
- mesa/cookiecutter-mesa/{{cookiecutter.snake}}/{{cookiecutter.snake}}/model.pytemplate,sha256=Aml4Z6E1yj7E7DtHNSUqnKNRUdkxG9WWtJyW8fkxCng,1870
16
- mesa/experimental/UserParam.py,sha256=f32nmFjroe76HpxU75ZCEOqFW2nAsDfmqIf8kQ1zt-E,2086
17
- mesa/experimental/__init__.py,sha256=1hxkjcZvdJhhQx4iLlTTUAPs_SqRyN-us4qR8U6JKkw,209
18
- mesa/experimental/solara_viz.py,sha256=uWrNQAX3oEWSftmyjNorN839dBCUp86hnhpL704dyGQ,15212
19
- mesa/experimental/cell_space/__init__.py,sha256=-NtSCT7mA-aszLSAdqbICGqeFe2vBdb-GrcW562legY,999
20
- mesa/experimental/cell_space/cell.py,sha256=lR1lz9hMlfKsDoRzSPCqb0XTk2VIEFqxIiN_zwUaUUo,6738
21
- mesa/experimental/cell_space/cell_agent.py,sha256=jvYOV9OIaBaqAsAG0YLV64X_f3BJe_wP7qfos_RXi0Y,3759
22
- mesa/experimental/cell_space/cell_collection.py,sha256=ZcyuPEevCZEXW7jFnX6StjBMw4UBDQvUspZRcFi2dFg,3426
23
- mesa/experimental/cell_space/discrete_space.py,sha256=bl8jmYnOLFaF5_0Wh7BFQetXr53cS-SNLzHTjtkOnVY,4845
24
- mesa/experimental/cell_space/grid.py,sha256=WT9AtQCgPzV8VonX0oSPRXgZNXoOR_mVgEAEOp5I4YA,7319
25
- mesa/experimental/cell_space/network.py,sha256=hzhxGipRyM1PWOQFlPz--tc3pA_RRBT8Xq4pXHx5sD8,1252
26
- mesa/experimental/cell_space/voronoi.py,sha256=lSY8zQhELvOy0RfDyZIek09UMwY9_20UY9SPqFWsNoM,10014
27
- mesa/experimental/components/altair.py,sha256=49OHgrm1JncfrKqDfw_5ifPtsbMKdgVYCacL9SMwucc,2624
28
- mesa/experimental/components/matplotlib.py,sha256=j477UBk_7yW5vzT3rjhnuTixpA7PedDNghoK9TLgHVY,8043
29
- mesa/experimental/devs/__init__.py,sha256=EByaC66ikUIu9G9p1geLm6ESEMWZOPTO9r9627S83j0,211
30
- mesa/experimental/devs/eventlist.py,sha256=Trvc5S-NG5B792uuk_cY8Q_5Rw99zioUYDQXcXWVuCo,5972
31
- mesa/experimental/devs/simulator.py,sha256=wvqkLIDgbJNaem9nwMacyEYRp0W3ai5Oxptw3-QmbSw,10595
32
- mesa/experimental/devs/examples/epstein_civil_violence.py,sha256=E8YSV3O5ihKsntGtnltHM-4IyS8eg2DSRUqmIiw_1iU,10916
33
- mesa/experimental/devs/examples/wolf_sheep.py,sha256=1eb1CfYNQoprqSJat-LPYPvwWH1ENQdj39viEqwSk0s,8103
34
- mesa/visualization/UserParam.py,sha256=Dl2WOwLYLf0pfLpabCZtIdFRyKZrK6Qtc3utZx5GPYg,2139
35
- mesa/visualization/__init__.py,sha256=sa8lqeLcDtte19SMzFiKP6K4CrVLxAPwrhDu_AsDWTs,395
36
- mesa/visualization/solara_viz.py,sha256=6Gq4r4-XFt9AG6G-v2Gvz_W-ykTC4gP0OQnqtYIhAxw,16717
37
- mesa/visualization/utils.py,sha256=lJHgRKF5BHLf72Tw3YpwyiWuRoIimaTKQ7xBCw_Rx3A,146
38
- mesa/visualization/components/altair.py,sha256=E-iblqpWhx72qrjkNz4Ie9c66Hh1OFpLVjuDIg9m2sA,2804
39
- mesa/visualization/components/matplotlib.py,sha256=6ttFOxfNj3YdNu7c1NB0YP6-F7Chy0Qq0kkMe02TF8c,11697
40
- mesa-3.0.0b0.dist-info/METADATA,sha256=iqC2Ea-eu6tKAs5lwnnHS7Zoimp6ifPO8cJBb4o65UQ,9937
41
- mesa-3.0.0b0.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
42
- mesa-3.0.0b0.dist-info/entry_points.txt,sha256=IOcQtetGF8l4wHpOs_hGb19Rz-FS__BMXOJR10IBPsA,39
43
- mesa-3.0.0b0.dist-info/licenses/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
44
- mesa-3.0.0b0.dist-info/licenses/NOTICE,sha256=GbsWoK0QWv1JyZ_xer2s-jNilv0RtWl-0UrtlJANHPg,578
45
- mesa-3.0.0b0.dist-info/RECORD,,
File without changes