asteroid_spinprops 1.0.0__py3-none-any.whl → 1.0.1__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,23 +1,27 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: asteroid_spinprops
3
- Version: 1.0.0
3
+ Version: 1.0.1
4
4
  Summary: Collection of tools used for fitting sHG1G2 and SOCCA photometric models to sparse asteroid photometry
5
5
  License: MIT
6
6
  Author: Odysseas
7
7
  Author-email: odysseas.xenos@proton.me
8
- Requires-Python: >=3.11
8
+ Requires-Python: >=3.9
9
9
  Classifier: License :: OSI Approved :: MIT License
10
10
  Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.9
12
+ Classifier: Programming Language :: Python :: 3.10
11
13
  Classifier: Programming Language :: Python :: 3.11
12
14
  Classifier: Programming Language :: Python :: 3.12
13
15
  Classifier: Programming Language :: Python :: 3.13
14
16
  Classifier: Programming Language :: Python :: 3.14
15
- Requires-Dist: astropy (==7.0.0)
16
- Requires-Dist: fink-utils (==0.43.0)
17
- Requires-Dist: nifty-ls (==1.1.0)
18
- Requires-Dist: pandas (==2.3.3)
19
- Requires-Dist: scipy (==1.16.2)
20
- Requires-Dist: tqdm (==4.67.1)
17
+ Requires-Dist: astropy (>=6.0)
18
+ Requires-Dist: fink-utils (>=0.47.0)
19
+ Requires-Dist: nifty-ls (>=1.1.0)
20
+ Requires-Dist: pandas (>=2.3)
21
+ Requires-Dist: pyarrow (>=18.1)
22
+ Requires-Dist: sbpy (>=0.5.0)
23
+ Requires-Dist: scipy (>=1.10)
24
+ Requires-Dist: tqdm (>=4.67)
21
25
  Project-URL: Homepage, https://gitlab.com/odysseas_xenos/asteroid-spinprops
22
26
  Project-URL: Repository, https://gitlab.com/odysseas_xenos/asteroid-spinprops
23
27
  Description-Content-Type: text/markdown
@@ -37,6 +41,87 @@ Install the package via pip:
37
41
  pip install asteroid_spinprops
38
42
  ```
39
43
 
44
+ ## Input column requirements and preprocessing
45
+
46
+ `asteroid_spinprops` expects photometric measurements to follow the **Fink alert schema**.
47
+ If your DataFrame uses different column names, they must be renamed to the standard format before analysis.
48
+
49
+ The package maps common input columns to Fink-style fields:
50
+
51
+ | Expected name | Description |
52
+ |---------------|-------------|
53
+ | `cjd` | Observation time (JD) |
54
+ | `cmagpsf` | PSF magnitude |
55
+ | `csigmapsf` | Magnitude uncertainty |
56
+ | `cfid` | Filter identifier |
57
+ | `ra` | Right ascension (deg) |
58
+ | `dec` | Declination (deg) |
59
+ | `Phase` | Solar phase angle (deg) |
60
+
61
+ ### Additional columns created during preprocessing
62
+
63
+ The preprocessing step also adds the following fields:
64
+
65
+ - **`cmred` — Reduced magnitude**
66
+
67
+ Computed from the heliocentric and observer-centric distances:
68
+
69
+
70
+ $$
71
+ \mathrm{cmred} = \mathrm{cmagpsf} - 5\log_{10}\!\left(\frac{r\,\Delta}{\mathrm{AU}^2}\right)
72
+ $$
73
+ where `Obj_Sun_LTC_km` = \(r\) and `Range_LTC_km` = \(\Delta\).
74
+
75
+ - **`jd_ltc` — Light-time–corrected Julian Date**
76
+
77
+ First converts MJD → JD (`+ 2400000.5`), then applies the correction
78
+
79
+ $$
80
+ JD_\mathrm{ltc} = JD - \frac{\Delta}{c},
81
+ $$
82
+
83
+ using the one-way light-travel time in days.
84
+
85
+ ```python
86
+ pdf.rename(
87
+ columns={
88
+ "Your_JD_column": "cjd",
89
+ "Your_magnitudes_column": "cmagpsf",
90
+ "Your_phase_angle_column": "Phase",
91
+ "Your_RA_column": "ra",
92
+ "Your_Dec_column": "dec",
93
+ "Your_magnitude_uncertainty_column": "csigmapsf",
94
+ "Your_filter_column": "cfid",
95
+ },
96
+ inplace=True,
97
+ )
98
+
99
+ # Add missing columns
100
+ pdf["cmred"] = pdf["cmagpsf"] - 5 * np.log10(
101
+ pdf["Observer_SSO_distance_column"] * pdf["Sun_SSO_distance_column"] / (au**2)
102
+ )
103
+
104
+ # LT correction
105
+ pdf["cjd"] = pdf["cjd"] + 2400000.5 # MJD to JD
106
+ pdf["jd_ltc"] = pdf["cjd"] - pdf["Observer_SSO_distance_column"] / c_kmday # light time correction
107
+
108
+ ```
109
+
110
+ ### Required inputs
111
+
112
+ Your input DataFrame must therefore include:
113
+
114
+ - time of observation
115
+ - PSF magnitude and uncertainty
116
+ - filter ID
117
+ - RA, Dec
118
+ - phase angle
119
+ - heliocentric distance (`Obj_Sun_LTC_km`)
120
+ - observer-centric distance (`Range_LTC_km`)
121
+
122
+ The preprocessing step renames these fields to the Fink schema, computes reduced magnitudes, and applies the light-time correction to the observation timestamps.
123
+
124
+
40
125
  ## Quick Start
41
126
  ```python
42
127
  import numpy as np
@@ -5,6 +5,6 @@ asteroid_spinprops/ssolib/modelfit.py,sha256=Kg5Qn0yU4wbfat9ZCvT9pYqSIo9toUm5kwh
5
5
  asteroid_spinprops/ssolib/periodest.py,sha256=XCBqsgPFcLFk-vreVmpYPjghJDyUyHSEeCULayqPRHg,13216
6
6
  asteroid_spinprops/ssolib/ssptools.py,sha256=DlSgYtXenztRAtEV9d4itzp5OZMjkbXkW2yZ_Qumu4U,4490
7
7
  asteroid_spinprops/ssolib/utils.py,sha256=BUeIP0DZ45tg5qAQML8LBM8Gbj1vn2d3PGzvgQvfq_I,11094
8
- asteroid_spinprops-1.0.0.dist-info/METADATA,sha256=LZvpOARV-nWnAkOnr5S097mzTbWufl7_qPS8zYxE6gw,3111
9
- asteroid_spinprops-1.0.0.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
10
- asteroid_spinprops-1.0.0.dist-info/RECORD,,
8
+ asteroid_spinprops-1.0.1.dist-info/METADATA,sha256=4aQ7NoSNXRB2HbMHw1AIjhNE3UZFLUL5CYV_QeQywnA,5635
9
+ asteroid_spinprops-1.0.1.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
10
+ asteroid_spinprops-1.0.1.dist-info/RECORD,,