flits 0.1.0__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.
flits/__init__.py ADDED
@@ -0,0 +1,80 @@
1
+ """FLITS: Fast-Look Interactive Transient Suite."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import importlib
6
+ from typing import TYPE_CHECKING
7
+
8
+ __version__ = "0.1.0"
9
+
10
+ __all__ = [
11
+ "BurstMeasurements",
12
+ "BurstSession",
13
+ "DmOptimizationResult",
14
+ "ExportArtifact",
15
+ "ExportManifest",
16
+ "ExportPlotPreview",
17
+ "ExportPreview",
18
+ "ExportPreviewArtifact",
19
+ "FilterbankMetadata",
20
+ "GaussianFit1D",
21
+ "MeasurementDiagnostics",
22
+ "MeasurementProvenance",
23
+ "MeasurementUncertainties",
24
+ "ObservationConfig",
25
+ "TelescopePreset",
26
+ "__version__",
27
+ "available_presets",
28
+ "detect_preset",
29
+ "get_preset",
30
+ ]
31
+
32
+ if TYPE_CHECKING:
33
+ from flits.models import (
34
+ BurstMeasurements,
35
+ DmOptimizationResult,
36
+ ExportArtifact,
37
+ ExportManifest,
38
+ ExportPlotPreview,
39
+ ExportPreview,
40
+ ExportPreviewArtifact,
41
+ FilterbankMetadata,
42
+ GaussianFit1D,
43
+ MeasurementDiagnostics,
44
+ MeasurementProvenance,
45
+ MeasurementUncertainties,
46
+ )
47
+ from flits.session import BurstSession
48
+ from flits.settings import ObservationConfig, TelescopePreset, available_presets, detect_preset, get_preset
49
+
50
+
51
+ def __getattr__(name: str):
52
+ if name in {
53
+ "BurstMeasurements",
54
+ "DmOptimizationResult",
55
+ "ExportArtifact",
56
+ "ExportManifest",
57
+ "ExportPlotPreview",
58
+ "ExportPreview",
59
+ "ExportPreviewArtifact",
60
+ "FilterbankMetadata",
61
+ "GaussianFit1D",
62
+ "MeasurementDiagnostics",
63
+ "MeasurementProvenance",
64
+ "MeasurementUncertainties",
65
+ }:
66
+ models = importlib.import_module("flits.models")
67
+
68
+ return getattr(models, name)
69
+
70
+ if name in {"ObservationConfig", "TelescopePreset", "available_presets", "detect_preset", "get_preset"}:
71
+ settings = importlib.import_module("flits.settings")
72
+
73
+ return getattr(settings, name)
74
+
75
+ if name == "BurstSession":
76
+ BurstSession = importlib.import_module("flits.session").BurstSession
77
+
78
+ return BurstSession
79
+
80
+ raise AttributeError(f"module 'flits' has no attribute {name!r}")
flits/__main__.py ADDED
@@ -0,0 +1,5 @@
1
+ from flits.web.app import main
2
+
3
+
4
+ if __name__ == "__main__":
5
+ main()
@@ -0,0 +1,22 @@
1
+ """Public analysis entry points exposed by FLITS.
2
+
3
+ The analysis package groups the main higher-level routines used by the session
4
+ layer: width/morphology measurements, DM optimization, averaged spectral
5
+ analysis, and temporal-structure analysis.
6
+ """
7
+
8
+ from __future__ import annotations
9
+
10
+ from flits.analysis.dm_optimization import optimize_dm_trials
11
+ # Preserve the historical package-level default_segment_bins export for now.
12
+ from flits.analysis.spectral.core import default_segment_bins, run_averaged_spectral_analysis
13
+ from flits.analysis.morphology import compute_width_analysis
14
+ from flits.analysis.temporal.core import run_temporal_structure_analysis
15
+
16
+ __all__ = [
17
+ "compute_width_analysis",
18
+ "default_segment_bins",
19
+ "optimize_dm_trials",
20
+ "run_averaged_spectral_analysis",
21
+ "run_temporal_structure_analysis",
22
+ ]
@@ -0,0 +1,3 @@
1
+ """DM optimization utilities and registered DM scoring metrics."""
2
+
3
+ from .core import *