
-----------------------------------
pavel
22 Apr 2007 19:11

lunile noi din primul secol ... cum se calculează ?
-----------------------------------
... am făcut un algoritm propriu pentru aflarea lunii noi cele mai apropiate de echinoxul de primăvară din anul X (din primul secol), pornind de la data echinoxului de primăvară din anul Y (secolul 20/21), și luna nouă cea mai apropiată de acesta ... am luat drept constante: lungimea lunii sinodice (29.530588) și a anului solar (365.24219) ... dar când am făcut verificarea folosind mai mulți ani de referință Y am observat că nu obțin aceleași rezultate ... iar eroarea se pare că este aproximativ liniară, 2-4 ore la ani succesivi de referință (Y) ... în primul rând aș vrea să știu dacă premisele de la care am pornit sunt corecte (mă refer la alegerea ca, constante a intervalului lunii sinodice, respectiv a anului solar) ... și care este algoritmul folosit pentru astfel de calcule ? ...

-----------------------------------
pavel
22 Apr 2007 23:27


-----------------------------------
... [url=http://www.popastro.com/phpBB2/viewtopic.php?p=35349&highlight=#35349]aici am primit link-uri utile:

... [url=http://www.fourmilab.ch/earthview/pacalc.html]Lunar Perigee and Apogee Calculator
... [url=http://sunearth.gsfc.nasa.gov/eclipse/phase/phasecat.html]Moon Phases from -1999 to +3000 (2000 BCE to 4000 CE)

... și o recomandare: ... Meeus, Jean. Astronomical Algorithms . Richmond: Willmann-Bell, 1998. ISBN 0-943396-63-8.

... dacă știe cineva unde poate fi găsit acest algoritm pe net, vă rog să postați link-ul ...

-----------------------------------
red giant
23 Apr 2007 01:30


-----------------------------------
Cartea o gasesti aici: http://sarm.astroclubul.org/carti/

-----------------------------------
Doru Dragan
23 Apr 2007 11:20


-----------------------------------
Un program care calculeaza fazele Lunii pentru mii de ani :) Este in BASIC dar cred ca se poate usor converti in orice alt limbaj. Este gratuit dar mi-ar place sa fiu citat daca si unde e folosit. Eventuale explicatii.

 10 PI=4*ATN(1):R=PI/180:INPUT "Anul:";Y:C=INT((Y-1900)*12.3685):G=1:IF Y<1583 THEN G=0
 20 DEF FNF(X)=X-INT(X):T=(Y-1899.5)/100:V=T*T:W=V*T
 30 E=.75933-.000837*T-.0002172*V-.000000155*W+.53058868*C
 40 I=2415020+29*C+INT(E):E=FNF(E)
 50 L=C*.080848211:L=360*FNF(L)+359.2242-.0000333*V-.00000347*W
 60 M1=C*.071713661:M1=360*FNF(M1)+306.0253+.0107306*V+.00001236*W
 70 B=C*.085195851:B=360*FNF(B)+21.2964-.0016528*V-.00000239*W
 80 PRINT "ANUL ";Y:FOR Q=0 TO 28:J=I+14*Q:K=Q/2
 90 N=(L+K*29.1053561)*R:O=(M1+K*385.816918)*R:S=(B+K*390.670506)*R
100 F=E+.765294*Q-.4068*SIN(O)+(.1734-.000393*T)*SIN(N)+.0161*SIN(2*O)
110 F=F+.0104*SIN(2*S)-.0074*SIN(N-O)-.0051*SIN(N+O)+.0021*SIN(2*N)
120 F=F+.001*SIN(2*S-O)+.5/1440+.5
130 J=J+INT(F):F=FNF(F)
140 A$="LUNA PLINA":IF K=INT(K) THEN A$="LUNA NOUA "
150 GOSUB 950:PRINT D1;M;H1;":";M9;A$:F=F-.0208*SIN(2*S)
200 IF K=INT(K) OR ABS(SIN(S))>.36 THEN 295
202 S1=5.19595-.0048*COS(N)+.002*COS(2*N)-.3283*COS(O)-.006*COS(N+O)+.0041*COS(N-O)
204 C1=.207*SIN(N)+.0024*SIN(2*N)-.039*SIN(O)+.0115*SIN(2*O) -.0073*SIN(N+O)-.0067*SIN(N-O)+.0117*SIN(2*S)
206 D9=ABS(S1*SIN(S)+C1*COS(S))
208 U=.0059+.0046*COS(N)-.0182*COS(O)+.0004*COS(2*O)-.0005*COS(N+O)
210 RP=1.2847+U:RU=.7404-U:MP=(1.5572+U-D9)/.545
295 F=F+.0208*SIN(2*S):NEXT Q:END
950 A=J+1524:IF G=1 THEN A1=INT(J/36524.25-51.12264):A=A+1+A1-INT(A1/4)
960 X=INT(A/365.25-.3343):D=INT(365.25*X)
970 Z=INT((A-D)/30.61):D=A-D-INT(30.61*Z)+F:M=Z-1:Y=X-4716
980 IF M>12 THEN M=M-12
990 IF M<3 THEN Y=Y+1
992 D1=INT(D):H=24*(D-D1):H1=INT(H):M9=INT(60*(H-H1))
995 RETURN

-----------------------------------
Doru Dragan
23 Apr 2007 11:23


-----------------------------------
Cele doua fete zambitoare din linia 960 si 970 sunt evident niste impartiri cu variabila D :D

-----------------------------------
pavel
23 Apr 2007 11:55


-----------------------------------
Cartea o gasesti aici: 
... mulțumesc ... dar se pare că momentan nu pot downloda cartea (nu poate fi stabilită conexiunea cu serverul) ...

Eventuale explicatii.
... nu sunt astronom sau fizician, dar cu o descriere pe scurt a formulelor folosite (baza teoretică a algoritmului implementat de Dvs.) cred că m-aș descurca ...

-----------------------------------
Doru Dragan
23 Apr 2007 12:05


-----------------------------------
Ai incercat sa rulezi programul? Merge? Esti multumit de rezultate?

-----------------------------------
pavel
23 Apr 2007 14:34


-----------------------------------
... nu știu ce compilator de BASIC ați folosit pt. program, dar eu am downlodat  [url=http://www.freebasic.net/index.php/download]FreeBASIC și am primit câteva erori ... am încercat să identific și corectez problemele dar nu prea am avut succes ... însă mă pricep mai bine în C++ ... dacă binevoiți să expuneți pe scurt formulele folosite, eventual și o descriere a variabilelor, cred că sunt capabil să-l convertesc ... dacă nu, v-aș fi recunoscător și pentru o referință online pt. aceste formule (folosite în algoritm) ... 8) 

ps: ... sunt foarte interesat să înțeleg teoria din spatele algoritmului ...  :)

-----------------------------------
Doru Dragan
23 Apr 2007 15:03


-----------------------------------
Din pacate prea multe nu stiu sa-ti spun. Programul l-am luat dintr-un Sky and Telescope mai vechi iar algoritmul are in spate teoria din Astronomical Agorithms de Jean Meeus. Liniile 950 - 995 sunt conversia data calendar gregorian -> zi juliana. Programul ruleaza in Microsoft QBasic sau Borland TurboBasic. Nu exista nici un motiv sa nu ruleze in FreeBasic deoarece l-am facut utilizand instructiunile cele mai uzuale din Basic. In rest va trebui sa te descurci singur cu formulele care sunt destul de clare in BASIC si cartea lui Meeus care poate fi descarcata de la adresa indicata de red giant. Cifraraele pe care le vezi prin program sunt tot felul de coeficienti din dezvoltari Bessel. Miscarea Lunii este destul de complicata iar programul o da cu precizii de secunde pe o intindere de cateva mii de ani.

-----------------------------------
Doru Dragan
23 Apr 2007 15:45


-----------------------------------
Turbo Basic nu am gasit de unde sa-l dai jos de pe net dar QBasic se gaseste aici:
http://www.petesqbsite.com/sections/introduction/intro.shtml
Da-l jos si programul o sa mearga fara probleme.
FreeBasic poti sa-l uiti.

-----------------------------------
larrylart
23 Apr 2007 17:39


-----------------------------------
http://www.voidware.com/moon_phase.htm
http://www.padre.ca/green/mphase.php
http://en.wikipedia.org/wiki/New_moon

sau in javascript .... e mai aproape de c++ ... :

http://www.fourmilab.ch/earthview/pacalc.html
http://www.fourmilab.ch/earthview/pacalc.js

or 

http://xjubier.free.fr/en/site_pages/LunarEclipseCalculator.html
http://xjubier.free.fr/javascript/MoonPhaseCalc.js
http://xjubier.free.fr/javascript/LunarEclipseCalc.js

si gasesti o gramada de altele daca faci un search pe google dupa moon phase ... 

Larry

-----------------------------------
Doru Dragan
23 Apr 2007 18:00


-----------------------------------
La adresa 
http://individual.utoronto.ca/kalendis/lunar/index.htm
e o prezentare foarte completa a problemelor care apar in studiul miscarilor Lunii. Pe Wikipedia sunt o gramada de informatii (de altfel de acolo am ajuns la adresa de mai sus). Dar singurul program care-ti rezolva problema e cel pe care ti l-am dat. :)

-----------------------------------
pavel
23 Apr 2007 18:05


-----------------------------------
Turbo Basic nu am gasit de unde sa-l dai jos de pe net dar QBasic se gaseste aici:
http://www.petesqbsite.com/sections/introduction/intro.shtml
Da-l jos si programul o sa mearga fara probleme.
FreeBasic poti sa-l uiti.
... l-am testat cu QBasic și funcționează (vă mulțumesc) ... am verificat rezultatele prog. postat de Dvs. cu cele de la  http://www.voidware.com/moon_phase.htm
http://www.padre.ca/green/mphase.php
http://en.wikipedia.org/wiki/New_moon
http://www.fourmilab.ch/earthview/pacalc.html
http://www.fourmilab.ch/earthview/pacalc.js
http://xjubier.free.fr/en/site_pages/LunarEclipseCalculator.html
http://xjubier.free.fr/javascript/MoonPhaseCalc.js
http://xjubier.free.fr/javascript/LunarEclipseCalc.js
... algoritmii de la paginile respective parcă nu se aplică pt. primul secol ... :roll:

-----------------------------------
red giant
23 Apr 2007 18:20


-----------------------------------
se pare că momentan nu pot downloda cartea (nu poate fi stabilită conexiunea cu serverul) ...

oops :) vezi PM

