Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.javascript > #5269 > unrolled thread
| Started by | Leo Baumann <ib@leobaumann.de> |
|---|---|
| First post | 2021-11-26 21:19 +0100 |
| Last post | 2021-12-03 05:18 +0100 |
| Articles | 16 on this page of 36 — 4 participants |
Back to article view | Back to de.comp.lang.javascript
Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-26 21:19 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-11-27 02:53 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-11-27 02:59 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-27 03:31 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-11-27 04:32 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-27 04:51 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-27 06:00 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-27 06:28 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-11-27 06:50 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-11-27 19:41 +0100
Re: Fehler bei Berechnungen in JavaScript Stefan Reuther <stefan.news@arcor.de> - 2021-11-27 10:59 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-11-27 16:28 +0100
Re: Fehler bei Berechnungen in JavaScript Arno Welzel <usenet@arnowelzel.de> - 2021-11-28 00:53 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-28 05:47 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-11-29 00:51 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-29 15:41 +0100
Re: Fehler bei Berechnungen in JavaScript Arno Welzel <usenet@arnowelzel.de> - 2021-11-29 16:12 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-29 16:23 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-29 16:30 +0100
Re: Fehler bei Berechnungen in JavaScript Arno Welzel <usenet@arnowelzel.de> - 2021-11-29 16:56 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-29 17:00 +0100
Re: Fehler bei Berechnungen in JavaScript Arno Welzel <usenet@arnowelzel.de> - 2021-11-29 17:02 +0100
Re: Fehler bei Berechnungen in JavaScript Arno Welzel <usenet@arnowelzel.de> - 2021-11-29 17:02 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-29 17:06 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-29 17:10 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-29 23:46 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-11-30 04:12 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-12-01 14:29 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-12-02 01:27 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-12-02 02:20 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-12-02 04:00 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-12-02 07:11 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-12-03 03:51 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-12-03 04:57 +0100
Re: Fehler bei Berechnungen in JavaScript Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2021-12-03 05:33 +0100
Re: Fehler bei Berechnungen in JavaScript Leo Baumann <ib@leobaumann.de> - 2021-12-03 05:18 +0100
Page 2 of 2 — ← Prev page 1 [2]
| From | Leo Baumann <ib@leobaumann.de> |
|---|---|
| Date | 2021-11-29 17:00 +0100 |
| Message-ID | <so2teg$3fi$1@solani.org> |
| In reply to | #5289 |
Am 29.11.2021 um 16:56 schrieb Arno Welzel: >> Natürlich ist beides erfüllt, 10 x kontrolliert.:( > Also: > > Du sagst, dass hier würde NaN ergeben: > > Math.abs( > Math.acos( > Math.sin(bs) - > Math.sin(bb) * cose1 / Math.cos(bb) / Math.sin(h) > ) > ) > > Und bs, bb, cose1 und h sind gültige numerische Werte und Math.cos(bb) > sowie Math.sin(h) sind ungleich 0. > > Das ist aus meiner Sicht unmöglich. Darum bin ich aktuell auch verzweifelt und konfus. Definitiv sind cos(bb) sowie sin(h) ungleich Null und alle anderen sind gültige Werte.
[toc] | [prev] | [next] | [standalone]
| From | Arno Welzel <usenet@arnowelzel.de> |
|---|---|
| Date | 2021-11-29 17:02 +0100 |
| Message-ID | <j0kbthFlpooU2@mid.individual.net> |
| In reply to | #5290 |
Leo Baumann: > Am 29.11.2021 um 16:56 schrieb Arno Welzel: >>> Natürlich ist beides erfüllt, 10 x kontrolliert.:( >> Also: >> >> Du sagst, dass hier würde NaN ergeben: >> >> Math.abs( >> Math.acos( >> Math.sin(bs) - >> Math.sin(bb) * cose1 / Math.cos(bb) / Math.sin(h) >> ) >> ) >> >> Und bs, bb, cose1 und h sind gültige numerische Werte und Math.cos(bb) >> sowie Math.sin(h) sind ungleich 0. >> >> Das ist aus meiner Sicht unmöglich. > > Darum bin ich aktuell auch verzweifelt und konfus. Definitiv sind > cos(bb) sowie sin(h) ungleich Null und alle anderen sind gültige Werte. Ja - aber Math.acos(x) will für x einen Wert von -1 bis 1 haben. Das ist für den Ausdruck Math.sin(bs) - Math.sin(bb) * cose1 / Math.cos(bb) / Math.sin(h) nicht garantiert. -- Arno Welzel https://arnowelzel.de
[toc] | [prev] | [next] | [standalone]
| From | Arno Welzel <usenet@arnowelzel.de> |
|---|---|
| Date | 2021-11-29 17:02 +0100 |
| Message-ID | <j0kbrrFlpooU1@mid.individual.net> |
| In reply to | #5289 |
Arno Welzel: > Leo Baumann: > >> Am 29.11.2021 um 16:12 schrieb Arno Welzel: >>> Was ist "grüner Bereich"? Relevant ist, ob folgendes erfüllt ist: >>> >>> Math.cos(bb) != 0 >>> Math.sin(h) != 0 >> >> Natürlich ist beides erfüllt, 10 x kontrolliert. :( > > Also: > > Du sagst, dass hier würde NaN ergeben: > > Math.abs( > Math.acos( > Math.sin(bs) - > Math.sin(bb) * cose1 / Math.cos(bb) / Math.sin(h) > ) > ) > > Und bs, bb, cose1 und h sind gültige numerische Werte und Math.cos(bb) > sowie Math.sin(h) sind ungleich 0. > > Das ist aus meiner Sicht unmöglich. I stand corrected. Math.acos(x) will für x einen Wert von -1 bis 1 haben. Alle Werte unter -1 oder über 1 liefern NaN. Siehe auch: <https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Math/acos> -- Arno Welzel https://arnowelzel.de
[toc] | [prev] | [next] | [standalone]
| From | Leo Baumann <ib@leobaumann.de> |
|---|---|
| Date | 2021-11-29 17:06 +0100 |
| Message-ID | <so2tqm$4h0$1@solani.org> |
| In reply to | #5291 |
Am 29.11.2021 um 17:02 schrieb Arno Welzel: > I stand corrected. > > Math.acos(x) will für x einen Wert von -1 bis 1 haben. Alle Werte unter > -1 oder über 1 liefern NaN. > > Siehe auch: > > <https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Math/acos> ah - ok - danke - Ich werde prüfen.
[toc] | [prev] | [next] | [standalone]
| From | Leo Baumann <ib@leobaumann.de> |
|---|---|
| Date | 2021-11-29 17:10 +0100 |
| Message-ID | <so2u26$4rf$1@solani.org> |
| In reply to | #5291 |
Am 29.11.2021 um 17:02 schrieb Arno Welzel: > I stand corrected. > > Math.acos(x) will für x einen Wert von -1 bis 1 haben. Alle Werte unter > -1 oder über 1 liefern NaN. > > Siehe auch: > > <https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Math/acos> x wird -1.9896 danke - damit komme ich weiter :)
[toc] | [prev] | [next] | [standalone]
| From | Leo Baumann <ib@leobaumann.de> |
|---|---|
| Date | 2021-11-29 23:46 +0100 |
| Message-ID | <so3l8o$kjg$1@solani.org> |
| In reply to | #5285 |
Jetzt läuft die Integration durch. Ergebnisse aber zu groß. Ich suche weiter ...
[toc] | [prev] | [next] | [standalone]
| From | Leo Baumann <ib@leobaumann.de> |
|---|---|
| Date | 2021-11-30 04:12 +0100 |
| Message-ID | <so44rh$s9q$1@solani.org> |
| In reply to | #5295 |
Am 29.11.2021 um 23:46 schrieb Leo Baumann: > Jetzt läuft die Integration durch. Ergebnisse aber zu groß. > Ich suche weiter ... Hier nochmal die Winkel: https://www.lti.kit.edu/rd_download/Solarenergie_20081024_Sonne.pdf Aufsummiert wird cos(θ_gen/sin(γ_s)).- Ausschließen muss ich γ_s<0 weil die Sonne unter dem Horizont ist. Ausschließen muss ich auch Sonnenbestrahlung hinter die Fläche. Sieht jemand in der Zeichung im pdf welcher Winkel das ist? Die Zeichnung macht meine Augen wild ...
[toc] | [prev] | [next] | [standalone]
| From | Leo Baumann <ib@leobaumann.de> |
|---|---|
| Date | 2021-12-01 14:29 +0100 |
| Message-ID | <so7tca$r0h$1@solani.org> |
| In reply to | #5269 |
Am 26.11.2021 um 21:19 schrieb Leo Baumann:
> Hallo,
> das Programm berechnet das Integral (Simpson) der rel. Bestahlungsstärke
> einer geneigten Fläche durch die Sonne.
>
> Zwei funtionierende Programme für waagerechte und senkrechte Bestrahlung
> sind beigefügt.
>
> Simpsonneig() ist die Integration nach Simpson, function cosen() ist die
> Funktion für die rel. Bestrahlungsstärke.
>
> Die zugehörige Eingabe und der Aufruf für Simpsonneig() ist ganz unten.
>
> Für die eingetragenen Parameter kommt ein sinnvolles Ergebnis heraus,
> variiert man die Parameter, gibt es Probleme.
Das Script funktioniert jetzt für die meisten Parameter, aber wie sich
durch Vergleich mit dem anderen, zweiten Script zeigt, liefert die
Berechnungsgleichung für senkrechte Flächen falsche Ergebnisse. Die
Berechnungsgleichung aus dem Internet
https://www.lti.kit.edu/rd_download/Solarenergie_20081024_Sonne.pdf
e=(-Math.cos(ele)*Math.sin(neig)*Math.cos(ris-rif)+Math.sin(ele)*Math.cos(neig));
ist wohl falsch.
>
> Hier die Programme:
<!DOCTYPE HTML>
<html lang="de">
<head>
<script language="JavaScript">
function cose(t,bb,lb,pi,nwk)
{
ls=2*pi/24*t-pi;
bs=Math.sin(2*pi/8760*t-pi/2)*nwk;
e=Math.sin(bb)*Math.sin(bs)+Math.cos(bb)*Math.cos(bs)*Math.cos(ls-lb);
if (e<=0) e=0; // wenn die Sonne unter dem Horizont steht
wird das nicht mit gerechnet
return e
}
function sine(t,bb,lb,pi,nwk)
{
ls=2*pi/24*t-pi;
bs=Math.sin(2*pi/8760*t-pi/2)*nwk;
eh=Math.sin(bb)*Math.sin(bs)+Math.cos(bb)*Math.cos(bs)*Math.cos(ls-lb);
// *****cos(e)
e=Math.sqrt(1-Math.pow(eh,2)); // *****sin(e)
if (eh<0) e=0; // *****wenn die Sonne unter dem Horizont
steht wird das nicht mit gerechnet
return e
}
function cosen(t,bb,lb,pi,nwk,neig,rif)
{
ls=2*pi/24*t-pi; // Länge Sonne
bs=Math.sin(2*pi/8760*t-pi/2)*nwk; // Breite Sonne
cose1=Math.sin(bb)*Math.sin(bs)+Math.cos(bb)*Math.cos(bs)*Math.cos(ls-lb);
// cos des Winkels zum Subsonnenpunkt
h=Math.acos(cose1); // Winkel des Subsonnenpunktes im Ermittelpunkt
if (h!=0)
{rish=Math.sin(bb)-Math.sin(bs)*cose1/Math.cos(bs)/Math.sin(h);
ris=Math.abs(Math.acos(rish))} else if (h==0) {ris=0;} // Richtung zur Sonne
if (h!=0) {vz=Math.sin(ls-lb)*Math.cos(bs)/Math.sin(h);} else if
(h>=0) {vz=1;};
if (vz<0) {ris=-ris;}
ele=pi/2-Math.acos(Math.sin(bb)*Math.sin(bs)+Math.cos(bb)*Math.cos(bs)*Math.cos(ls-lb));
// Sonnenhöhe
if ((ele<=0)||(ele>=pi-neig)) {e=0;} else
{e=(-Math.cos(ele)*Math.sin(neig)*Math.cos(ris-rif)+Math.sin(ele)*Math.cos(neig));}
// /Math.sin(ele);}
//console.log(e);
return e
}
// Simpson() integriert über cose() von t=0 bis t=8760 Stunden,
also ein Jahr (waagerechte Fläche auf der Erde)
function Simpson()
{
var pi=Math.PI;
var lb=0;
var bb=Math.abs(parseFloat(document.eingabe3.gb.value)*pi/180);
var g=0;
var s=0;
var ug=0;
var og=8760;
var min=1023;
var nwk=23.5*pi/180;
var n=1;
var gs=2;
var te=Math.pow(10,-gs);
var sw=(og-ug)/2;
var c=cose(ug,bb,lb,pi,nwk)+cose(og,bb,lb,pi,nwk);
var u=cose(ug+sw,bb,lb,pi,nwk);
var sa=sw/3*(c+4*u);
do
{
sw=sw/2;
n=2*n+1;
g=g+u;
u=0;
for (t=1;t<=n;t=t+2)
{
u=u+cose(u+t*sw,bb,lb,pi,nwk);
}
s=sw/3*(c+2*g+4*u);
if (s==0) s=te;
fe=Math.abs((s-sa)/(15*s));
sa=s;
}while ((fe>te) || (n<min));
document.eingabe3.schritte.value=String(n+1);
document.eingabe3.fehler.value=String(Math.round(fe*1e8)/1e8);
document.eingabe3.erg.value=String(Math.round(sa/8760*1e4)/100);
document.eingabe3.erg1.value=String(Math.round(sa*100)/100);
}
// Simpsonsenk() integriert über sine() von t=0 bis t=8760
Stunden, also ein Jahr (senkrechte Fläche auf der Erde)
function Simpsonsenk()
{
var pi=Math.PI;
var lb=0;
var bb=Math.abs(parseFloat(document.eingabe10.gb.value)*pi/180);
var g=0;
var s=0;
var ug=0;
var og=8760;
var min=1023;
var nwk=23.5*pi/180;
var n=1;
var gs=2;
var te=Math.pow(10,-gs);
var sw=(og-ug)/2;
var c=sine(ug,bb,lb,pi,nwk)+cose(og,bb,lb,pi,nwk);
var u=sine(ug+sw,bb,lb,pi,nwk);
var sa=sw/3*(c+4*u);
if (bb<=nwk) nwk=bb; // *****für den Fall, dass der
Beobachter innerhalb des Wendekreises ist
do
{
sw=sw/2;
n=2*n+1;
g=g+u;
u=0;
for (t=1;t<=n;t=t+2)
{
u=u+sine(u+t*sw,bb,lb,pi,nwk);
}
s=sw/3*(c+2*g+4*u);
if (s==0) s=te;
fe=Math.abs((s-sa)/(15*s));
sa=s;
}while ((fe>te) || (n<min));
document.eingabe10.schritte.value=String(n+1);
document.eingabe10.fehler.value=String(Math.round(fe*1e8)/1e8);
document.eingabe10.erg.value=String(Math.round(sa/8760*1e4)/100);
document.eingabe10.erg1.value=String(Math.round(sa*100)/100);
}
// Simpsonneig() integriert über cose() von t=0 bis t=8760
Stunden, also ein Jahr (geneigte Fläche auf der Erde)
function Simpsonneig()
{
var pi=Math.PI;
var lb=0;
var bb=Math.abs(parseFloat(document.eingabe11.gb.value)*pi/180);
var neig=parseFloat(document.eingabe11.neig.value)*pi/180;
var rif=parseFloat(document.eingabe11.rif.value)*pi/180;
var g=0;
var s=0;
var ug=0;
var og=8760;
var min=1023;
var nwk=23.5*pi/180;
var n=1;
var gs=2;
var te=Math.pow(10,-gs);
var sw=(og-ug)/2;
var c=cosen(ug,bb,lb,pi,nwk,neig,rif)+cosen(og,bb,lb,pi,nwk,neig,rif);
var u=cosen(ug+sw,bb,lb,pi,nwk,neig,rif);
var sa=sw/3*(c+4*u);
if (bb<=nwk) nwk=bb; // *****für den Fall, dass der
Beobachter innerhalb des Wendekreises ist
do
{
sw=sw/2;
n=2*n+1;
g=g+u;
u=0;
for (t=1;t<=n;t=t+2)
{
u=u+cosen(u+t*sw,bb,lb,pi,nwk,neig,rif);
}
s=sw/3*(c+2*g+4*u);
if (s==0) s=te;
fe=Math.abs((s-sa)/(15*s));
sa=s;
}while ((fe>te) || (n<min));
document.eingabe11.schritte.value=String(n+1);
document.eingabe11.fehler.value=String(Math.round(fe*1e8)/1e8);
document.eingabe11.erg.value=String(Math.round(sa/8760*1e4)/100);
document.eingabe11.erg1.value=String(Math.round(sa*100)/100);
}
</script>
</head>
<a name="Start"></a>
<body link="#0000cb" vlink="#00008b" alink="#ff8c00"
background="grid.gif">
<p><center><font face="Eras Bold ITC"><h1 style= "color:
#0000cb"><u>Berechnungsprogramme</u></h1></font></center></p>
<p><table border=1 bordercolor="0000b0" cellspacing="7" bgcolor="#fffff0">
<tr><th>Art der Berechnung:</th></tr>
<tr><td><img src="pfeilre.gif"><a href="#Sonne">effektive
Sonnenbestrahlung, waagerechte Fläche</a></td></tr>
<tr><td><img src="pfeilre.gif"><a href="#Sonnesenk">effektive
Sonnenbestrahlung, senkrechte Fläche</a></td></tr>
<tr><td><img src="pfeilre.gif"><a href="#Sonneneig">effektive
Sonnenbestrahlung, geneigte Fläche</a></td></tr>
</table></p>
<p><hr noshade color="#000000" size=1></p>
<a name="Sonne"></a>
<p><h4 style="color:#000000"><u><b>Berechnung der effektiven
Bestrahlungsstärke der waagerechten Fläche durch die
Sonne</b></u></h4></p>
<p>Wieviel Prozent der Sonnenstrahlung fällt auf eine waagerechte
Fläche an der angegebenen geografischen Position, weil die Sonne ja
nicht
unbedingt senkrecht über dieser steht und außerdem dem
Tageszeiten- und Jahreszeitenverlauf unterliegt? Die eingetragenen
Koordinaten gehören zu Mainflingen-Offenbach. Die Berechnung ist
schwierig, weil über folgende Großkreisformel
integriert werden muß, und zwar von 0 bis 365 x 24 Stunden.</p>
<p><center>cos(e) = sin(bf)*sin(bs)+cos(bf)*cos(bs)*cos(ls-lf)</center>
<center>mit ls=2*pi/24*t-pi und bs=nWK*sin(2*pi/365/24*t-pi/2) den
Koordinaten des Subsonnenpunktes</center></p>
<p>Auch in Kugelkoordinaten ist diese Berechnung schwierig. Darum
empfiehlt sich hier die SIMPSON-Formel. Für beliebige Koordinaten auf
der Erdoberfläche ist diese Iteration hier geeignet.</p>
<p><table border=1 bordercolor="#0000b0"cellpadding="10"
cellspacing="7" bgcolor="#fffff0">
<tr><th colspan="2">effektive Sonnenbestrahlung,
Bestrahlungsstärke, waagerechte Fläche</th></tr><tr><td>
<form name="eingabe3">
<input name="gb" type="text" size=12 value="50.1"> geografische Breite
der Fläche in Dezimalgrad (südlich negativ)<br>
<input name="schritte" type="text" readonly size=12> <span
style="color:#ff0000;">Anzahl der Intervalle der Integration</span><br>
<input name="fehler" type="text" readonly size=12> <span
style="color:#0000ff;">Rechenfehler</span><br>
<input name="erg" type="text" readonly size=12> <span
style="color:#ff0000;">% der wirksamen Bestrahlungsstärke durch die
Sonne</span><br>
<input name="erg1" type="text" readonly size=12> <span
style="color:#0000ff;">äquivalente Sonnen-Stunden senkrechter
Einstrahlung</span><br>
<input name="rechnen" type="button" value="Berechnen"
onClick="Simpson()"><center><img src="sunshine.gif"></center>
</form>
</table></p>
<a name="Sonnesenk"></a>
<p><h4 style="color:#000000"><u><b>Berechnung der effektiven
Bestrahlungsstärke der senkrechten Fläche durch die
Sonne</b></u></h4></p>
<p>Wieviel Prozent der Sonnenstrahlung fällt auf eine senkrechte,
nach Süden bzw. Norden zeigende Fläche an der angegebenen
geografischen Position, weil die Sonne ja nicht
unbedingt senkrecht über dieser steht und außerdem dem
Tageszeiten- und Jahreszeitenverlauf unterliegt? Die eingetragenen
Koordinaten gehören zu Mainflingen-Offenbach. Die Berechnung ist
schwierig, weil über folgende Großkreisformel
integriert werden muß, und zwar von 0 bis 365 x 24 Stunden.</p>
<p><center>sin(e) =
sqrt(1-(sin(bf)*sin(bs)+cos(bf)*cos(bs)*cos(ls-lf))²)</center>
<center>mit ls=2*pi/24*t-pi und bs=nWK*sin(2*pi/365/24*t-pi/2) den
Koordinaten des Subsonnenpunktes</center></p>
<p>Auch in Kugelkoordinaten ist diese Berechnung schwierig. Darum
empfiehlt sich hier die SIMPSON-Formel. Für beliebige Koordinaten auf
der Erdoberfläche ist diese Iteration hier geeignet.</p></p>
<p><table border=1 bordercolor="#0000b0"cellpadding="10"
cellspacing="7" bgcolor="#fffff0">
<tr><th colspan="2">effektive Sonnenbestrahlung,
Bestrahlungsstärke, senkrechte Fläche</th></tr><tr><td>
<form name="eingabe10">
<input name="gb" type="text" size=12 value="50.1"> geografische Breite
der Fläche in Dezimalgrad (südlich negativ)<br>
<input name="schritte" type="text" readonly size=12> <span
style="color:#ff0000;">Anzahl der Intervalle der Integration</span><br>
<input name="fehler" type="text" readonly size=12> <span
style="color:#0000ff;">Rechenfehler</span><br>
<input name="erg" type="text" readonly size=12> <span
style="color:#ff0000;">% der wirksamen Bestrahlungsstärke durch die
Sonne</span><br>
<input name="erg1" type="text" readonly size=12> <span
style="color:#0000ff;">äquivalente Sonnen-Stunden senkrechter
Einstrahlung</span><br>
<input name="rechnen" type="button" value="Berechnen"
onClick="Simpsonsenk()"><center><img src="sunshine.gif"></center>
</form>
</table></p>
<a href="#Start">[Oben]</a><a href="index.htm"
target="_parent">[Anfang]</a>
<p><hr noshade color="#000000" size=1></p>
<a name="Sonneneig"></a>
<p><h4 style="color:#000000"><u><b>Berechnung der effektiven
Bestrahlungsstärke der geneigten Fläche durch die
Sonne</b></u></h4></p>
<p>Wieviel Prozent der Sonnenstrahlung fällt auf eine geneigte,
nach Süden bzw. Norden zeigende Fläche an der angegebenen
geografischen Position, weil die Sonne ja nicht
unbedingt senkrecht über dieser steht und außerdem dem
Tageszeiten- und Jahreszeitenverlauf unterliegt? Die eingetragenen
Koordinaten gehören zu Mainflingen-Offenbach.</p>
<p><table border=1 bordercolor="#0000b0"cellpadding="10"
cellspacing="7" bgcolor="#fffff0">
<tr><th colspan="2">effektive Sonnenbestrahlung,
Bestrahlungsstärke, geneigte Fläche</th></tr><tr><td>
<form name="eingabe11">
<input name="gb" type="text" size=12 value="50.1"> geografische Breite
der Fläche in Dezimalgrad (südlich negativ)<br>
<input name="neig" type="text" size=12 value="45"> Neigung der
Fläche in Grad<br>
<input name="rif" type="text" size=12 value="180"> Richtung der
Fläche in Grad<br>
<input name="schritte" type="text" readonly size=12> <span
style="color:#ff0000;">Anzahl der Intervalle der Integration</span><br>
<input name="fehler" type="text" readonly size=12> <span
style="color:#0000ff;">Rechenfehler</span><br>
<input name="erg" type="text" readonly size=12> <span
style="color:#ff0000;">% der wirksamen Bestrahlungsstärke durch die
Sonne</span><br>
<input name="erg1" type="text" readonly size=12> <span
style="color:#0000ff;">äquivalente Sonnen-Stunden senkrechter
Einstrahlung</span><br>
<input name="rechnen" type="button" value="Berechnen"
onClick="Simpsonneig()"><center><img src="sunshine.gif"></center>
</form>
</table></p>
<a href="#Start">[Oben]</a><a href="index.htm"
target="_parent">[Anfang]</a>
</body>
</html>
[toc] | [prev] | [next] | [standalone]
| From | Thomas 'PointedEars' Lahn <PointedEars@web.de> |
|---|---|
| Date | 2021-12-02 01:27 +0100 |
| Message-ID | <4361753.LvFx2qVVIh@PointedEars.de> |
| In reply to | #5297 |
Leo Baumann wrote: > Das Script funktioniert jetzt für die meisten Parameter, aber wie sich > durch Vergleich mit dem anderen, zweiten Script zeigt, liefert die > Berechnungsgleichung für senkrechte Flächen falsche Ergebnisse. Die > Berechnungsgleichung aus dem Internet > > https://www.lti.kit.edu/rd_download/Solarenergie_20081024_Sonne.pdf > > e=(-Math.cos(ele)*Math.sin(neig)*Math.cos(ris- rif)+Math.sin(ele)*Math.cos(neig)); > > ist wohl falsch. Wahrscheinlicher ist, dass Du sie falsch implementiert hast, aufgrund Deiner unstrukturierten Vorgehensweise. GIGO. >> Hier die Programme: Trotz ausführlicher Hinweise und Erklärungen immer noch derselbe Müll :-( -- PointedEars FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix> <https://github.com/PointedEars> | <http://PointedEars.de/wsvn/> Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.
[toc] | [prev] | [next] | [standalone]
| From | Leo Baumann <ib@leobaumann.de> |
|---|---|
| Date | 2021-12-02 02:20 +0100 |
| Message-ID | <so971e$9aj$2@solani.org> |
| In reply to | #5298 |
Am 02.12.2021 um 01:27 schrieb Thomas 'PointedEars' Lahn: > Wahrscheinlicher ist, dass Du sie falsch implementiert hast, aufgrund Deiner > unstrukturierten Vorgehensweise. GIGO. Nein, das ist geprutscht, liefert aber für waagerechte Flächen das richtige Ergebnis - für senkrechte nicht.
[toc] | [prev] | [next] | [standalone]
| From | Thomas 'PointedEars' Lahn <PointedEars@web.de> |
|---|---|
| Date | 2021-12-02 04:00 +0100 |
| Message-ID | <1951559.oMNUckLgyt@PointedEars.de> |
| In reply to | #5299 |
Leo Baumann wrote:
> Am 02.12.2021 um 01:27 schrieb Thomas 'PointedEars' Lahn:
>> Wahrscheinlicher ist, dass Du sie falsch implementiert hast, aufgrund
>> Deiner unstrukturierten Vorgehensweise. GIGO.
>
> Nein, das ist geprutscht,
^^^^^^^^^^
Wie bitte?
> liefert aber für waagerechte Flächen das richtige Ergebnis - für
> senkrechte nicht.
cos(90°) = 0, insofern ist das kein Wunder.
--
PointedEars
FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix>
<https://github.com/PointedEars> | <http://PointedEars.de/wsvn/>
Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.
[toc] | [prev] | [next] | [standalone]
| From | Leo Baumann <ib@leobaumann.de> |
|---|---|
| Date | 2021-12-02 07:11 +0100 |
| Message-ID | <so9o2s$ism$1@solani.org> |
| In reply to | #5300 |
Am 02.12.2021 um 04:00 schrieb Thomas 'PointedEars' Lahn: >> liefert aber für waagerechte Flächen das richtige Ergebnis - für >> senkrechte nicht. > cos(90°) = 0, insofern ist das kein Wunder. Nun, das Integral über sin(e) = sqrt(1-(sin(bf)*sin(bs)+cos(bf)*cos(bs)*cos(ls-lf))²) mit ls=2*pi/24*t-pi und bs=nWK*sin(2*pi/365/24*t-pi/2) den Koordinaten des Subsonnenpunktes liefert das richtige Ergebnis, also ist das Integral cos(e)=(-Math.cos(ele)*Math.sin(neig)*Math.cos(ris-rif)+Math.sin(ele)*Math.cos(neig)) für einen Neigungswinkel von 90 Grad nicht geeignet. Ersteres habe ich selber hergeleitet, zweiteres ist Zweifelhaftes aus dem Internet von: https://www.lti.kit.edu/rd_download/Solarenergie_20081024_Sonne.pdf
[toc] | [prev] | [next] | [standalone]
| From | Thomas 'PointedEars' Lahn <PointedEars@web.de> |
|---|---|
| Date | 2021-12-03 03:51 +0100 |
| Message-ID | <2220571.ElGaqSPkdT@PointedEars.de> |
| In reply to | #5301 |
Leo Baumann wrote: > Am 02.12.2021 um 04:00 schrieb Thomas 'PointedEars' Lahn: >>> liefert aber für waagerechte Flächen das richtige Ergebnis - für >>> senkrechte nicht. >> cos(90°) = 0, insofern ist das kein Wunder. > > Nun, das Integral über > > sin(e) = sqrt(1-(sin(bf)*sin(bs)+cos(bf)*cos(bs)*cos(ls-lf))²) > > mit ls=2*pi/24*t-pi und bs=nWK*sin(2*pi/365/24*t-pi/2) den Koordinaten > des Subsonnenpunktes > > liefert das richtige Ergebnis, Na dann ist ja alles gut. Und was heisst nun „geprutscht“? -- PointedEars FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix> <https://github.com/PointedEars> | <http://PointedEars.de/wsvn/> Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.
[toc] | [prev] | [next] | [standalone]
| From | Leo Baumann <ib@leobaumann.de> |
|---|---|
| Date | 2021-12-03 04:57 +0100 |
| Message-ID | <soc4ji$6bu$1@solani.org> |
| In reply to | #5302 |
Am 03.12.2021 um 03:51 schrieb Thomas 'PointedEars' Lahn: > Und was heisst nun „geprutscht“? "Geprutscht" heisst zusammengestrickt, gemogelt, unsauber programmiert.
[toc] | [prev] | [next] | [standalone]
| From | Thomas 'PointedEars' Lahn <PointedEars@web.de> |
|---|---|
| Date | 2021-12-03 05:33 +0100 |
| Message-ID | <2804250.e9J7NaK4W3@PointedEars.de> |
| In reply to | #5303 |
Leo Baumann wrote: > Am 03.12.2021 um 03:51 schrieb Thomas 'PointedEars' Lahn: >> Und was heisst nun „geprutscht“? > > "Geprutscht" heisst zusammengestrickt, gemogelt, unsauber programmiert. Ahja. -- PointedEars FAQ: <http://PointedEars.de/faq> | <http://PointedEars.de/es-matrix> <https://github.com/PointedEars> | <http://PointedEars.de/wsvn/> Twitter: @PointedEars2 | Please do not cc me./Bitte keine Kopien per E-Mail.
[toc] | [prev] | [next] | [standalone]
| From | Leo Baumann <ib@leobaumann.de> |
|---|---|
| Date | 2021-12-03 05:18 +0100 |
| Message-ID | <soc5r0$6up$1@solani.org> |
| In reply to | #5302 |
Am 03.12.2021 um 03:51 schrieb Thomas 'PointedEars' Lahn: > Na dann ist ja alles gut Nun, nein - nicht alles ist gut. Ich wollte gerne die äquivalenten Sonnenstunden senkrechter Einstrahlung für geneigte Flächen berechnen. Und natürlich so, dass die Ergebnisse nicht nur für waagerechte Flächen, sondern auch für senkrechte Flächen mit den beiden ersten Skripten übereinstimmt. So bin ich noch nicht weiter ...
[toc] | [prev] | [standalone]
Page 2 of 2 — ← Prev page 1 [2]
Back to top | Article view | de.comp.lang.javascript
csiph-web