willard Geschrieben 15. Mai 2009 Geschrieben 15. Mai 2009 Mein Mathe-Schlauch hat wieder mal einen Knopf drin. Eine scheinbar einfache Aufgabe, aber schaffs gerade nicht: Wie berechne ich mit einer allgemein gültigen Formel einen Mittelwert zwischen 2 Windrichtungen? Beispiel: Wind 1: 320 Grad Wind 2: 20 Grad Mittelwert: 350 Grad Der Extremfall von 2 Richtungen, die genau entgegengesetzt sind, muss nicht abgedeckt werden (Wind 1 aus Westen, Wind 2 aus Osten, Mittelwert = Nord oder Süd?). Besten Dank im voraus für Eure Hilfe. Zitieren
Andy83 Geschrieben 15. Mai 2009 Geschrieben 15. Mai 2009 Moin! Die Differenz zwischen den beiden Richtungen ist 60°. Denn 320° plus 60° sind ja wieder 20°. So, die Hälfte von 60° (Mitte..) ist 30°. 320° plus diese 30° sind nun die 350°. Ganz einfach, Gruss Andy Zitieren
willard Geschrieben 15. Mai 2009 Autor Geschrieben 15. Mai 2009 Danke Andy, aber im Kopf rechnen kann ich das auch :-) Nein, ich suche eine Formel, mit der ich dies auch einem Computer klarmachen kann. Das Problem sind ja Winkelpaare, die wie in meinem Beispiel über die 360/0-Gradmarke hinausgehen. Da reicht es dann nicht mehr, das arithmetische Mittel zu berechnen. Zitieren
Mike Rider Geschrieben 15. Mai 2009 Geschrieben 15. Mai 2009 Falls Du einen Übersprung von 360/0 hast, rechnest Du einfach 360 dazu. in deinem Beispiel: Wind 2 = 380 Grad. Nachher: Wind1 + Wind2 / 2 = Mittelwert. 320 + 380 = 700 / 2 = 350 Zitieren
willard Geschrieben 15. Mai 2009 Autor Geschrieben 15. Mai 2009 Michel, danke für die Antwort. Das ist mir aber soweit schon klar. Mit einem Algorythmus kann ich das Problem auch leicht lösen. Ich suche aber nach einer einfachen (Excel-)Formel. Wie ich da testen kann, ob ich einen solchen Sprung über die Nullgradmarke habe, ist mir leider noch nicht klar. Zitieren
Argoth Geschrieben 15. Mai 2009 Geschrieben 15. Mai 2009 Hab mal was getüftelt.. Habe die formel aber noch nicht getestet(!) =((360-Feld1)+(360-Feld2)+Grösseres Feld von beiden) /2 Zitieren
oneworldflyer Geschrieben 15. Mai 2009 Geschrieben 15. Mai 2009 Es geht einfacher in Excel: =Mittelwert(Wert1; Wert2; Wert3; etc.) Um die 360°-Schwelle zu berücksichtigen, einfach alle Windangaben umformulieren, z.b. 020° = 380°. Sollte funktionieren. Habe diese Formel für meine Maturaarbeit gebraucht. Bsp.: Wert1: 350° Wert2: 020° -> 380° (360° + x) =Mittelwert(350; 380) = 365° Zitieren
Mike Rider Geschrieben 15. Mai 2009 Geschrieben 15. Mai 2009 ebenfalls ungetestet: ((grösseress Feld) - (kleineres Feld)) / 2 + 180 Zitieren
willard Geschrieben 15. Mai 2009 Autor Geschrieben 15. Mai 2009 Aaron: Interessanter Ansatz. Aber funktioniert leider nicht. Florens: Das klappt definitiv nicht. Das würde in meinem Beispiel einen Mittelwert von 170 Grad ergeben. Michel: Auch diese Formel führt nicht zum gewünschten Ergebnis. Zitieren
oneworldflyer Geschrieben 15. Mai 2009 Geschrieben 15. Mai 2009 Florens: Das klappt definitiv nicht. Das würde in meinem Beispiel einen Mittelwert von 170 Grad ergeben. Warum? 320 + (360+20) = 700 / 2 = 350 Edit: ich versuche eine Formel mit IF/THEN zu basteln. Zitieren
oneworldflyer Geschrieben 15. Mai 2009 Geschrieben 15. Mai 2009 Da hast Du Deine Formel: =WENN(180<A1<360;A1;360+A1) Diese Formel überwacht, ob Dein Wert zwischen 180° und 360° liegt. Wenn ja, nimmt er den Wert. Wenn nein, dann addiert er 360° dazu. Voilà Zitieren
sheckley666 Geschrieben 16. Mai 2009 Geschrieben 16. Mai 2009 Da hast Du Deine Formel: =WENN(180<A1<360;A1;360+A1) Diese Formel überwacht, ob Dein Wert zwischen 180° und 360° liegt. Wenn ja, nimmt er den Wert. Wenn nein, dann addiert er 360° dazu. Voilà Hallo zusammen, die Chance für meinen Erstling hier: Florens, Dein Vorschlag funktioniert leider auch nicht! A1 = 140° A2 = 200° Ergibt nach deiner Formel 350°, weil du aus A1 500° machst. Mein Vorschlag: Wenn A2-A1 zwischen -180° und +180° liegt, dann normaler Mittelwert. Ansonsten Mittelwert + 180° Grüße, Frank Zitieren
oneworldflyer Geschrieben 16. Mai 2009 Geschrieben 16. Mai 2009 Ergibt nach deiner Formel 350°, weil du aus A1 500° machst. Das ist schon komisch. Die Bedingung ist ja, dass wenn A1 zwischen 180° und 360° ist, dass dann der Wert von A1 unverändert genommen wird. Ist die Bedingung nicht erfüllt, dann muss 360° addiert werden. Wahrscheinlich ist der Code falsch, die Idee dahinter muss aber funktionieren. Zitieren
sheckley666 Geschrieben 16. Mai 2009 Geschrieben 16. Mai 2009 Ich glaube, dass deine Idee schon falsch ist. Betrachte doch mal diese drei Fälle: Erstens: A1 = 177° A2 = 179° Zweitens: A1 = 179° A2 = 181° Drittens: A1 = 181° A2 = 183° Sie unterscheiden sich fast nicht. Trotzdem behandelst du sie extrem unterschiedlich! Richtig ist natürlich, dass man eine Fallunterscheidung machen muss. Die entscheidende Frage ist aber, ob das "V", das die zwei Windrichtungen aufspannen, die Null-Grad-Linie mit überstreicht, oder nicht. Und das stellt man fest, in dem man prüft, ob die Differenz A2 - A1 größer 180° (oder ggf. kleiner -180°) ist. Grüsse, Frank Zitieren
Markus "Tomcat" Geschrieben 16. Mai 2009 Geschrieben 16. Mai 2009 Irgendwie die MOD Funktion einbauen? Hmmm ... Zitieren
oneworldflyer Geschrieben 17. Mai 2009 Geschrieben 17. Mai 2009 Erstens:A1 = 177° A2 = 179° Zweitens: A1 = 179° A2 = 181° Drittens: A1 = 181° A2 = 183° Das ist allerdings ein interessantes Problem. Meine Idee funktioniert nur teilweise.. Die Idee muss also sein: Bedingung a) Beide Werte sind entweder beide zwischen 180 u. 360 oder zwischen 001 und 179. Dann gilt: [b](A1+A2) / 2[/b] Bedingung b) Je ein Wert ist zwischen 180 u. 360 und 001 u. 179. Dann gilt: [b][A1+(A2+360)] / 2[/b] Das müsste nun funktionieren. Jedoch sehe ich ein, dass das Rechnen mit der Differenz von A1 und A2 einfacher sein muss. Zitieren
dschaedl Geschrieben 17. Mai 2009 Geschrieben 17. Mai 2009 Bedingung b) Je ein Wert ist zwischen 180 u. 360 und 001 u. 179. Dann gilt: [b][A1+(A2+360)] / 2[/b] hmmm.... : (190+170+360)/2 = 360 :eek: Zitieren
X-Plane Geschrieben 18. Mai 2009 Geschrieben 18. Mai 2009 Hallo Ich habe mich damit auch schon den Kopf zerbrochen. Am Schluss hatte ich im Excel die korrekte Formel gefunden (allerdings liegt die Datei auf einem anderen PC, d.h. ich kann die Formel nicht sofort liefern). Wenn ich mich richtig erinnere muss man 4 Fälle unterscheiden, je nachdem in welchem "Quadrant" (0-90, 90-180 usw.) man sich befindet... Grüsse, François Zitieren
polar Geschrieben 19. Mai 2009 Geschrieben 19. Mai 2009 Hallo Ich denke es geht auch ohne Fallunterscheidungen. Fallunterscheidungen sind erstens nicht so schön und zweitens wollte Thomas keinen Algorithmus sondern eine Formel (und für mich ist etwas mit Fallunterscheidungen ein Algorithmus :)). Wieso nicht einfach die Windrichtungen in Vektorschreibweise ausdrücken, dann diese zusammenzählen und Winkel der Resultierenden bestimmen. Das sollte in einer Zeile und ohne Fallunterscheidungen machbar sein. Gruss Philippe Zitieren
oneworldflyer Geschrieben 19. Mai 2009 Geschrieben 19. Mai 2009 Windrichtungen in Vektorschreibweise Wie soll das gehen? Da bräuchtest Du ja die Koordinaten im 3 (?)-Dimensionalen Raum. Das gibt dann mindestens so viel zu tun wie mit Fallunterscheidungen. Die 4 Fälle leuchten aber ein... Zitieren
polar Geschrieben 19. Mai 2009 Geschrieben 19. Mai 2009 Wie soll das gehen? Da bräuchtest Du ja die Koordinaten im 3 (?)-Dimensionalen Raum. Das gibt dann mindestens so viel zu tun wie mit Fallunterscheidungen. das geht sehr einfach....2d reicht, Zentrum vorzugsweise bei (0,0)... damit v=(x,y)=(sin(theta), cos(theta)) ... elementarste Geometrie.... (ich hoffe sowas wird heut in der Schule noch behandelt, inkl Vektoraddition... und nicht nur modernes zeug wie Mengenlehre usw ;)) Mag sein, dass es ein wenig was zu tun gibt, aber die Aufgabe war ja das ganze als mathematische Formel und nicht als Algorithmus darzustellen (und wenn IFs drin sind, dann ist das ein Algorithmus, egal ob das in Excel nun immer noch Formel heisst oder nicht ;)) Gruss Philippe Zitieren
oneworldflyer Geschrieben 19. Mai 2009 Geschrieben 19. Mai 2009 das geht sehr einfach....2d reicht, Zentrum vorzugsweise bei (0,0)... damit v=(x,y)=(sin(theta), cos(theta)) ... elementarste Geometrie.... (ich hoffe sowas wird heut in der Schule noch behandelt, inkl Vektoraddition... und nicht nur modernes zeug wie Mengenlehre usw ) Haha sorry, ich realisiere gerade an was ich gedacht habe... Ich habe an Vektorgeometrie (Richtungsvektoren) gedacht und habe mich gewundert, woher Du den Vektor kennst, wenn die Windstärke ja nicht bekannt ist... Tja, ich realisiere, dass die Grundlagen verloren gehen, wenn man sich nur noch mit so abstrakten x und y Rechnungen, Wahrscheinlichkeitsverteilungen, Kurvendiskussion und so beschäftigen muss :rolleyes: *duckundweg* Zitieren
X-Plane Geschrieben 19. Mai 2009 Geschrieben 19. Mai 2009 Das wollte ich auch noch probieren. Man muss aber auf "Rad" umstellen (d.h. 360 Grad = 2Pi), nicht wahr? Dann könnte es funktionieren. Ich werde es aber auch noch checken. Gruss, François Zitieren
oneworldflyer Geschrieben 19. Mai 2009 Geschrieben 19. Mai 2009 Das wollte ich auch noch probieren. Man muss aber auf "Rad" umstellen (d.h. 360 Grad = 2Pi), nicht wahr? Dann könnte es funktionieren. Ich werde es aber auch noch checken. Gruss, François Jo müsste man, wenn man mit Sinus etc. rechnet. =(Bogenmass(xx)) Zitieren
X-Plane Geschrieben 19. Mai 2009 Geschrieben 19. Mai 2009 Und wie lautet nun die ganze Formel im Excel? Ich habs nämlich immer noch nicht ! Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.