OptimalPanelParameters

data class OptimalPanelParameters(val targetTrueAzimuth: Double, val targetMagneticAzimuth: Double?, val targetTilt: Double, val mode: TiltMode, val magneticDeclination: Float? = null, val isSunBelowHorizon: Boolean = false)

Optimal solar panel alignment parameters calculated for the current context.

Combines location, time, magnetic declination, and user's preferred tilt mode to produce the target azimuth and tilt angles for panel orientation.

Constructors

Link copied to clipboard
constructor(targetTrueAzimuth: Double, targetMagneticAzimuth: Double?, targetTilt: Double, mode: TiltMode, magneticDeclination: Float? = null, isSunBelowHorizon: Boolean = false)

Properties

Link copied to clipboard

True when TiltMode.REALTIME has no sun to point at, so the angles are not a target

Link copied to clipboard

Local magnetic declination from true north in degrees (optional, -180 to +180)

Link copied to clipboard

The TiltMode strategy used to calculate these parameters

Link copied to clipboard

Magnetic bearing for compass use (optional, null if declination unknown)

Link copied to clipboard

Optimal elevation angle in degrees (0-90), where 0° = horizontal flat, 90° = vertical

Link copied to clipboard

True bearing (magnetic north independent) in degrees (0-360)