voxcity 1.0.13__py3-none-any.whl → 1.0.15__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.
- voxcity/simulator/solar/__init__.py +13 -0
- voxcity/simulator_gpu/__init__.py +73 -98
- voxcity/simulator_gpu/domain.py +30 -256
- voxcity/simulator_gpu/raytracing.py +153 -0
- voxcity/simulator_gpu/solar/__init__.py +45 -1
- voxcity/simulator_gpu/solar/domain.py +57 -0
- voxcity/simulator_gpu/solar/integration.py +1622 -253
- voxcity/simulator_gpu/solar/mask.py +459 -0
- voxcity/simulator_gpu/solar/raytracing.py +28 -532
- voxcity/simulator_gpu/solar/volumetric.py +962 -14
- {voxcity-1.0.13.dist-info → voxcity-1.0.15.dist-info}/METADATA +1 -1
- {voxcity-1.0.13.dist-info → voxcity-1.0.15.dist-info}/RECORD +15 -25
- voxcity/simulator_gpu/common/__init__.py +0 -9
- voxcity/simulator_gpu/common/geometry.py +0 -11
- voxcity/simulator_gpu/environment.yml +0 -11
- voxcity/simulator_gpu/integration.py +0 -15
- voxcity/simulator_gpu/kernels.py +0 -56
- voxcity/simulator_gpu/radiation.py +0 -28
- voxcity/simulator_gpu/sky.py +0 -9
- voxcity/simulator_gpu/solar/voxcity.py +0 -2953
- voxcity/simulator_gpu/temporal.py +0 -13
- voxcity/simulator_gpu/utils.py +0 -25
- voxcity/simulator_gpu/view.py +0 -32
- {voxcity-1.0.13.dist-info → voxcity-1.0.15.dist-info}/WHEEL +0 -0
- {voxcity-1.0.13.dist-info → voxcity-1.0.15.dist-info}/licenses/AUTHORS.rst +0 -0
- {voxcity-1.0.13.dist-info → voxcity-1.0.15.dist-info}/licenses/LICENSE +0 -0
|
@@ -47,7 +47,7 @@ voxcity/simulator/__init__.py,sha256=APdkcdaovj0v_RPOaA4SBvFUKT2RM7Hxuuz3Sux4gCo
|
|
|
47
47
|
voxcity/simulator/common/__init__.py,sha256=Yi5h8DtLFUB8T6TsmDeVxuafjcwzpRXXgsN5nmvJLJk,486
|
|
48
48
|
voxcity/simulator/common/geometry.py,sha256=Zb9nI6q7lPcnX5O9YC-yMwhvYw6QtqxZN468Ikh82yE,3414
|
|
49
49
|
voxcity/simulator/common/raytracing.py,sha256=j9QiI9NIzqkIm8MOipqJCJeFtPWPTYxeAh-wP_lkAek,16343
|
|
50
|
-
voxcity/simulator/solar/__init__.py,sha256=
|
|
50
|
+
voxcity/simulator/solar/__init__.py,sha256=GI0y1TafTRa68uPnqncdc9VSUAM4fqAI3YSL92sgj4w,2350
|
|
51
51
|
voxcity/simulator/solar/integration.py,sha256=W9NfGTpE_OcBulUfw9b3xM68hR8WuMbXi9_80-viufw,13867
|
|
52
52
|
voxcity/simulator/solar/kernels.py,sha256=SLglw8dyIYdG8eN65aQsqTd4PmEuX2tkdwXJgPZ3Y3Q,2158
|
|
53
53
|
voxcity/simulator/solar/radiation.py,sha256=woSTmiDEUrGMGJyDsWr3kWL5wISMUBZuqc0KdoYJblk,22576
|
|
@@ -58,35 +58,25 @@ voxcity/simulator/view.py,sha256=Shqn7rFhhzCEPYHTu8Wg-6uCZ8SNrPCODY4sYzk8MmI,105
|
|
|
58
58
|
voxcity/simulator/visibility/__init__.py,sha256=mpBVeZO3IRJAcEX8fookdDgquBVKvzCRuNMNM4jrD_4,664
|
|
59
59
|
voxcity/simulator/visibility/landmark.py,sha256=E0bpivtjt9oJop0zsvWXE693o-RebU66H_EbLKlPDXk,17542
|
|
60
60
|
voxcity/simulator/visibility/view.py,sha256=w_zPmMxyHdwTURBowX-AhlvHEBjSCUsEpt865-eoBHE,21642
|
|
61
|
-
voxcity/simulator_gpu/__init__.py,sha256=
|
|
62
|
-
voxcity/simulator_gpu/common/__init__.py,sha256=AMnsYL4L1e-cjEvjhX3eKxR-fwrdlNPyw0uq7veEFhk,276
|
|
63
|
-
voxcity/simulator_gpu/common/geometry.py,sha256=DeVM-66OrORW0f7yaeQtQ0YFbDEbHPKPfTtbUUV153c,350
|
|
61
|
+
voxcity/simulator_gpu/__init__.py,sha256=rV7r0Kxmj0zFYOPuBb1bYIJwdWBebEqrWXJzMid1xR0,2654
|
|
64
62
|
voxcity/simulator_gpu/core.py,sha256=u71V1-sOUMfm8MkT38g4-F5Kx0TvWQYCmYemmSeL_QQ,8811
|
|
65
|
-
voxcity/simulator_gpu/domain.py,sha256=
|
|
66
|
-
voxcity/simulator_gpu/environment.yml,sha256=DDuQXIRVt4wKU_tdr8j8zXZXowE5OFRS6irvwPs0cpA,162
|
|
63
|
+
voxcity/simulator_gpu/domain.py,sha256=AxnneTJDyJQwgFqMLZKG08o16_n9Yq8Vy3qHLO5R_1E,804
|
|
67
64
|
voxcity/simulator_gpu/init_taichi.py,sha256=orxyn6Oz4nQyARmXOsv9Jgg8vd5XAknAsSsToa5E2fg,4652
|
|
68
|
-
voxcity/simulator_gpu/
|
|
69
|
-
voxcity/simulator_gpu/
|
|
70
|
-
voxcity/simulator_gpu/radiation.py,sha256=BP8W-EbTrUemNvufRnuVr2La7vfnNMzMjGlIZiDhajY,948
|
|
71
|
-
voxcity/simulator_gpu/raytracing.py,sha256=ljG8IBYk0HGpEHo-bl3YsWa4hSVU04ESKwSGnUKDVIY,19979
|
|
72
|
-
voxcity/simulator_gpu/sky.py,sha256=dcQYA5A-klmMRLQ8N9_5srWzjGViEUx2PULNfub-0xs,330
|
|
73
|
-
voxcity/simulator_gpu/solar/__init__.py,sha256=QvPq1BcnpCDoo2YwsqbmpwHyZOC7S3X0G_vqK-YNBrw,5409
|
|
65
|
+
voxcity/simulator_gpu/raytracing.py,sha256=i3EoDcPchQBlMQNRQpQOlArb-uAES3Pp7Otfklq1tuc,25003
|
|
66
|
+
voxcity/simulator_gpu/solar/__init__.py,sha256=r__R_p6xm8SOQxZw_se9c7bmyKvcLGbYK0PAH08NCo8,6759
|
|
74
67
|
voxcity/simulator_gpu/solar/core.py,sha256=QYWtFoBqgRvmlCn25moOoXv4us4_FiCRbDVi5snHT18,1763
|
|
75
68
|
voxcity/simulator_gpu/solar/csf.py,sha256=9HCPWbmz7HQRWVazHVdG_-CEVTyj7iwW4I444IxPSGs,54340
|
|
76
|
-
voxcity/simulator_gpu/solar/domain.py,sha256=
|
|
69
|
+
voxcity/simulator_gpu/solar/domain.py,sha256=JreJ3CcUUg4ZqNYQ7ytDNwaMmJR4c8rcMKz4Fr1JvrY,22875
|
|
77
70
|
voxcity/simulator_gpu/solar/epw.py,sha256=ZXOHuKvYuhbfr62W6466JRHnl2A_FbZFGE2L_p7mcXw,14472
|
|
78
|
-
voxcity/simulator_gpu/solar/integration.py,sha256=
|
|
71
|
+
voxcity/simulator_gpu/solar/integration.py,sha256=sWTxjHOYHw00Ad1Xt0qfTdYeeFOza4pl6zYQelbMqRI,182172
|
|
72
|
+
voxcity/simulator_gpu/solar/mask.py,sha256=mRZNcS0mWBsV3s9S8Q71GXzSjCmXcx0Ct2wHFo1Woyw,16907
|
|
79
73
|
voxcity/simulator_gpu/solar/radiation.py,sha256=0gttrkPDiq4AP0OcAQpBLd7vnBNYdcFdgae8WM4Bt2M,129774
|
|
80
|
-
voxcity/simulator_gpu/solar/raytracing.py,sha256=
|
|
74
|
+
voxcity/simulator_gpu/solar/raytracing.py,sha256=QsB7PepSoVglYHOcRRQOdDpLXQL7Ramhxam94a71XPA,5854
|
|
81
75
|
voxcity/simulator_gpu/solar/reflection.py,sha256=QM5Folnu_uzpCyD2mU5_FcSYr4-ImHEQns0ca0N1CJU,18937
|
|
82
76
|
voxcity/simulator_gpu/solar/sky.py,sha256=FEqyH4JvN0jHChQ8s1CcQfyLR8W36AEoz3OvOZhE7Jg,32198
|
|
83
77
|
voxcity/simulator_gpu/solar/solar.py,sha256=o6dkeN0jwtJNj2PNppRGQL-g1uE6VlfcY9rVNos1LeE,10953
|
|
84
78
|
voxcity/simulator_gpu/solar/svf.py,sha256=nbuhph1sco_i0q37VK4ynED4EBQ1lxf_yYlF6SX0Mp8,19675
|
|
85
|
-
voxcity/simulator_gpu/solar/volumetric.py,sha256=
|
|
86
|
-
voxcity/simulator_gpu/solar/voxcity.py,sha256=fAs_j_16jABwqM-tUMIk2RsSNgdYYqjATHSosmBrsHg,124159
|
|
87
|
-
voxcity/simulator_gpu/temporal.py,sha256=Xi7q5VRU-SKjNKWDZR-9mWF-A7haYJeoLMjMcxrvkPc,382
|
|
88
|
-
voxcity/simulator_gpu/utils.py,sha256=Ltu-wzwDi6j2AHzHPqnW2FWjQNFFQhrQlzR2sPf2mLQ,605
|
|
89
|
-
voxcity/simulator_gpu/view.py,sha256=Aucm8yJu8xYr2jD2aLZU17j4rRV3sIQO3Xk9KJMSglM,919
|
|
79
|
+
voxcity/simulator_gpu/solar/volumetric.py,sha256=sR2OanRJsvCqOBBIPVsReH6KiWKytUv72PukrV5HQmM,83876
|
|
90
80
|
voxcity/simulator_gpu/visibility/__init__.py,sha256=nA3w2BrpkR2MvmDJ7SLicMldEHqRijPFnMBMKrM-wUQ,3726
|
|
91
81
|
voxcity/simulator_gpu/visibility/geometry.py,sha256=sQiu4sOOL2t7sSYYTbylqx2fNJYS8vKwSaZZUv0q8LQ,8266
|
|
92
82
|
voxcity/simulator_gpu/visibility/integration.py,sha256=k3R0O97V1gYmnCuvY7QHiCdNss61FhQfEZr9xrQuIzY,33094
|
|
@@ -109,8 +99,8 @@ voxcity/visualizer/grids.py,sha256=Hi5ZbTy5oYLYFOSJDFBmMjFCwLr9F6de6UT1VjzGvNc,6
|
|
|
109
99
|
voxcity/visualizer/maps.py,sha256=0Dm-4LM9uOI-FX7MlEQKPyf_g9mFMoGtKSDdwN9lsuE,8990
|
|
110
100
|
voxcity/visualizer/palette.py,sha256=ThZQlLwUSSfN516h9DyMry0CTYJVXeJDdL7oP41_zKg,7088
|
|
111
101
|
voxcity/visualizer/renderer.py,sha256=z53RscOq3MTq-rlaLn0pLdO6rMpu_RnbJzzeMh9jX0s,49076
|
|
112
|
-
voxcity-1.0.
|
|
113
|
-
voxcity-1.0.
|
|
114
|
-
voxcity-1.0.
|
|
115
|
-
voxcity-1.0.
|
|
116
|
-
voxcity-1.0.
|
|
102
|
+
voxcity-1.0.15.dist-info/licenses/AUTHORS.rst,sha256=m82vkI5QokEGdcHof2OxK39lf81w1P58kG9ZNNAKS9U,175
|
|
103
|
+
voxcity-1.0.15.dist-info/licenses/LICENSE,sha256=s_jE1Df1nTPL4A_5GCGic5Zwex0CVaPKcAmSilxJPPE,1089
|
|
104
|
+
voxcity-1.0.15.dist-info/METADATA,sha256=oPAj1tCCGfAzkA0GlGKfKCYDZKnqVg-_S20vv9CbQh0,28090
|
|
105
|
+
voxcity-1.0.15.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
|
|
106
|
+
voxcity-1.0.15.dist-info/RECORD,,
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"""VoxCity-style `common` namespace.
|
|
2
|
-
|
|
3
|
-
VoxCity exposes helpers under `voxcity.simulator.common.*`.
|
|
4
|
-
`simulator_gpu` implements only the subset needed for drop-in compatibility.
|
|
5
|
-
"""
|
|
6
|
-
|
|
7
|
-
from .geometry import rotate_vector_axis_angle
|
|
8
|
-
|
|
9
|
-
__all__ = ["rotate_vector_axis_angle"]
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"""Geometry helpers for VoxCity compatibility.
|
|
2
|
-
|
|
3
|
-
This module is intended to satisfy imports like:
|
|
4
|
-
from simulator.common.geometry import rotate_vector_axis_angle
|
|
5
|
-
|
|
6
|
-
It forwards to the implementation used by `simulator_gpu.visibility`.
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
from ..visibility.geometry import rotate_vector_axis_angle
|
|
10
|
-
|
|
11
|
-
__all__ = ["rotate_vector_axis_angle"]
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"""VoxCity-style `integration` module (toplevel) for compatibility."""
|
|
2
|
-
|
|
3
|
-
from .solar.integration import (
|
|
4
|
-
get_global_solar_irradiance_using_epw,
|
|
5
|
-
get_building_global_solar_irradiance_using_epw,
|
|
6
|
-
save_irradiance_mesh,
|
|
7
|
-
load_irradiance_mesh,
|
|
8
|
-
)
|
|
9
|
-
|
|
10
|
-
__all__ = [
|
|
11
|
-
"get_global_solar_irradiance_using_epw",
|
|
12
|
-
"get_building_global_solar_irradiance_using_epw",
|
|
13
|
-
"save_irradiance_mesh",
|
|
14
|
-
"load_irradiance_mesh",
|
|
15
|
-
]
|
voxcity/simulator_gpu/kernels.py
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
"""VoxCity-style `kernels` module (toplevel) for compatibility.
|
|
2
|
-
|
|
3
|
-
Implements a minimal subset of `voxcity.simulator.solar.kernels` so code that
|
|
4
|
-
imports these symbols continues to run when using:
|
|
5
|
-
|
|
6
|
-
import simulator_gpu as simulator
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
from __future__ import annotations
|
|
10
|
-
|
|
11
|
-
from typing import Tuple
|
|
12
|
-
|
|
13
|
-
import numpy as np
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
def compute_direct_solar_irradiance_map_binary(
|
|
17
|
-
voxel_data,
|
|
18
|
-
sun_direction,
|
|
19
|
-
view_point_height,
|
|
20
|
-
hit_values,
|
|
21
|
-
meshsize,
|
|
22
|
-
tree_k,
|
|
23
|
-
tree_lad,
|
|
24
|
-
inclusion_mode,
|
|
25
|
-
):
|
|
26
|
-
"""Approximate VoxCity kernel: return direct-beam transmittance map (0..1).
|
|
27
|
-
|
|
28
|
-
Signature matches `voxcity.simulator.solar.kernels.compute_direct_solar_irradiance_map_binary`.
|
|
29
|
-
|
|
30
|
-
Notes:
|
|
31
|
-
- `hit_values` and `inclusion_mode` are accepted for compatibility but
|
|
32
|
-
are not currently used in the GPU path.
|
|
33
|
-
- Output is flipped with `np.flipud`, matching VoxCity.
|
|
34
|
-
"""
|
|
35
|
-
from .solar.integration import _compute_direct_transmittance_map_gpu
|
|
36
|
-
|
|
37
|
-
sd = np.array(sun_direction, dtype=np.float64)
|
|
38
|
-
L = float(np.sqrt((sd * sd).sum()))
|
|
39
|
-
if L == 0.0:
|
|
40
|
-
nx, ny = voxel_data.shape[0], voxel_data.shape[1]
|
|
41
|
-
return np.flipud(np.full((nx, ny), np.nan, dtype=np.float64))
|
|
42
|
-
sd /= L
|
|
43
|
-
|
|
44
|
-
trans = _compute_direct_transmittance_map_gpu(
|
|
45
|
-
voxel_data=np.asarray(voxel_data),
|
|
46
|
-
sun_direction=(float(sd[0]), float(sd[1]), float(sd[2])),
|
|
47
|
-
view_point_height=float(view_point_height),
|
|
48
|
-
meshsize=float(meshsize),
|
|
49
|
-
tree_k=float(tree_k),
|
|
50
|
-
tree_lad=float(tree_lad),
|
|
51
|
-
)
|
|
52
|
-
|
|
53
|
-
return np.flipud(trans)
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
__all__ = ["compute_direct_solar_irradiance_map_binary"]
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"""VoxCity-style `radiation` module (toplevel) for compatibility."""
|
|
2
|
-
|
|
3
|
-
from .solar.integration import (
|
|
4
|
-
get_direct_solar_irradiance_map,
|
|
5
|
-
get_diffuse_solar_irradiance_map,
|
|
6
|
-
get_global_solar_irradiance_map,
|
|
7
|
-
)
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
def compute_solar_irradiance_for_all_faces(*args, **kwargs):
|
|
11
|
-
"""Compatibility stub.
|
|
12
|
-
|
|
13
|
-
VoxCity's public API sometimes re-exports this symbol; if your workflow
|
|
14
|
-
depends on it, we can map it to a GPU equivalent (or implement it) once the
|
|
15
|
-
expected inputs/outputs are confirmed.
|
|
16
|
-
"""
|
|
17
|
-
raise NotImplementedError(
|
|
18
|
-
"compute_solar_irradiance_for_all_faces is not implemented in simulator_gpu yet. "
|
|
19
|
-
"Use get_*_solar_irradiance_map functions or open an issue with the expected signature."
|
|
20
|
-
)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
__all__ = [
|
|
24
|
-
"get_direct_solar_irradiance_map",
|
|
25
|
-
"get_diffuse_solar_irradiance_map",
|
|
26
|
-
"get_global_solar_irradiance_map",
|
|
27
|
-
"compute_solar_irradiance_for_all_faces",
|
|
28
|
-
]
|
voxcity/simulator_gpu/sky.py
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"""VoxCity-style `sky` module (toplevel) for compatibility.
|
|
2
|
-
|
|
3
|
-
VoxCity exposes sky patch utilities under `voxcity.simulator.solar.sky`, but the
|
|
4
|
-
flattened `voxcity.simulator` namespace often ends up with a `sky` attribute.
|
|
5
|
-
|
|
6
|
-
This module forwards to `simulator_gpu.solar.sky`.
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
from .solar.sky import * # noqa: F401,F403
|