capytaine 2.3__cp310-cp310-macosx_14_0_arm64.whl → 3.0.0a1__cp310-cp310-macosx_14_0_arm64.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.
- capytaine/.dylibs/libgcc_s.1.1.dylib +0 -0
- capytaine/.dylibs/libgfortran.5.dylib +0 -0
- capytaine/.dylibs/libquadmath.0.dylib +0 -0
- capytaine/__about__.py +7 -2
- capytaine/__init__.py +8 -12
- capytaine/bem/engines.py +234 -354
- capytaine/bem/problems_and_results.py +30 -21
- capytaine/bem/solver.py +205 -81
- capytaine/bodies/bodies.py +279 -862
- capytaine/bodies/dofs.py +136 -9
- capytaine/bodies/hydrostatics.py +540 -0
- capytaine/bodies/multibodies.py +216 -0
- capytaine/green_functions/{libs/Delhommeau_float32.cpython-310-darwin.so → Delhommeau_float32.cpython-310-darwin.so} +0 -0
- capytaine/green_functions/{libs/Delhommeau_float64.cpython-310-darwin.so → Delhommeau_float64.cpython-310-darwin.so} +0 -0
- capytaine/green_functions/abstract_green_function.py +2 -2
- capytaine/green_functions/delhommeau.py +50 -31
- capytaine/green_functions/hams.py +19 -13
- capytaine/io/legacy.py +3 -103
- capytaine/io/xarray.py +15 -10
- capytaine/meshes/__init__.py +2 -6
- capytaine/meshes/abstract_meshes.py +375 -0
- capytaine/meshes/clean.py +302 -0
- capytaine/meshes/clip.py +347 -0
- capytaine/meshes/export.py +89 -0
- capytaine/meshes/geometry.py +244 -394
- capytaine/meshes/io.py +433 -0
- capytaine/meshes/meshes.py +621 -676
- capytaine/meshes/predefined/cylinders.py +22 -56
- capytaine/meshes/predefined/rectangles.py +26 -85
- capytaine/meshes/predefined/spheres.py +4 -11
- capytaine/meshes/quality.py +118 -407
- capytaine/meshes/surface_integrals.py +48 -29
- capytaine/meshes/symmetric_meshes.py +641 -0
- capytaine/meshes/visualization.py +353 -0
- capytaine/post_pro/free_surfaces.py +1 -4
- capytaine/post_pro/kochin.py +10 -10
- capytaine/tools/block_circulant_matrices.py +275 -0
- capytaine/tools/lists_of_points.py +2 -2
- capytaine/tools/memory_monitor.py +45 -0
- capytaine/tools/symbolic_multiplication.py +31 -5
- capytaine/tools/timer.py +68 -42
- {capytaine-2.3.dist-info → capytaine-3.0.0a1.dist-info}/METADATA +8 -14
- capytaine-3.0.0a1.dist-info/RECORD +65 -0
- capytaine-3.0.0a1.dist-info/WHEEL +6 -0
- capytaine/bodies/predefined/__init__.py +0 -6
- capytaine/bodies/predefined/cylinders.py +0 -151
- capytaine/bodies/predefined/rectangles.py +0 -111
- capytaine/bodies/predefined/spheres.py +0 -70
- capytaine/green_functions/FinGreen3D/.gitignore +0 -1
- capytaine/green_functions/FinGreen3D/FinGreen3D.f90 +0 -3589
- capytaine/green_functions/FinGreen3D/LICENSE +0 -165
- capytaine/green_functions/FinGreen3D/Makefile +0 -16
- capytaine/green_functions/FinGreen3D/README.md +0 -24
- capytaine/green_functions/FinGreen3D/test_program.f90 +0 -39
- capytaine/green_functions/LiangWuNoblesse/.gitignore +0 -1
- capytaine/green_functions/LiangWuNoblesse/LICENSE +0 -504
- capytaine/green_functions/LiangWuNoblesse/LiangWuNoblesseWaveTerm.f90 +0 -751
- capytaine/green_functions/LiangWuNoblesse/Makefile +0 -18
- capytaine/green_functions/LiangWuNoblesse/README.md +0 -2
- capytaine/green_functions/LiangWuNoblesse/test_program.f90 +0 -28
- capytaine/green_functions/libs/__init__.py +0 -0
- capytaine/io/mesh_loaders.py +0 -1086
- capytaine/io/mesh_writers.py +0 -692
- capytaine/io/meshio.py +0 -38
- capytaine/matrices/__init__.py +0 -16
- capytaine/matrices/block.py +0 -592
- capytaine/matrices/block_toeplitz.py +0 -325
- capytaine/matrices/builders.py +0 -89
- capytaine/matrices/linear_solvers.py +0 -232
- capytaine/matrices/low_rank.py +0 -395
- capytaine/meshes/clipper.py +0 -465
- capytaine/meshes/collections.py +0 -334
- capytaine/meshes/mesh_like_protocol.py +0 -37
- capytaine/meshes/properties.py +0 -276
- capytaine/meshes/quadratures.py +0 -80
- capytaine/meshes/symmetric.py +0 -392
- capytaine/tools/lru_cache.py +0 -49
- capytaine/ui/vtk/__init__.py +0 -3
- capytaine/ui/vtk/animation.py +0 -329
- capytaine/ui/vtk/body_viewer.py +0 -28
- capytaine/ui/vtk/helpers.py +0 -82
- capytaine/ui/vtk/mesh_viewer.py +0 -461
- capytaine-2.3.dist-info/RECORD +0 -92
- capytaine-2.3.dist-info/WHEEL +0 -4
- {capytaine-2.3.dist-info → capytaine-3.0.0a1.dist-info}/LICENSE +0 -0
- {capytaine-2.3.dist-info → capytaine-3.0.0a1.dist-info}/entry_points.txt +0 -0
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"""Generate spherical bodies."""
|
|
2
|
-
# Copyright (C) 2017-2022 Matthieu Ancellin
|
|
3
|
-
# See LICENSE file at <https://github.com/capytaine/capytaine>
|
|
4
|
-
|
|
5
|
-
import logging
|
|
6
|
-
|
|
7
|
-
import numpy as np
|
|
8
|
-
|
|
9
|
-
from capytaine.meshes import Mesh
|
|
10
|
-
from capytaine.meshes.predefined import mesh_sphere
|
|
11
|
-
from capytaine.bodies.bodies import FloatingBody
|
|
12
|
-
|
|
13
|
-
LOG = logging.getLogger(__name__)
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
class Sphere(FloatingBody):
|
|
17
|
-
"""Sphere
|
|
18
|
-
Deprecated: please prefer capytaine.meshes.predefined.mesh_sphere()
|
|
19
|
-
|
|
20
|
-
Parameters
|
|
21
|
-
----------
|
|
22
|
-
radius : float
|
|
23
|
-
radius of the sphere
|
|
24
|
-
center : 3-ple or array of shape (3,)
|
|
25
|
-
position of the geometric center of the sphere
|
|
26
|
-
ntheta : int
|
|
27
|
-
number of panels along a meridian (or number of parallels-1)
|
|
28
|
-
nphi : int
|
|
29
|
-
number of panels along a parallel (or number of meridians-1)
|
|
30
|
-
axial_symmetry : bool
|
|
31
|
-
if True, use the axial symmetry to build the mesh (default: True)
|
|
32
|
-
clip_free_surface : bool
|
|
33
|
-
if True, only mesh the part of the sphere where z < 0 (default: False),
|
|
34
|
-
can be used with center to obtain any clipped sphere,
|
|
35
|
-
if True, then ntheta is the number of parallel below the free surface.
|
|
36
|
-
name : string
|
|
37
|
-
a name identifying the sphere (default: "sphere_id" where id is an unique integer).
|
|
38
|
-
"""
|
|
39
|
-
|
|
40
|
-
def __init__(self, *, radius=1.0, center=(0, 0, 0),
|
|
41
|
-
ntheta=10, nphi=10, clip_free_surface=False,
|
|
42
|
-
axial_symmetry=True, clever=None,
|
|
43
|
-
name=None):
|
|
44
|
-
|
|
45
|
-
LOG.warning("Deprecation warning: The class Sphere() is deprecated. "
|
|
46
|
-
"Please prefer the function capytaine.meshes.predefined.mesh_sphere()")
|
|
47
|
-
|
|
48
|
-
if clever is not None:
|
|
49
|
-
LOG.warning("Deprecation warning: `clever` argument for Sphere is deprecated. "
|
|
50
|
-
"Use `axial_symmetry` instead.")
|
|
51
|
-
|
|
52
|
-
if name is None:
|
|
53
|
-
name = f"sphere_{next(Mesh._ids)}"
|
|
54
|
-
|
|
55
|
-
if clip_free_surface:
|
|
56
|
-
if center[2] < -radius: # fully immersed
|
|
57
|
-
pass
|
|
58
|
-
elif center[2] < radius:
|
|
59
|
-
ntheta = int(ntheta*np.pi/np.arccos(center[2]/radius))
|
|
60
|
-
else:
|
|
61
|
-
raise ValueError("Impossible to mesh the immersed hull of a sphere completely out of the water")
|
|
62
|
-
|
|
63
|
-
mesh = mesh_sphere(radius=radius, center=center, resolution=(ntheta, nphi), axial_symmetry=axial_symmetry, name=f"{name}_mesh")
|
|
64
|
-
|
|
65
|
-
if clip_free_surface:
|
|
66
|
-
mesh.keep_immersed_part()
|
|
67
|
-
|
|
68
|
-
self.radius = radius
|
|
69
|
-
self.geometric_center = np.array(center, dtype=float)
|
|
70
|
-
FloatingBody.__init__(self, mesh=mesh, name=name)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
build/
|