capytaine 2.1__tar.gz → 2.2.1__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 (238) hide show
  1. {capytaine-2.1 → capytaine-2.2.1}/.github/workflows/build_docs.yml +7 -0
  2. capytaine-2.2.1/.github/workflows/build_wheels.yaml +64 -0
  3. capytaine-2.2.1/.github/workflows/test_new_commits.yaml +75 -0
  4. {capytaine-2.1 → capytaine-2.2.1}/.github/workflows/test_with_latest_dependencies.yaml +2 -2
  5. {capytaine-2.1 → capytaine-2.2.1}/.pre-commit-config.yaml +1 -1
  6. {capytaine-2.1 → capytaine-2.2.1}/Makefile +2 -2
  7. capytaine-2.2.1/PKG-INFO +754 -0
  8. {capytaine-2.1 → capytaine-2.2.1}/README.md +2 -0
  9. {capytaine-2.1 → capytaine-2.2.1}/capytaine/__about__.py +1 -1
  10. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bem/engines.py +2 -2
  11. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bem/problems_and_results.py +17 -9
  12. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bem/solver.py +71 -28
  13. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bodies/bodies.py +133 -24
  14. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/delhommeau.py +103 -51
  15. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/Makefile +1 -1
  16. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/benchmarks/openmp/benchmark_omp.f90 +15 -7
  17. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/benchmarks/profiling/benchmark_profiling.f90 +40 -32
  18. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/benchmarks/tabulations/benchmark_tabulation.f90 +15 -12
  19. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/examples/minimal/minimal_example.f90 +24 -14
  20. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/src/Delhommeau_integrals.f90 +142 -141
  21. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/src/Green_Rankine.f90 +2 -2
  22. capytaine-2.2.1/capytaine/green_functions/libDelhommeau/src/Green_wave.f90 +402 -0
  23. capytaine-2.2.1/capytaine/green_functions/libDelhommeau/src/constants.f90 +45 -0
  24. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/src/float32.f90 +3 -0
  25. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/src/float64.f90 +3 -0
  26. capytaine-2.2.1/capytaine/green_functions/libDelhommeau/src/matrices.f90 +302 -0
  27. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/src/old_Prony_decomposition.f90 +3 -2
  28. {capytaine-2.1 → capytaine-2.2.1}/capytaine/io/mesh_loaders.py +49 -24
  29. {capytaine-2.1 → capytaine-2.2.1}/capytaine/io/meshio.py +4 -1
  30. {capytaine-2.1 → capytaine-2.2.1}/capytaine/io/xarray.py +17 -7
  31. {capytaine-2.1 → capytaine-2.2.1}/capytaine/matrices/block.py +4 -2
  32. {capytaine-2.1 → capytaine-2.2.1}/capytaine/matrices/linear_solvers.py +2 -3
  33. {capytaine-2.1 → capytaine-2.2.1}/capytaine/matrices/low_rank.py +3 -1
  34. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/clipper.py +3 -3
  35. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/collections.py +13 -2
  36. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/meshes.py +128 -4
  37. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/predefined/cylinders.py +2 -2
  38. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/properties.py +77 -0
  39. {capytaine-2.1 → capytaine-2.2.1}/capytaine/post_pro/rao.py +1 -1
  40. {capytaine-2.1 → capytaine-2.2.1}/capytaine/tools/cache_on_disk.py +3 -1
  41. {capytaine-2.1 → capytaine-2.2.1}/capytaine/tools/symbolic_multiplication.py +23 -4
  42. {capytaine-2.1 → capytaine-2.2.1}/capytaine/ui/vtk/body_viewer.py +2 -0
  43. capytaine-2.2.1/code_of_conduct.md +133 -0
  44. capytaine-2.2.1/docs/_templates/layout.html +10 -0
  45. {capytaine-2.1 → capytaine-2.2.1}/docs/changelog.rst +126 -13
  46. {capytaine-2.1 → capytaine-2.2.1}/docs/conf.py +18 -62
  47. {capytaine-2.1 → capytaine-2.2.1}/docs/developer_manual/installation.rst +3 -0
  48. capytaine-2.2.1/docs/developer_manual/overview.rst +143 -0
  49. {capytaine-2.1 → capytaine-2.2.1}/docs/features.rst +1 -0
  50. {capytaine-2.1 → capytaine-2.2.1}/docs/index.rst +3 -1
  51. {capytaine-2.1 → capytaine-2.2.1}/docs/theory_manual/theory.rst +145 -59
  52. capytaine-2.2.1/docs/user_manual/body.rst +166 -0
  53. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/cookbook.rst +14 -8
  54. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/compare_Green_functions.py +6 -6
  55. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/convergence_study.py +1 -1
  56. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/haskind.py +1 -1
  57. capytaine-2.2.1/docs/user_manual/examples/irregular_frequency_removal.py +76 -0
  58. capytaine-2.2.1/docs/user_manual/examples/pressure_on_hull.py +15 -0
  59. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/index.rst +1 -0
  60. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/installation.rst +32 -50
  61. capytaine-2.2.1/docs/user_manual/mesh.rst +396 -0
  62. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/outputs.rst +115 -4
  63. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/resolution.rst +36 -16
  64. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/tutorial.rst +26 -23
  65. capytaine-2.2.1/editable_install_requirements.txt +12 -0
  66. {capytaine-2.1 → capytaine-2.2.1}/meson.build +3 -30
  67. capytaine-2.2.1/noxfile.py +104 -0
  68. {capytaine-2.1 → capytaine-2.2.1}/pyproject.toml +12 -5
  69. capytaine-2.2.1/pytest/envs/2023-08-01-py3.8.txt +92 -0
  70. capytaine-2.2.1/pytest/envs/2024-04-08-py3.12.txt +80 -0
  71. capytaine-2.2.1/pytest/envs/2024-10-22-py3.12.txt +81 -0
  72. capytaine-2.2.1/pytest/mesh_files_examples/cylinder2.msh +143 -0
  73. capytaine-2.2.1/pytest/mesh_files_examples/cylinder4.msh +277 -0
  74. capytaine-2.2.1/pytest/test_bem_engines.py +55 -0
  75. capytaine-2.2.1/pytest/test_bem_green_function_fortran_core.py +217 -0
  76. capytaine-2.1/pytest/test_bem_engines.py → capytaine-2.2.1/pytest/test_bem_green_function_matrix_shape.py +7 -61
  77. capytaine-2.2.1/pytest/test_bem_green_function_table_density.py +140 -0
  78. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_bem_hierarchical_toeplitz_matrices.py +0 -2
  79. capytaine-2.2.1/pytest/test_bem_irregular_frequencies_removal.py +225 -0
  80. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_bem_linear_combination_of_dofs.py +3 -3
  81. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_bem_potential_velocity_and_free_surface_elevation.py +0 -3
  82. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_bem_problems_and_results.py +22 -2
  83. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_bem_solver.py +23 -55
  84. capytaine-2.2.1/pytest/test_bem_zero_and_infinite_freq.py +99 -0
  85. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_bodies.py +37 -46
  86. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_bodies_predefined.py +11 -14
  87. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_consistency_with_Nemoh_2.py +7 -6
  88. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_forward_speed.py +6 -5
  89. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_hydrostatics.py +0 -2
  90. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_io.py +4 -4
  91. capytaine-2.2.1/pytest/test_io_meshes.py +134 -0
  92. capytaine-2.2.1/pytest/test_io_meshes_gdf.py +146 -0
  93. capytaine-2.2.1/pytest/test_io_meshes_hst.py +169 -0
  94. capytaine-2.2.1/pytest/test_io_meshes_mar.py +53 -0
  95. capytaine-2.2.1/pytest/test_io_meshes_pnl.py +164 -0
  96. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_matrices.py +0 -3
  97. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_meshes.py +152 -34
  98. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_meshes_collections_and_symmetries.py +32 -31
  99. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_meshes_geometry.py +0 -2
  100. capytaine-2.2.1/pytest/test_meshes_lid_generation.py +111 -0
  101. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_meshes_predefined.py +7 -3
  102. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_post_pro_kochin.py +0 -2
  103. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_tool_symbolic_multiplication.py +4 -0
  104. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_ui_matplotlib.py +0 -2
  105. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_ui_vtk.py +0 -3
  106. capytaine-2.1/.github/workflows/build_wheels.yaml +0 -45
  107. capytaine-2.1/.github/workflows/test_new_commits.yaml +0 -44
  108. capytaine-2.1/Dockerfile +0 -13
  109. capytaine-2.1/PKG-INFO +0 -756
  110. capytaine-2.1/capytaine/green_functions/libDelhommeau/src/Green_wave.f90 +0 -311
  111. capytaine-2.1/capytaine/green_functions/libDelhommeau/src/constants.f90 +0 -16
  112. capytaine-2.1/capytaine/green_functions/libDelhommeau/src/matrices.f90 +0 -320
  113. capytaine-2.1/capytaine.scm +0 -61
  114. capytaine-2.1/docs/_templates/layout.html +0 -6
  115. capytaine-2.1/docs/developer_manual/overview.rst +0 -154
  116. capytaine-2.1/docs/user_manual/examples/symmetric_body.py +0 -24
  117. capytaine-2.1/docs/user_manual/mesh.rst +0 -296
  118. capytaine-2.1/noxfile.py +0 -55
  119. capytaine-2.1/pytest/envs/2023-11-07.lock +0 -1132
  120. capytaine-2.1/pytest/test_bem_green_functions.py +0 -140
  121. capytaine-2.1/pytest/test_bem_green_functions_table_density.py +0 -108
  122. capytaine-2.1/pytest/test_io_meshes.py +0 -365
  123. {capytaine-2.1 → capytaine-2.2.1}/.gitignore +0 -0
  124. {capytaine-2.1 → capytaine-2.2.1}/.zenodo.json +0 -0
  125. {capytaine-2.1 → capytaine-2.2.1}/CONTRIBUTING.md +0 -0
  126. {capytaine-2.1 → capytaine-2.2.1}/LICENSE +0 -0
  127. {capytaine-2.1 → capytaine-2.2.1}/capytaine/__init__.py +0 -0
  128. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bem/__init__.py +0 -0
  129. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bem/airy_waves.py +0 -0
  130. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bodies/__init__.py +0 -0
  131. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bodies/dofs.py +0 -0
  132. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bodies/predefined/__init__.py +0 -0
  133. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bodies/predefined/cylinders.py +0 -0
  134. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bodies/predefined/rectangles.py +0 -0
  135. {capytaine-2.1 → capytaine-2.2.1}/capytaine/bodies/predefined/spheres.py +0 -0
  136. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/__init__.py +0 -0
  137. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/abstract_green_function.py +0 -0
  138. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/.gitignore +0 -0
  139. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/LICENSE +0 -0
  140. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/README.md +0 -0
  141. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/benchmarks/openmp/display_mesh.py +0 -0
  142. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/benchmarks/openmp/read_output.py +0 -0
  143. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libDelhommeau/examples/minimal/minimal_example.py +0 -0
  144. {capytaine-2.1 → capytaine-2.2.1}/capytaine/green_functions/libs/__init__.py +0 -0
  145. {capytaine-2.1 → capytaine-2.2.1}/capytaine/io/__init__.py +0 -0
  146. {capytaine-2.1 → capytaine-2.2.1}/capytaine/io/bemio.py +0 -0
  147. {capytaine-2.1 → capytaine-2.2.1}/capytaine/io/legacy.py +0 -0
  148. {capytaine-2.1 → capytaine-2.2.1}/capytaine/io/mesh_writers.py +0 -0
  149. {capytaine-2.1 → capytaine-2.2.1}/capytaine/matrices/__init__.py +0 -0
  150. {capytaine-2.1 → capytaine-2.2.1}/capytaine/matrices/block_toeplitz.py +0 -0
  151. {capytaine-2.1 → capytaine-2.2.1}/capytaine/matrices/builders.py +0 -0
  152. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/__init__.py +0 -0
  153. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/geometry.py +0 -0
  154. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/predefined/__init__.py +0 -0
  155. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/predefined/rectangles.py +0 -0
  156. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/predefined/spheres.py +0 -0
  157. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/quadratures.py +0 -0
  158. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/quality.py +0 -0
  159. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/surface_integrals.py +0 -0
  160. {capytaine-2.1 → capytaine-2.2.1}/capytaine/meshes/symmetric.py +0 -0
  161. {capytaine-2.1 → capytaine-2.2.1}/capytaine/post_pro/__init__.py +0 -0
  162. {capytaine-2.1 → capytaine-2.2.1}/capytaine/post_pro/free_surfaces.py +0 -0
  163. {capytaine-2.1 → capytaine-2.2.1}/capytaine/post_pro/impedance.py +0 -0
  164. {capytaine-2.1 → capytaine-2.2.1}/capytaine/post_pro/kochin.py +0 -0
  165. {capytaine-2.1 → capytaine-2.2.1}/capytaine/tools/__init__.py +0 -0
  166. {capytaine-2.1 → capytaine-2.2.1}/capytaine/tools/deprecation_handling.py +0 -0
  167. {capytaine-2.1 → capytaine-2.2.1}/capytaine/tools/lists_of_points.py +0 -0
  168. {capytaine-2.1 → capytaine-2.2.1}/capytaine/tools/lru_cache.py +0 -0
  169. {capytaine-2.1 → capytaine-2.2.1}/capytaine/tools/optional_imports.py +0 -0
  170. {capytaine-2.1 → capytaine-2.2.1}/capytaine/tools/prony_decomposition.py +0 -0
  171. {capytaine-2.1 → capytaine-2.2.1}/capytaine/ui/__init__.py +0 -0
  172. {capytaine-2.1 → capytaine-2.2.1}/capytaine/ui/cli.py +0 -0
  173. {capytaine-2.1 → capytaine-2.2.1}/capytaine/ui/rich.py +0 -0
  174. {capytaine-2.1 → capytaine-2.2.1}/capytaine/ui/vtk/__init__.py +0 -0
  175. {capytaine-2.1 → capytaine-2.2.1}/capytaine/ui/vtk/animation.py +0 -0
  176. {capytaine-2.1 → capytaine-2.2.1}/capytaine/ui/vtk/helpers.py +0 -0
  177. {capytaine-2.1 → capytaine-2.2.1}/capytaine/ui/vtk/mesh_viewer.py +0 -0
  178. {capytaine-2.1 → capytaine-2.2.1}/docs/Makefile +0 -0
  179. {capytaine-2.1 → capytaine-2.2.1}/docs/_static/custom.css +0 -0
  180. {capytaine-2.1 → capytaine-2.2.1}/docs/_static/proof.css +0 -0
  181. {capytaine-2.1 → capytaine-2.2.1}/docs/_static/proof.js +0 -0
  182. {capytaine-2.1 → capytaine-2.2.1}/docs/citing.rst +0 -0
  183. {capytaine-2.1 → capytaine-2.2.1}/docs/developer_manual/index.rst +0 -0
  184. {capytaine-2.1 → capytaine-2.2.1}/docs/theory_manual/bibliography.rst +0 -0
  185. {capytaine-2.1 → capytaine-2.2.1}/docs/theory_manual/index.rst +0 -0
  186. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/conventions.rst +0 -0
  187. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/Malenica_forward_speed.py +0 -0
  188. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/Nemoh.cal +0 -0
  189. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/animate_free_surface.py +0 -0
  190. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/axisymmetric_buoy.py +0 -0
  191. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/boat_200.mar +0 -0
  192. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/boat_animation.py +0 -0
  193. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/custom_Green_function.py +0 -0
  194. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/custom_dofs.py +0 -0
  195. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/elasticity_of_beam.py +0 -0
  196. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/finite_depth_cylinder.py +0 -0
  197. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/free_surface_elevation.py +0 -0
  198. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/hydrostatics.py +0 -0
  199. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/kochin.py +0 -0
  200. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/multibody.py +0 -0
  201. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/plot_influence_matrix.py +0 -0
  202. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/plot_velocity_in_domain.py +0 -0
  203. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/preconditioner.py +0 -0
  204. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/quickstart.py +0 -0
  205. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/examples/radiation_cylinder.py +0 -0
  206. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/hydrostatics.rst +0 -0
  207. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/post_pro.rst +0 -0
  208. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/problem_setup.rst +0 -0
  209. {capytaine-2.1 → capytaine-2.2.1}/docs/user_manual/quickstart.rst +0 -0
  210. {capytaine-2.1 → capytaine-2.2.1}/pytest/Bemio_verification_cases/sphere.out +0 -0
  211. {capytaine-2.1 → capytaine-2.2.1}/pytest/Hydrostatics_cases/sphere__hor_cyl__ver_cyl.pkl.json +0 -0
  212. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/Cylinder/Cylinder.dat +0 -0
  213. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/Cylinder/Nemoh.cal +0 -0
  214. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/Cylinder/Nemoh_v3.cal +0 -0
  215. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/Cylinder/reference_results/DiffractionForce.tec +0 -0
  216. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/Cylinder/reference_results/ExcitationForce.tec +0 -0
  217. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/Cylinder/reference_results/RadiationCoefficients.tec +0 -0
  218. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/Nemoh.m +0 -0
  219. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/NonSymmetrical/Nemoh.cal +0 -0
  220. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/NonSymmetrical/Nemoh_v3.cal +0 -0
  221. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/NonSymmetrical/NonSymmetrical.dat +0 -0
  222. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/NonSymmetrical/reference_results/DiffractionForce.tec +0 -0
  223. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/NonSymmetrical/reference_results/ExcitationForce.tec +0 -0
  224. {capytaine-2.1 → capytaine-2.2.1}/pytest/Nemoh_verification_cases/NonSymmetrical/reference_results/RadiationCoefficients.tec +0 -0
  225. {capytaine-2.1 → capytaine-2.2.1}/pytest/io_legacy_cases/reference_data/single_body/Hydrostatics.dat +0 -0
  226. {capytaine-2.1 → capytaine-2.2.1}/pytest/io_legacy_cases/reference_data/single_body/KH.dat +0 -0
  227. {capytaine-2.1 → capytaine-2.2.1}/pytest/io_legacy_cases/reference_data/single_body_list/Hydrostatics.dat +0 -0
  228. {capytaine-2.1 → capytaine-2.2.1}/pytest/io_legacy_cases/reference_data/single_body_list/KH.dat +0 -0
  229. {capytaine-2.1 → capytaine-2.2.1}/pytest/io_legacy_cases/reference_data/two_bodies_list/Hydrostatics_0.dat +0 -0
  230. {capytaine-2.1 → capytaine-2.2.1}/pytest/io_legacy_cases/reference_data/two_bodies_list/Hydrostatics_1.dat +0 -0
  231. {capytaine-2.1 → capytaine-2.2.1}/pytest/io_legacy_cases/reference_data/two_bodies_list/KH_0.dat +0 -0
  232. {capytaine-2.1 → capytaine-2.2.1}/pytest/io_legacy_cases/reference_data/two_bodies_list/KH_1.dat +0 -0
  233. {capytaine-2.1 → capytaine-2.2.1}/pytest/mesh_files_examples/barge.med +0 -0
  234. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_airy_waves.py +0 -0
  235. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_bem_with_quadratures.py +0 -0
  236. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_linear_solvers.py +0 -0
  237. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_post_pro.py +0 -0
  238. {capytaine-2.1 → capytaine-2.2.1}/pytest/test_tool_lru_cache.py +0 -0
