AMS-BP 0.0.32__py3-none-any.whl → 0.0.33__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.
- AMS_BP/__init__.py +1 -1
- AMS_BP/optics/lasers/laser_profiles.py +5 -5
- AMS_BP/sample/sim_sampleplane.py +22 -22
- {ams_bp-0.0.32.dist-info → ams_bp-0.0.33.dist-info}/METADATA +1 -1
- {ams_bp-0.0.32.dist-info → ams_bp-0.0.33.dist-info}/RECORD +8 -8
- {ams_bp-0.0.32.dist-info → ams_bp-0.0.33.dist-info}/WHEEL +0 -0
- {ams_bp-0.0.32.dist-info → ams_bp-0.0.33.dist-info}/entry_points.txt +0 -0
- {ams_bp-0.0.32.dist-info → ams_bp-0.0.33.dist-info}/licenses/LICENSE +0 -0
AMS_BP/__init__.py
CHANGED
@@ -235,7 +235,7 @@ class LaserProfile(ABC):
|
|
235
235
|
class GaussianBeam(LaserProfile):
|
236
236
|
"""3D Gaussian laser beam profile with time dependence."""
|
237
237
|
|
238
|
-
def
|
238
|
+
def calculate_intensity_(
|
239
239
|
self,
|
240
240
|
x: np.ndarray | float,
|
241
241
|
y: np.ndarray | float,
|
@@ -274,7 +274,7 @@ class GaussianBeam(LaserProfile):
|
|
274
274
|
# * np.cos(phase_terms)
|
275
275
|
)
|
276
276
|
|
277
|
-
def
|
277
|
+
def calculate_intensity(
|
278
278
|
self,
|
279
279
|
x: np.ndarray | float,
|
280
280
|
y: np.ndarray | float,
|
@@ -312,7 +312,7 @@ class GaussianBeam(LaserProfile):
|
|
312
312
|
w_z = self.get_beam_width(z_shifted)
|
313
313
|
|
314
314
|
# Calculate peak intensity (z-dependent)
|
315
|
-
I0 = 2 * power / (np.pi * (self.params.beam_width
|
315
|
+
I0 = 2 * power / (np.pi * (self.params.beam_width) ** 2)
|
316
316
|
I0_z = I0 * (self.params.beam_width / w_z) ** 2
|
317
317
|
|
318
318
|
# Calculate phase terms if needed
|
@@ -504,7 +504,7 @@ class HiLoBeam(LaserProfile):
|
|
504
504
|
z_shifted = z - pos[2]
|
505
505
|
|
506
506
|
# Calculate radial distance from optical axis
|
507
|
-
|
507
|
+
r_squared = x_shifted**2 + y_shifted**2
|
508
508
|
|
509
509
|
# Base beam parameters
|
510
510
|
w0 = self.params.beam_width # Beam waist
|
@@ -524,7 +524,7 @@ class HiLoBeam(LaserProfile):
|
|
524
524
|
intensity = (
|
525
525
|
I0
|
526
526
|
* (w0 / w_z) ** 2 # Beam width scaling
|
527
|
-
* np.exp(-2 *
|
527
|
+
* np.exp(-2 * r_squared / w_z**2) # Gaussian radial profile
|
528
528
|
)
|
529
529
|
|
530
530
|
# Lamination effect: attenuate out-of-focus regions
|
AMS_BP/sample/sim_sampleplane.py
CHANGED
@@ -207,23 +207,23 @@ class SamplePlane:
|
|
207
207
|
trajectory: Optional[Dict[int, Tuple[float, float, float]]] = None,
|
208
208
|
) -> bool:
|
209
209
|
"""Add a fluorescent object to the sample plane"""
|
210
|
-
# Verify position is within sample space
|
211
|
-
if not self._space.contains_position(position):
|
212
|
-
|
213
|
-
|
214
|
-
# Verify initial position is within FOV
|
215
|
-
if not self.is_within_fov(position):
|
216
|
-
|
217
|
-
|
218
|
-
# If trajectory provided, verify all positions
|
219
|
-
if trajectory is not None:
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
210
|
+
# # Verify position is within sample space
|
211
|
+
# if not self._space.contains_position(position):
|
212
|
+
# return False
|
213
|
+
#
|
214
|
+
# # Verify initial position is within FOV
|
215
|
+
# if not self.is_within_fov(position):
|
216
|
+
# return False
|
217
|
+
|
218
|
+
# # If trajectory provided, verify all positions
|
219
|
+
# if trajectory is not None:
|
220
|
+
# if not all(
|
221
|
+
# self._space.contains_position(pos) for pos in trajectory.values()
|
222
|
+
# ):
|
223
|
+
# return False
|
224
|
+
# if not all(self.is_within_fov(pos) for pos in trajectory.values()):
|
225
|
+
# return False
|
226
|
+
#
|
227
227
|
if object_id in self._objects:
|
228
228
|
return False
|
229
229
|
|
@@ -239,11 +239,11 @@ class SamplePlane:
|
|
239
239
|
obj = FluorescentObject(object_id, position, fluorophore, trajectory)
|
240
240
|
self._objects[object_id] = obj
|
241
241
|
|
242
|
-
# Update spatial index for all time points
|
243
|
-
for t in self.time_points:
|
244
|
-
|
245
|
-
|
246
|
-
|
242
|
+
# # Update spatial index for all time points
|
243
|
+
# for t in self.time_points:
|
244
|
+
# pos = trajectory[t]
|
245
|
+
# self._update_spatial_index(object_id, pos, t)
|
246
|
+
#
|
247
247
|
return True
|
248
248
|
|
249
249
|
def get_all_objects(self) -> List[FluorescentObject]:
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: AMS_BP
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.33
|
4
4
|
Summary: Advanced Microscopy Simulations developed for the Weber Lab by Baljyot Singh Parmar
|
5
5
|
Project-URL: Documentation, https://joemans3.github.io/AMS_BP/
|
6
6
|
Project-URL: Source code, https://github.com/joemans3/AMS_BP
|
@@ -1,4 +1,4 @@
|
|
1
|
-
AMS_BP/__init__.py,sha256=
|
1
|
+
AMS_BP/__init__.py,sha256=ZjfBnA_D79EK47UsS4sJAJupBnTC6IELNNcZzSl9FVg,327
|
2
2
|
AMS_BP/run_cell_simulation.py,sha256=7InopFikjo0HfaLO2siXskBIbyCIte9avG4YXjjaWCI,7420
|
3
3
|
AMS_BP/sim_config.toml,sha256=3IqOQIJYmP5g4okk15nqQiNZb3ij7Pt63HbpI-5tySw,11672
|
4
4
|
AMS_BP/sim_microscopy.py,sha256=Vsga9lTWqP0pjEnfFj0qKaSz7YZ_F4E3TqsaErwhi3E,19991
|
@@ -31,7 +31,7 @@ AMS_BP/optics/filters/filters.py,sha256=-iw7eqmDO77SEqlFTv5jJNVwpA8y93TLsjy5hhsA
|
|
31
31
|
AMS_BP/optics/filters/channels/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
32
32
|
AMS_BP/optics/filters/channels/channelschema.py,sha256=SConyA5yVdfnI_8sgcxVC8SV7S8tGUJYPPC6jn7lglU,906
|
33
33
|
AMS_BP/optics/lasers/__init__.py,sha256=T7dHohhyLf_pBw4TidarYHWmiwxVXGE71-Bf1aeBbuc,564
|
34
|
-
AMS_BP/optics/lasers/laser_profiles.py,sha256=
|
34
|
+
AMS_BP/optics/lasers/laser_profiles.py,sha256=_h3g_TjolJI5NTg7T_m_ntyNpSFTJvxW0AeXf0svm-I,17284
|
35
35
|
AMS_BP/optics/lasers/scanning_patterns.py,sha256=Xen96e5BlYI892HzZDXdwm80id6TbyNCNj-qvnRnSnI,3393
|
36
36
|
AMS_BP/optics/psf/__init__.py,sha256=ezrKPgpTeR4gTHOvF0mhF6u2zMMTd8Bgp8PGeOf11fA,121
|
37
37
|
AMS_BP/optics/psf/psf_engine.py,sha256=FbR4VHQ-VgCWrrDj8AHPPnVgwVUGs-OP19w_TjcbMcU,10215
|
@@ -42,7 +42,7 @@ AMS_BP/probabilityfuncs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG
|
|
42
42
|
AMS_BP/probabilityfuncs/markov_chain.py,sha256=LV6KGr8Lv4NIvBPJqsR0CEynssa_mPH30qLaK85GObA,4339
|
43
43
|
AMS_BP/probabilityfuncs/probability_functions.py,sha256=j_rIxrupGBf_FKkQBh1TvEa34A44jAasaZQRg2u3FuY,11793
|
44
44
|
AMS_BP/sample/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
45
|
-
AMS_BP/sample/sim_sampleplane.py,sha256
|
45
|
+
AMS_BP/sample/sim_sampleplane.py,sha256=szr0Y9zFsaJy0aY_Gm5AAVBbY8UsRwehxowUGfaK_2Q,12889
|
46
46
|
AMS_BP/sample/flurophores/__init__.py,sha256=arLVUx1-yh5T41fH9Mr6RNY8Ao3ZioFQUtsfEZlzQkU,250
|
47
47
|
AMS_BP/sample/flurophores/flurophore_schema.py,sha256=j8jnr4w4ltuhXUkjd74IoyyuotyH52mn8FWkgahX5Vw,10886
|
48
48
|
AMS_BP/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -51,8 +51,8 @@ AMS_BP/utils/decorators.py,sha256=4qFdvzPJne0dhkhD1znPxRln1Rfr5NX8rdcCDcbATRU,62
|
|
51
51
|
AMS_BP/utils/errors.py,sha256=7BOd-L4_YeKmWn3Q4EOdTnNF3Bj_exDa3eg5X0yCZrc,759
|
52
52
|
AMS_BP/utils/maskMaker.py,sha256=2ca3n2nc8rFtUh1LurKXOJJsUmhrOpWbRnVX7fjRVvs,335
|
53
53
|
AMS_BP/utils/util_functions.py,sha256=9Qlr4kjY04fObktR8TrzB0IgoG1yXtcmxPRX9AN34mM,9671
|
54
|
-
ams_bp-0.0.
|
55
|
-
ams_bp-0.0.
|
56
|
-
ams_bp-0.0.
|
57
|
-
ams_bp-0.0.
|
58
|
-
ams_bp-0.0.
|
54
|
+
ams_bp-0.0.33.dist-info/METADATA,sha256=ibqqOX-JYh5DpbV8f6LJPpDKH4IJyldZYuXBi1F5XBQ,5869
|
55
|
+
ams_bp-0.0.33.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
56
|
+
ams_bp-0.0.33.dist-info/entry_points.txt,sha256=MFUK9bZWW61djfsavqopMqiVPVn4lJtt6v8qzyEFyNM,76
|
57
|
+
ams_bp-0.0.33.dist-info/licenses/LICENSE,sha256=k_-JV1DQKvO0FR8WjvOisqdTl0kp6VJ7RFM3YZhao0c,1071
|
58
|
+
ams_bp-0.0.33.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|