jinns 1.6.1__tar.gz → 1.7.0__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 (183) hide show
  1. jinns-1.7.0/.pre-commit-config.yaml +25 -0
  2. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/ODE/1D_Generalized_Lotka_Volterra.ipynb +6 -4
  3. jinns-1.7.0/Notebooks/ODE/linear_fo_equation.ipynb +537 -0
  4. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/ODE/systems_biology_informed_neural_network.ipynb +22 -11
  5. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/1D_non_stationary_Burgers.ipynb +21 -10
  6. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/1D_non_stationary_Fisher_KPP_Bounded_Domain.ipynb +3 -1
  7. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/2D_Heat_inverse_problem.ipynb +3 -1
  8. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/2D_Navier_Stokes_PipeFlow.ipynb +10 -8
  9. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/2D_Navier_Stokes_PipeFlow_Metamodel_hyperpinn.ipynb +6 -3
  10. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/2D_Navier_Stokes_PipeFlow_SoftConstraints.ipynb +9 -5
  11. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/2D_Poisson_inverse_problem.ipynb +3 -1
  12. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/2D_non_stationary_OU.ipynb +3 -3
  13. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/Reaction_Diffusion_2D_heterogenous_model.ipynb +7 -7
  14. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/Reaction_Diffusion_2D_homogeneous_metamodel_hyperpinn_diffrax.ipynb +2 -2
  15. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/Tutorials/1D_non_stationary_Burgers_JointEstimation_Vanilla.ipynb +2 -3
  16. jinns-1.7.0/Notebooks/Tutorials/GLV_JointEstimation_Alternate.ipynb +2380 -0
  17. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/Tutorials/implementing_your_own_PDE_problem.ipynb +22 -11
  18. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/Tutorials/introducing_validation_loss.ipynb +3 -1
  19. jinns-1.7.0/Notebooks/Tutorials/utils_GLV_JointEstimation_Alternate.py +148 -0
  20. {jinns-1.6.1 → jinns-1.7.0}/PKG-INFO +16 -14
  21. {jinns-1.6.1 → jinns-1.7.0}/README.md +4 -5
  22. jinns-1.7.0/docs/api/solver.md +15 -0
  23. {jinns-1.6.1 → jinns-1.7.0}/docs/changelog.md +4 -0
  24. {jinns-1.6.1 → jinns-1.7.0}/docs/index.md +2 -2
  25. jinns-1.7.0/img/jinns-diagram.png +0 -0
  26. {jinns-1.6.1 → jinns-1.7.0}/jinns/__init__.py +2 -1
  27. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_LossODE.py +39 -12
  28. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_LossPDE.py +67 -31
  29. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_abstract_loss.py +33 -8
  30. {jinns-1.6.1 → jinns-1.7.0}/jinns/parameters/_derivative_keys.py +13 -6
  31. {jinns-1.6.1 → jinns-1.7.0}/jinns/parameters/_params.py +10 -0
  32. {jinns-1.6.1 → jinns-1.7.0}/jinns/solver/_solve.py +98 -366
  33. jinns-1.7.0/jinns/solver/_solve_alternate.py +885 -0
  34. jinns-1.7.0/jinns/solver/_utils.py +623 -0
  35. {jinns-1.6.1 → jinns-1.7.0}/jinns/utils/_DictToModuleMeta.py +3 -1
  36. {jinns-1.6.1 → jinns-1.7.0}/jinns/utils/_containers.py +8 -4
  37. {jinns-1.6.1 → jinns-1.7.0}/jinns/utils/_types.py +42 -1
  38. {jinns-1.6.1 → jinns-1.7.0}/jinns.egg-info/PKG-INFO +16 -14
  39. {jinns-1.6.1 → jinns-1.7.0}/jinns.egg-info/SOURCES.txt +4 -0
  40. jinns-1.7.0/jinns.egg-info/requires.txt +15 -0
  41. {jinns-1.6.1 → jinns-1.7.0}/mkdocs.yml +2 -1
  42. {jinns-1.6.1 → jinns-1.7.0}/pyproject.toml +6 -5
  43. {jinns-1.6.1 → jinns-1.7.0}/tests/adaptative_weight_tests/test_loss_weight_update.py +1 -1
  44. jinns-1.7.0/tests/alternate_solver_tests/test_solve_alternate.py +164 -0
  45. {jinns-1.6.1 → jinns-1.7.0}/tests/parameters_tests/test_DerivativeKeysODE.py +45 -2
  46. {jinns-1.6.1 → jinns-1.7.0}/tests/sharding_tests/test_Burgers_x32_multiple_shardings.py +3 -3
  47. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_Burgers_x32.py +1 -1
  48. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_Burgers_x64.py +1 -1
  49. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_Fisher_x32.py +1 -1
  50. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_Fisher_x64.py +1 -1
  51. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_GLV_x32.py +8 -6
  52. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_GLV_x64.py +1 -1
  53. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_NSPipeFlow_x32.py +1 -4
  54. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_NSPipeFlow_x64.py +1 -4
  55. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_OU1D_statio_x32.py +1 -1
  56. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_OU2D_x32.py +1 -1
  57. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_nan_params_catch.py +4 -2
  58. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_parameter_tracker.py +20 -9
  59. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests/test_rar_algorithm.py +7 -5
  60. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests_hyperpinn/test_NSPipeFlow_x32_hyperpinn.py +1 -1
  61. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests_spinn/test_Burgers_x32_spinn.py +1 -1
  62. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests_spinn/test_Fisher_x32_spinn.py +1 -1
  63. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests_spinn/test_NSPipeFlow_x32_spinn.py +1 -4
  64. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests_spinn/test_OU2D_x32_spinn.py +1 -2
  65. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests_spinn/test_ReactionDiffusion_nonhomo_x64_spinn.py +1 -1
  66. {jinns-1.6.1 → jinns-1.7.0}/tests/validation_tests/test_vanilla_validation.py +2 -1
  67. jinns-1.6.1/.pre-commit-config.yaml +0 -11
  68. jinns-1.6.1/Notebooks/ODE/linear_fo_equation.ipynb +0 -539
  69. jinns-1.6.1/docs/api/solver.md +0 -7
  70. jinns-1.6.1/img/jinns-diagram.png +0 -0
  71. jinns-1.6.1/jinns/solver/_utils.py +0 -120
  72. jinns-1.6.1/jinns.egg-info/requires.txt +0 -12
  73. {jinns-1.6.1 → jinns-1.7.0}/.gitignore +0 -0
  74. {jinns-1.6.1 → jinns-1.7.0}/.gitlab-ci.yml +0 -0
  75. {jinns-1.6.1 → jinns-1.7.0}/AUTHORS +0 -0
  76. {jinns-1.6.1 → jinns-1.7.0}/LICENSE +0 -0
  77. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/ODE/MS_model_Verhulst.ipynb +0 -0
  78. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/ODE/sbinn_data/glucose.dat +0 -0
  79. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/ODE/sbinn_data/meal.dat +0 -0
  80. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/2d_nonstatio_ou_standardsampling.png +0 -0
  81. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/PDE/OU_1D_nonstatio_solution_grid.npy +0 -0
  82. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/Tutorials/burgers_solution_grid.npy +0 -0
  83. {jinns-1.6.1 → jinns-1.7.0}/Notebooks/Tutorials/load_save_model.ipynb +0 -0
  84. {jinns-1.6.1 → jinns-1.7.0}/codemeta.json +0 -0
  85. {jinns-1.6.1 → jinns-1.7.0}/docs/README.md +0 -0
  86. {jinns-1.6.1 → jinns-1.7.0}/docs/_static/custom_css.css +0 -0
  87. {jinns-1.6.1 → jinns-1.7.0}/docs/_static/favicon.png +0 -0
  88. {jinns-1.6.1 → jinns-1.7.0}/docs/api/advanced/derivative_keys.md +0 -0
  89. {jinns-1.6.1 → jinns-1.7.0}/docs/api/advanced/differential_operators.md +0 -0
  90. {jinns-1.6.1 → jinns-1.7.0}/docs/api/advanced/loss_weight_updates.md +0 -0
  91. {jinns-1.6.1 → jinns-1.7.0}/docs/api/datagenerators/datagenerators_core.md +0 -0
  92. {jinns-1.6.1 → jinns-1.7.0}/docs/api/datagenerators/datagenerators_other.md +0 -0
  93. {jinns-1.6.1 → jinns-1.7.0}/docs/api/loss/dynamic_loss.md +0 -0
  94. {jinns-1.6.1 → jinns-1.7.0}/docs/api/loss/loss_weights.md +0 -0
  95. {jinns-1.6.1 → jinns-1.7.0}/docs/api/loss/loss_xde.md +0 -0
  96. {jinns-1.6.1 → jinns-1.7.0}/docs/api/pinn/hyperpinn.md +0 -0
  97. {jinns-1.6.1 → jinns-1.7.0}/docs/api/pinn/pinn.md +0 -0
  98. {jinns-1.6.1 → jinns-1.7.0}/docs/api/pinn/ppinn.md +0 -0
  99. {jinns-1.6.1 → jinns-1.7.0}/docs/api/pinn/save_load.md +0 -0
  100. {jinns-1.6.1 → jinns-1.7.0}/docs/api/pinn/spinn.md +0 -0
  101. {jinns-1.6.1 → jinns-1.7.0}/docs/api/plot.md +0 -0
  102. {jinns-1.6.1 → jinns-1.7.0}/docs/doc_requirements.txt +0 -0
  103. {jinns-1.6.1 → jinns-1.7.0}/docs/javascripts/katex.js +0 -0
  104. {jinns-1.6.1 → jinns-1.7.0}/docs/maths/fokker_planck.md +0 -0
  105. {jinns-1.6.1 → jinns-1.7.0}/docs/maths/introduction_to_pinns.md +0 -0
  106. {jinns-1.6.1 → jinns-1.7.0}/jinns/data/_AbstractDataGenerator.py +0 -0
  107. {jinns-1.6.1 → jinns-1.7.0}/jinns/data/_Batchs.py +0 -0
  108. {jinns-1.6.1 → jinns-1.7.0}/jinns/data/_CubicMeshPDENonStatio.py +0 -0
  109. {jinns-1.6.1 → jinns-1.7.0}/jinns/data/_CubicMeshPDEStatio.py +0 -0
  110. {jinns-1.6.1 → jinns-1.7.0}/jinns/data/_DataGeneratorODE.py +0 -0
  111. {jinns-1.6.1 → jinns-1.7.0}/jinns/data/_DataGeneratorObservations.py +0 -0
  112. {jinns-1.6.1 → jinns-1.7.0}/jinns/data/_DataGeneratorParameter.py +0 -0
  113. {jinns-1.6.1 → jinns-1.7.0}/jinns/data/__init__.py +0 -0
  114. {jinns-1.6.1 → jinns-1.7.0}/jinns/data/_utils.py +0 -0
  115. {jinns-1.6.1 → jinns-1.7.0}/jinns/experimental/__init__.py +0 -0
  116. {jinns-1.6.1 → jinns-1.7.0}/jinns/experimental/_diffrax_solver.py +0 -0
  117. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_DynamicLoss.py +0 -0
  118. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_DynamicLossAbstract.py +0 -0
  119. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/__init__.py +0 -0
  120. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_boundary_conditions.py +0 -0
  121. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_loss_components.py +0 -0
  122. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_loss_utils.py +0 -0
  123. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_loss_weight_updates.py +0 -0
  124. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_loss_weights.py +0 -0
  125. {jinns-1.6.1 → jinns-1.7.0}/jinns/loss/_operators.py +0 -0
  126. {jinns-1.6.1 → jinns-1.7.0}/jinns/nn/__init__.py +0 -0
  127. {jinns-1.6.1 → jinns-1.7.0}/jinns/nn/_abstract_pinn.py +0 -0
  128. {jinns-1.6.1 → jinns-1.7.0}/jinns/nn/_hyperpinn.py +0 -0
  129. {jinns-1.6.1 → jinns-1.7.0}/jinns/nn/_mlp.py +0 -0
  130. {jinns-1.6.1 → jinns-1.7.0}/jinns/nn/_pinn.py +0 -0
  131. {jinns-1.6.1 → jinns-1.7.0}/jinns/nn/_ppinn.py +0 -0
  132. {jinns-1.6.1 → jinns-1.7.0}/jinns/nn/_save_load.py +0 -0
  133. {jinns-1.6.1 → jinns-1.7.0}/jinns/nn/_spinn.py +0 -0
  134. {jinns-1.6.1 → jinns-1.7.0}/jinns/nn/_spinn_mlp.py +0 -0
  135. {jinns-1.6.1 → jinns-1.7.0}/jinns/nn/_utils.py +0 -0
  136. {jinns-1.6.1 → jinns-1.7.0}/jinns/parameters/__init__.py +0 -0
  137. {jinns-1.6.1 → jinns-1.7.0}/jinns/plot/__init__.py +0 -0
  138. {jinns-1.6.1 → jinns-1.7.0}/jinns/plot/_plot.py +0 -0
  139. {jinns-1.6.1 → jinns-1.7.0}/jinns/solver/__init__.py +0 -0
  140. {jinns-1.6.1 → jinns-1.7.0}/jinns/solver/_rar.py +0 -0
  141. {jinns-1.6.1 → jinns-1.7.0}/jinns/utils/_ItemizableModule.py +0 -0
  142. {jinns-1.6.1 → jinns-1.7.0}/jinns/utils/__init__.py +0 -0
  143. {jinns-1.6.1 → jinns-1.7.0}/jinns/utils/_utils.py +0 -0
  144. {jinns-1.6.1 → jinns-1.7.0}/jinns/validation/__init__.py +0 -0
  145. {jinns-1.6.1 → jinns-1.7.0}/jinns/validation/_validation.py +0 -0
  146. {jinns-1.6.1 → jinns-1.7.0}/jinns.egg-info/dependency_links.txt +0 -0
  147. {jinns-1.6.1 → jinns-1.7.0}/jinns.egg-info/top_level.txt +0 -0
  148. {jinns-1.6.1 → jinns-1.7.0}/setup.cfg +0 -0
  149. {jinns-1.6.1 → jinns-1.7.0}/tests/adaptative_weight_tests/test_ReLoBRaLo_update.py +0 -0
  150. {jinns-1.6.1 → jinns-1.7.0}/tests/adaptative_weight_tests/test_lr_annealing.py +0 -0
  151. {jinns-1.6.1 → jinns-1.7.0}/tests/adaptative_weight_tests/test_soft_adapt.py +0 -0
  152. {jinns-1.6.1 → jinns-1.7.0}/tests/conftest.py +0 -0
  153. {jinns-1.6.1 → jinns-1.7.0}/tests/dataGenerator_tests/test_CubicMeshPDENonStatio.py +0 -0
  154. {jinns-1.6.1 → jinns-1.7.0}/tests/dataGenerator_tests/test_CubicMeshPDEStatio.py +0 -0
  155. {jinns-1.6.1 → jinns-1.7.0}/tests/dataGenerator_tests/test_DataGeneratorODE.py +0 -0
  156. {jinns-1.6.1 → jinns-1.7.0}/tests/dataGenerator_tests/test_DataGeneratorParameter.py +0 -0
  157. {jinns-1.6.1 → jinns-1.7.0}/tests/dataGenerator_tests/test_sobol_method.py +0 -0
  158. {jinns-1.6.1 → jinns-1.7.0}/tests/loss_tests/test_lossODE.py +0 -0
  159. {jinns-1.6.1 → jinns-1.7.0}/tests/loss_tests/test_lossPDEnonstatio.py +0 -0
  160. {jinns-1.6.1 → jinns-1.7.0}/tests/loss_tests/test_lossPDEstatio.py +0 -0
  161. {jinns-1.6.1 → jinns-1.7.0}/tests/loss_tests/test_norm_loss.py +0 -0
  162. {jinns-1.6.1 → jinns-1.7.0}/tests/nn_tests/test_hyperpinns.py +0 -0
  163. {jinns-1.6.1 → jinns-1.7.0}/tests/nn_tests/test_mlp.py +0 -0
  164. {jinns-1.6.1 → jinns-1.7.0}/tests/nn_tests/test_pinn.py +0 -0
  165. {jinns-1.6.1 → jinns-1.7.0}/tests/nn_tests/test_ppinn_mlp.py +0 -0
  166. {jinns-1.6.1 → jinns-1.7.0}/tests/nn_tests/test_smlp.py +0 -0
  167. {jinns-1.6.1 → jinns-1.7.0}/tests/nn_tests/test_spinn.py +0 -0
  168. {jinns-1.6.1 → jinns-1.7.0}/tests/operator_tests/test_divergence_fwd.py +0 -0
  169. {jinns-1.6.1 → jinns-1.7.0}/tests/operator_tests/test_divergence_rev.py +0 -0
  170. {jinns-1.6.1 → jinns-1.7.0}/tests/operator_tests/test_laplacian_fwd.py +0 -0
  171. {jinns-1.6.1 → jinns-1.7.0}/tests/operator_tests/test_laplacian_rev.py +0 -0
  172. {jinns-1.6.1 → jinns-1.7.0}/tests/operator_tests/test_vectorial_laplacian_fwd.py +0 -0
  173. {jinns-1.6.1 → jinns-1.7.0}/tests/operator_tests/test_vectorial_laplacian_rev.py +0 -0
  174. {jinns-1.6.1 → jinns-1.7.0}/tests/parameters_tests/test_params.py +0 -0
  175. {jinns-1.6.1 → jinns-1.7.0}/tests/plot_tests/test_plot1D.py +0 -0
  176. {jinns-1.6.1 → jinns-1.7.0}/tests/plot_tests/test_plot2D.py +0 -0
  177. {jinns-1.6.1 → jinns-1.7.0}/tests/pytest.ini +0 -0
  178. {jinns-1.6.1 → jinns-1.7.0}/tests/save_load_tests/test_saving_loading_hyperpinn.py +0 -0
  179. {jinns-1.6.1 → jinns-1.7.0}/tests/save_load_tests/test_saving_loading_pinn.py +0 -0
  180. {jinns-1.6.1 → jinns-1.7.0}/tests/save_load_tests/test_saving_loading_spinn.py +0 -0
  181. {jinns-1.6.1 → jinns-1.7.0}/tests/solver_tests_inverse/test_simple_inverse_pb.py +0 -0
  182. {jinns-1.6.1 → jinns-1.7.0}/tests/utils_tests/test_solver_utils.py +0 -0
  183. {jinns-1.6.1 → jinns-1.7.0}/tests/utils_tests/test_subtract_with_check.py +0 -0