@@ -14,6 +14,13 @@ on:
14
14
  workflow_dispatch:
15
15
 
16
16
 
17
+ # The following block is meant to cancel the workflow if a newer commit is pushed on the pull request
18
+ # From https://stackoverflow.com/questions/66335225/how-to-cancel-previous-runs-in-the-pr-when-you-push-new-commitsupdate-the-curre
19
+ concurrency:
20
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
21
+ cancel-in-progress: true
22
+
23
+
17
24
  jobs:
18
25
  build:
19
26
 
@@ -0,0 +1,64 @@
1
+ name: Build wheels
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ push:
6
+ tags:
7
+ - v*
8
+ schedule:
9
+ - cron: '6 6 6/16 * *' # On the 6th and 22nd of each month at 6:06
10
+
11
+
12
+ jobs:
13
+ build_wheels:
14
+ name: Build wheels on ${{ matrix.os }}
15
+ runs-on: ${{ matrix.os }}
16
+ strategy:
17
+ matrix:
18
+ os: [ubuntu-20.04, macos-13, macos-14, windows-2019]
19
+ # MacOS<=13 are Intel, while MacOS 14 is Apple Silicon
20
+
21
+ steps:
22
+ - uses: actions/checkout@v4
23
+
24
+ - uses: fortran-lang/setup-fortran@v1
25
+ id: setup-fortran
26
+ with:
27
+ compiler: 'gcc'
28
+ version: '13'
29
+
30
+ - name: Build wheels
31
+ if: matrix.os == 'ubuntu-20.04'
32
+ uses: pypa/cibuildwheel@v2.21.3
33
+ env:
34
+ CIBW_SKIP: "pp* *i686* *musllinux*"
35
+ # As of Sept 2024, Python 3.13 is troublesome because of lack of Pandas for Python 3.13.
36
+
37
+ - name: Build wheels
38
+ if: matrix.os == 'macos-13'
39
+ uses: pypa/cibuildwheel@v2.21.3
40
+ env:
41
+ CIBW_SKIP: "pp*"
42
+ CIBW_ENVIRONMENT: MACOSX_DEPLOYMENT_TARGET=13.0
43
+
44
+ - name: Build wheels
45
+ if: matrix.os == 'macos-14'
46
+ uses: pypa/cibuildwheel@v2.21.3
47
+ env:
48
+ CIBW_SKIP: "pp*"
49
+ CIBW_ENVIRONMENT: MACOSX_DEPLOYMENT_TARGET=14.0
50
+
51
+ - name: Build wheels
52
+ if: matrix.os == 'windows-2019'
53
+ uses: pypa/cibuildwheel@v2.21.3
54
+ env:
55
+ CIBW_SKIP: "pp* *win32*"
56
+ CIBW_BEFORE_BUILD_WINDOWS: pip install delvewheel
57
+ CIBW_REPAIR_WHEEL_COMMAND_WINDOWS: "delvewheel show {wheel} && delvewheel repair -w {dest_dir} {wheel} --no-mangle-all"
58
+ # Package the DLL dependencies in the wheel for windows (done by default for the other platforms).
59
+ # delvewheel cannot mangle the libraries, stripping does not work.
60
+
61
+ - uses: actions/upload-artifact@v4
62
+ with:
63
+ name: wheels-${{ matrix.os }}
64
+ path: ./wheelhouse/*.whl
@@ -0,0 +1,75 @@
1
+ name: Build and test in fixed environments
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - 'master'
7
+ paths-ignore:
8
+ # Do not run if only the documentation has been changed
9
+ - 'docs/**'
10
+ - '**/*.md'
11
+ pull_request:
12
+ paths-ignore:
13
+ # Do not run if only the documentation has been changed
14
+ - 'docs/**'
15
+ - '**/*.md'
16
+
17
+ env:
18
+ FORCE_COLOR: 3
19
+ # Colors for nox
20
+
21
+ # The following block is meant to cancel the workflow if a newer commit is pushed on the pull request
22
+ # From https://stackoverflow.com/questions/66335225/how-to-cancel-previous-runs-in-the-pr-when-you-push-new-commitsupdate-the-curre
23
+ concurrency:
24
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
25
+ cancel-in-progress: true
26
+
27
+ jobs:
28
+ build_and_test:
29
+
30
+ runs-on: ubuntu-latest
31
+
32
+ strategy:
33
+ matrix:
34
+ python-version: ['3.8', '3.12']
35
+
36
+ steps:
37
+
38
+ - name: Checkout repository
39
+ uses: actions/checkout@v4
40
+
41
+ - name: Set up Python ${{ matrix.python-version }}
42
+ uses: actions/setup-python@v5
43
+ with:
44
+ python-version: ${{ matrix.python-version }}
45
+
46
+ - name: Set up nox
47
+ uses: wntrblm/nox@2024.04.15
48
+
49
+ - name: Run nox session
50
+ run: nox --force-python ${{ matrix.python-version }} -s build_and_test_on_locked_env
51
+
52
+ compile_fortran:
53
+
54
+ runs-on: ubuntu-latest
55
+
56
+ steps:
57
+
58
+ - name: Checkout repository
59
+ uses: actions/checkout@v4
60
+
61
+ # # 2024-10-22: disabling this step because it takes a few minutes to
62
+ # download a specific version of GCC, but it is not really required as GCC
63
+ # is already installed on the Ubuntu runner.
64
+ #
65
+ # - name: Set up Fortran
66
+ # uses: fortran-lang/setup-fortran@v1
67
+ # with:
68
+ # compiler: 'gcc'
69
+ # version: '13'
70
+
71
+ - name: Compile and run example
72
+ working-directory: capytaine/green_functions/libDelhommeau/
73
+ run: make example && examples/minimal/minimal_example.bin
74
+ # Soundness of the results is not tested, only that the compiling and
75
+ # execution are succeeding.
@@ -16,7 +16,7 @@ jobs:
16
16
 
