You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: accept AbstractRange as times in *Ephemerides constructors (#215)
* feat: accept AbstractRange as times in *Ephemerides constructors
Allow any AbstractRange (e.g. range(et_begin, et_end; length=n)) to be
passed as the times argument. The inner constructor now calls
convert(Vector{Float64}, times) so the stored field is always a
Vector{Float64}. For an existing Vector{Float64} input, convert is a
no-op and returns the same object, so callers do not need to change.
This eliminates the boilerplate `times = collect(et_range)` line that
appeared in every integration test and user script.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* refactor: pass et_range directly to *Ephemerides in integration tests
Remove the `times = collect(et_range)` boilerplate now that constructors
accept AbstractRange directly. et_range is passed to the constructor and
the stored ephem.times is used for subsequent output spec setup.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: ROADMAP.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -87,7 +87,7 @@ Redesign the API around a Problem-Solver pattern inspired by `DifferentialEquati
87
87
Non-breaking fixes and convenience improvements before the v0.3.0 surface roughness work.
88
88
89
89
-[ ]**Rename internal `energy_in` / `energy_out`** to `absorbed_power` / `emitted_power` — current names are physically inaccurate (units are W, not J); not exported so no breaking change
90
-
-[]**`*Ephemerides` convenience constructors** — accept `et_begin`, `et_end`, step count to assemble `times` and `r_sun` in one call, reducing user boilerplate; purely additive
90
+
-[x]**`*Ephemerides` convenience constructors** — `times` accepts any `AbstractRange` (e.g. `range(et_begin, et_end; length=n)`) and is automatically collected to `Vector{Float64}`, eliminating the separate `collect` call; purely additive
91
91
-[ ]**Test prefix cleanup** — remove unnecessary `AsteroidThermoPhysicalModels.` prefixes from exported symbols in test files
92
92
93
93
## v0.3.0 - Surface Roughness Support (Target: 2026)
0 commit comments