@@ -0,0 +1,25 @@
1
+ default_stages: [pre-commit]
2
+ repos:
3
+ - repo: https://github.com/astral-sh/ruff-pre-commit
4
+ # Ruff version.
5
+ rev: v0.11.8
6
+ hooks:
7
+ # Run the linter.
8
+ - id: ruff
9
+ args: [ --fix ]
10
+ # Run the formatter.
11
+ - id: ruff-format
12
+ - repo: local
13
+ hooks:
14
+ - id: pylint
15
+ name: pylint
16
+ entry: pylint
17
+ language: system
18
+ types: [python]
19
+ require_serial: true
20
+ args:
21
+ [
22
+ "-rn", # Only display messages
23
+ "-sn", # Don't display the score
24
+ "--errors-only",
25
+ ]
@@ -343,7 +343,7 @@
343
343
  " u=u,\n",
344
344
  " loss_weights=loss_weights,\n",
345
345
  " dynamic_loss=dynamic_loss,\n",
346
- " initial_condition=(float(tmin), jnp.array([N_0[0], N_0[1], N_0[2]])),\n",
346
+ " initial_condition=(tmin, y0),\n",
347
347
  " params=init_params,\n",
348
348
  ")"
349
349
  ]
@@ -497,8 +497,10 @@
497
497
  }
498
498
  ],
499
499
  "source": [
500
- "params, total_loss_list, loss_by_term_dict, data, loss, _, _, _, _, _ = jinns.solve(\n",
501
- " init_params=params, data=train_data, optimizer=tx, loss=loss, n_iter=n_iter\n",
500
+ "params, total_loss_list, loss_by_term_dict, data, loss, _, _, _, _, _, _, _ = (\n",
501
+ " jinns.solve(\n",
502
+ " init_params=params, data=train_data, optimizer=tx, loss=loss, n_iter=n_iter\n",
503
+ " )\n",
502
504
  ")"
503
505
  ]
504
506
  },
@@ -773,7 +775,7 @@
773
775
  "name": "python",
774
776
  "nbconvert_exporter": "python",
775
777
  "pygments_lexer": "ipython3",
776
- "version": "3.11.11"
778
+ "version": "3.11.14"
777
779
  },
778
780
  "vscode": {
779
781
  "interpreter": {