-----------------------------------
Doru Dragan
23 Apr 2007 18:35


-----------------------------------
Pentru ca sa intelegi, trebuie sa studiezi tot materialul postat de larryart si de mine. Se pot face aproximari destul de bune pe calea pe care ai mers tu. Unele din programele la care te-a trimis larryart asta fac, dar pe o intindere de cateva sute de ani sau mii de ani trebuie tinut cont de tot felul de factori osculatori (nu ma intreba ce-s aia) dezvoltari de serii etc. Matematica de nivel innalt. Poate daca mi-as pune mintea as reusi sa o patrund, dar de cand au aparut calculatoarele si fac asta repede si bine ... Un pic ma mira diferenta de doua ore si 30 minute :(

-----------------------------------
pavel
26 Apr 2007 14:43


-----------------------------------
Un pic ma mira diferenta de doua ore si 30 minute :(
... cred că am descoperit de unde vine acea diferență ... [url=http://sunearth.gsfc.nasa.gov/eclipse/phase/phases0001.html]&#916;T=02h55m pentru anul 10 e.n. ... cred că programul postat de Dvs. calculează Timpul Dinamic ... iar cel cu, care am comparat rezultatele calcula Timpul Universal ... tot mai este o diferență de câteva minute ... dar dacă este adevărat că [url=http://sunearth.gsfc.nasa.gov/eclipse/SEhelp/uncertainty2004.html]&#916;T nu poate fi calculat cu precizie, atunci totul e-n regulă ...

... vă mulțumesc la toți ... voi încerca să studiez în amănunt aceste surse ... deși am o presimțire că nu voi înțelege mare lucru ... dar nu se știe niciodată ...

ps: ... larrylart, ai avut o idee bună cu fișierele *.js ...

-----------------------------------
Doru Dragan
26 Apr 2007 14:45


-----------------------------------
Ori ce afli in plus, tine-ne te rog la curent pentru ca e o problema interesanta de mecanica cereasca.
