diff --git a/src/planets/Mars.ts b/src/planets/Mars.ts index 25539c18..4b4952dd 100644 --- a/src/planets/Mars.ts +++ b/src/planets/Mars.ts @@ -49,4 +49,8 @@ export default class Mars extends Planet { ): number { return getApparentMagnitudeMars(distanceSun, distanceEarth, phaseAngle); } + + public async getCentralMeridian(): Promise { + return 0.0; + } } diff --git a/src/utils/physicalObsCalc.test.js b/src/utils/physicalObsCalc.test.js new file mode 100644 index 00000000..b4fce6a3 --- /dev/null +++ b/src/utils/physicalObsCalc.test.js @@ -0,0 +1,7 @@ +import {getCentralMeridianMars} from './physicalObsCalc'; + +it('tests getCentralMeridianMars', () => { + const T = -0.0714441976; + + getCentralMeridianMars(T); +}); diff --git a/src/utils/physicalObsCalc.ts b/src/utils/physicalObsCalc.ts new file mode 100644 index 00000000..ca6222be --- /dev/null +++ b/src/utils/physicalObsCalc.ts @@ -0,0 +1,32 @@ +export function getCentralMeridianMars(T: number): number { + const lambda0 = 352.9065 + 1.1733 * T; + const beta0 = 63.2818 - 0.00394 * T; + + console.log(lambda0, beta0); + + const t = 0.005028; // TODO light time + + const rightAscension0 = 316.55 + 0.00675 * (T - 1905); + const declination0 = 52.85 + 0.00347 * (T - 1950); + + console.log(rightAscension0, declination0); + const JDE = 0; + // const t = 0; // Light time + + const delta0Rad = 0.0; + const deltaRad = 0.0; + const alpha0Rad = 0.0; + const alphaRad = 0.0; + + const W = 11.504 + 350.89200025* (JDE - t - 2433282.5); + + console.log(W); + + const term1 = Math.sin(delta0Rad) * Math.cos(deltaRad) * Math.cos(alpha0Rad - alphaRad) + - Math.sin(deltaRad) * Math.cos(delta0Rad); + const term2 = Math.cos(deltaRad) * Math.sin(alpha0Rad - alphaRad); + const zeta = Math.atan2(term1, term2); + + const omega = W - zeta; + +}