Gymnasieopgave : Solhøjde.

>    restart;with(plots):with(linalg):

Warning, the name changecoords has been redefined

Warning, the protected names norm and trace have been redefined and unprotected

Omregning fra grader til radianer

>    fak:=evalf(Pi)/180.0;

fak := .1745329252e-1

Spørgsmål 1 . Solens deklination delta (n)

>    delta:=n->23.45*fak*cos((n-174.0)/365.0*2*Pi);

delta := n -> 23.45*fak*cos(.5479452054e-2*(n-174.0)*Pi)

>    plot(delta(n)/fak,n=0..365);

[Maple Plot]

Spørgsmål 2 . Normalvektoren n_sol til solen i solplanen.

Her indsætter vi dagens nummer n = 253 for den 10. september

>    n:=253;

n := 253

>    n_sol:=[cos(delta(n)),0,sin(delta(n))];

n_sol := [cos(.4092797096*cos(.4328767123*Pi)), 0, sin(.4092797096*cos(.4328767123*Pi))]

Spørgsmål 3 . Normalvektoren n1_zenit til zenit i Sisimiut udtrykt i X1 Y1 Z-systemet.

Sisimiuts breddegrad phi  = 66 grader 56 min 6,62433 sekunder nordlig bredde

>    phi:=(66.0+56.0/60.0+6.62433/60.0/60.0)*fak;

phi := 1.168239162

Koordinatvektorerne til normalvektoren n1 i X1 Y1 Z -systemet.

>    n1_zenit:=[cos(phi),0,sin(phi)];

n1_zenit := [.3917723713, 0, .9200621768]

Spørgsmål 4 . Normalvektoren n_zenit til zenit i Sisimiut udtrykt i X Y Z-systemet.

Kooordinaterne vektoren fås ved at dreje vektoren n1's projektion i XY-planen timevinklen omega  .Timevinklen    pi   <= omega  <= pi  svarer til kl. 0 h til 24 h

>    n_zenit:=[cos(phi)*cos(omega),cos(phi)*sin(omega),sin(phi)];

n_zenit := [.3917723713*cos(omega), .3917723713*sin(omega), .9200621768]

Spørgsmål 5. Solenhøjden theta   er komplementvinklen til vinklen imellem enhedsnormalerne n_zenit og n_sol.

NB! Her bruger vi biblioteket   linalg   , der indeholder funktionen dotprod   , der kan beregne prikproduktet eller det skalære produkt imellem 2 vektorer.

>    theta:=arccos(dotprod(n_zenit,n_sol));

theta := arccos(.3917723713*cos(omega)*cos(.4092797096*cos(.4328767123*Pi))+.9200621768*sin(.4092797096*cos(.4328767123*Pi)))

>    plot(90.0-theta/fak,omega=-Pi..Pi,0..30);

[Maple Plot]

I stedet for timevinklen omega  kan vi indføre klokken t :

>    n_zenit:=[cos(phi)*cos((t-12)/12*Pi),cos(phi)*sin((t-12)/12*Pi),sin(phi)];

n_zenit := [.3917723713*cos(1/12*(t-12)*Pi), .3917723713*sin(1/12*(t-12)*Pi), .9200621768]

>    theta:=arccos(dotprod(n_zenit,n_sol));

theta := arccos(.3917723713*cos(1/12*(t-12)*Pi)*cos(.4092797096*cos(.4328767123*Pi))+.9200621768*sin(.4092797096*cos(.4328767123*Pi)))

Vi bruger nu kommandoerne textplot   og    display       

>    s:=textplot([12,40,"Solhøjden i Sisimiut den 10. september 2001"],align={left,above}):

>    p:=plot(90.0-theta(250)/fak,t=0..24,0..50):

>    display(s,p);

[Maple Plot]

>   

Stemmer det ????. Hvorfor ikke???