Power Analysis
Power Analysis evaluates spacecraft electrical balance over time using solar arrays, batteries, and user-defined loads.
Engineering Questions
- How much power is generated by the selected solar arrays?
- What is the total spacecraft load over time?
- Does the battery remain within SOC limits?
- When does a power deficit occur?
- How do eclipse and incidence angle affect power generation?
| Input |
Description |
| Spacecraft |
Provides position and eclipse context. |
| Solar arrays |
Generate power from area, efficiency, incidence, and solar flux. |
| Batteries |
Store and deliver energy with SOC and power limits. |
| Loads |
Static, average duty-cycle, orbit-duty-cycle, sunlight-only, or eclipse-only loads. |
| Time step |
Simulation step in seconds. |
| Solar flux mode |
Constant, custom, or distance-corrected. |
| Battery policies |
Initial SOC override, charge/discharge enable, minimum SOC handling. |
Load Modes
| Mode |
Behaviour |
| Always on |
Full load power at every sample. |
| Sunlight only |
Active only outside eclipse. |
| Eclipse only |
Active only in eclipse. |
| Average duty cycle |
Applies average power as power * duty / 100. |
| Orbit duty cycle |
Toggles full load power for a fraction of each estimated orbit period. |
Simulation Pipeline
flowchart TD
T["Timeline"] --> E["Eclipse state"]
E --> S["Solar flux and array power"]
T --> L["Load power"]
S --> N["Net power"]
L --> N
N --> B{"Net >= 0?"}
B -->|Yes| CH["Charge batteries"]
B -->|No| DIS["Discharge batteries"]
CH --> SOC["Record energy and SOC"]
DIS --> SOC
SOC --> OUT["Payload and summary"]
Main Configuration Parameters
| Field |
Meaning |
spacecraft_guid |
Spacecraft being analysed. |
solar_array_guids |
Solar arrays included in generation. |
battery_guids |
Batteries included in storage. |
time_step_s |
Simulation step. |
solar_flux_mode |
Constant, custom, or distance-corrected. |
include_eclipse |
Sets generation to zero in eclipse. |
include_incidence_angle |
Applies solar incidence cosine. |
override_initial_soc |
Uses analysis-level initial SOC instead of battery asset value. |
allow_battery_charging |
Enables charging when net power is positive. |
allow_battery_discharging |
Enables discharge when net power is negative. |
minimum_soc_policy |
Defines how deficits below minimum SOC are handled. |
Outputs
| Output |
Description |
total_solar_power |
Total generated power time series. |
solar_power_by_array |
Per-array generated power. |
total_load_power |
Total load power time series. |
load_power_by_load |
Per-load power series. |
net_power |
Solar minus load power. |
deficit_power |
Unserved power after battery discharge. |
battery_energy_by_battery |
Stored energy in Wh. |
battery_soc_by_battery |
SOC percent per battery. |
eclipse |
Boolean eclipse state timeline. |
solar_flux |
Solar flux used in W/m2. |
Interpretation
A positive net power does not automatically mean the system is healthy if batteries are already full and generation is wasted. A negative net power does not automatically mean failure if the battery can sustain the load. The key outputs are minimum SOC, total deficit energy, and the timing of deficits.