17
17
  strategy:
18
18
  matrix:
19
- python-version: ['3.7', '3.12']
19
+ python-version: ['3.8', '3.12']
20
20
 
21
21
  steps:
22
22
 
@@ -32,4 +32,4 @@ jobs:
32
32
  uses: wntrblm/nox@2024.03.02
33
33
 
34
34
  - name: Run nox session
35
- run: nox -s build_and_test_on_latest_env
35
+ run: nox --force-python ${{ matrix.python-version }} -s build_and_test_on_latest_env editable_build_and_test_on_latest_env
@@ -37,4 +37,4 @@ repos:
37
37
  rev: "v2.2.5"
38
38
  hooks:
39
39
  - id: codespell
40
- args: ["-L", "ba,informations,inout,ist,lamda,ment,noe,periode,sur"]
40
+ args: ["-L", "ba,informations,inout,ist,lamda,ment,noe,periode,sur", "--skip", "capytaine/green_functions/libDelhommeau/src/old_Prony_decomposition.f90"]
@@ -2,8 +2,8 @@ install:
2
2
  pip install .
3
3
 
4
4
  develop:
5
- pip install meson-python ninja "numpy>=2.0.0rc1,<2.3" charset-normalizer # No installed from pyproject.toml in this case...
6
- pip install --no-build-isolation -e .
5
+ pip install -r editable_install_requirements.txt
6
+ pip install --no-build-isolation --editable .
7
7
 
8
8
  TEMP_DIR := $(shell mktemp -d)
9
9
  test_fortran_compilation: