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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: voxcity
3
- Version: 1.0.13
3
+ Version: 1.0.15
4
4
  Summary: voxcity is an easy and one-stop tool to output 3d city models for microclimate simulation by integrating multiple geospatial open-data
5
5
  License: MIT
6
6
  License-File: AUTHORS.rst
@@ -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=uG1PXEwE3137WE_DgSo8Q7evUNdnfuJhNjE-2HfHUZQ,1960
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=KtWo8Oa2UKz-DNx9MHMtZ6-YZvt2GlJ6PXrVt-Br0EQ,3767
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=x7Uu_HA22SWz0LdbbY6Q2mqW6JCOsCVzyeC5VMgIwXE,9101
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/integration.py,sha256=KrZxliDGezKSn8hu1fQ3Q1M8yDalidJRLvTpcNSJgMk,439
69
- voxcity/simulator_gpu/kernels.py,sha256=Qukuge7vXkkVt7LhjokFT0DUcQDMqCF6jFRV6wo1ED4,1683
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=hJb8K9ZZewSeZ2PSvCyVPSU2g8GInp33sgY8gqDE1DA,20536
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=gql16uTZ2IDQIiy-T6dH52HtMxjS0yspQ25-5Xgfgag,124163
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=1Y8UoKPFxVmQEfbjXsV4lFcTzBjJYEPWCqBvdaV94Xg,22497
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=nMXhai6AuZQTvMrNKUcqSLO3X6G_XhbL1tLlcmG1XLg,44493
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.13.dist-info/licenses/AUTHORS.rst,sha256=m82vkI5QokEGdcHof2OxK39lf81w1P58kG9ZNNAKS9U,175
113
- voxcity-1.0.13.dist-info/licenses/LICENSE,sha256=s_jE1Df1nTPL4A_5GCGic5Zwex0CVaPKcAmSilxJPPE,1089
114
- voxcity-1.0.13.dist-info/METADATA,sha256=Yrc1ejK3-Lq9tUUM2fkZDCZucLuN8QAjGQkY4IYGrOg,28090
115
- voxcity-1.0.13.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
116
- voxcity-1.0.13.dist-info/RECORD,,
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,11 +0,0 @@
1
- name: voxcity_gpu
2
- channels:
3
- - conda-forge
4
- - defaults
5
- dependencies:
6
- - python=3.12
7
- - gdal
8
- - timezonefinder
9
- - pip
10
- - pip:
11
- - voxcity[gpu]
@@ -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
- ]
@@ -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
- ]
@@ -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