PDA

Vollständige Version anzeigen : gesucht: Funktion 3. Grades /// gegeben: lokales Minimum und lokales Maximum


yarno0815
22.08.2017, 17:31
Hallo Leute,
ich suche schon seit ein paar Stunden nach einer Möglichkeit eine Funktion 3. Grades aus zwei gegebenen Punkten (lokales Maximum und lokales Minimum) zu erstellen.

Ziel soll ein Diagramm sein, welches erstellt wird mit dem Funktionsgraphen.

Mein bisheriges Vorgehen (sehr indiskret und nicht korrekt^^):
Erstellen einer Datenreihe -> Punktdiagramm einfügen -> Trendlinie zeichnen -> Trendlinie formatieren -> polynomisch, Grad 3

Die Problematik ist: es gibt nur 2 Messpunkte mit x und zugehörigem y Wert (gleichzeitig sind die Punkte das lokale Maximum und das lokale Minimum). Die anderen Punkte der Datenreihe sind von mir beliebig gewählt. Die Funktion wurde also nach Augenmaß eingestellt.

http://imgur.com/a/sGwAp

Wie man sehen kann liegt das Maximum nicht genau im Maximum und das Minimum nicht exakt im Minimum.

Fragen
Es stellen sich mir folgende Fragen:
1. Ist es möglich in Excel anhand von dem Minimum und Maximum eine Funktion 3. Grades zeichnen zu lassen? Wenn ja wie könnte ich das am einfachsten umsetzen
2. gibt es bei der Trendlinie eine Möglichkeit Minima und Maxima einzugeben?

Mein Vorschlag
1. ich weiß nicht ob das möglich ist aber:
eine Datenreihe erstellen die eine Funktion F(x)=ax^3+bx^2+cx+d beschreibt. Die beiden Punkte (lokales Minimum/Maximum) Eintragen und falls irgendwie möglich mit einer "min/max value Funktion" die anderen Zahlenwerte automatisch generieren.

2. Alternatives Vorgehen (ähnlich wie im Schulmathematik Unterricht):
Lösen eines Linearen Gleichungssystems:
gegebene Bedingungen:

2 Punkte (Minimum und Maximum) f(Pmin), f(Pmax)
die beiden Ableitungen f'(x) müssen in den Punkten gleich 0 sein

somit hätte ich eine Funktion 3. Grades und 4 Bedingungen. Mit der berechneten Funktion 3. Grades könnte ich nun eine Datenreihe generieren und anschließend aus der Datenreihe ein Diagramm erstellen


Über eine Antwort würde ich mich sehr freuen,

Beste Grüße

lupo1
22.08.2017, 18:53
Die lokalen Extrema erhältst Du mit der 1. Ableitung = 0..

Storax
22.08.2017, 21:09
Und die zweite Ableitung ist ungleich Null.

PS Woher weisst Du eigentlich, dass die Messpunkte lokale Extrema sind?

yarno0815
22.08.2017, 22:51
Sodele danke für die Antworten, ich habe das wichtigste vergessen zu sagen^^

und zwar soll das nacher nicht nur eine Funktion 3. Grades sein sondern die Maxima/Minima verändern sich je nach Parameter einstellungen und es gibt 5^6=15.625 unterschiedliche Parameterkombinationen. Sprich es sollten nacher auch genauso viele unterschiedliche Funktionen 3. Grades erstellt werden.

Meint ihr das ist irgendwie möglich?

@Storax: Die Messpunkte sind Kraftmaxima/Kraftminima die gemessen werden. Leider fehlen die anderen Punkte der Funktion. Die anderen Punkte sollen qualitativ durch eine Funktion 3. Grades angenähert werden.

LG=)

Oge
23.08.2017, 00:42
Hallo yarno,

A) analytische Lösung
In der Anlage habe ich einmal die Berechnung (im Prinzip wie deine Alternative 2) in den Spalten E und F analytisch in der Allgemeinform durchgeführt und in der Spalte C für die konkreten Extrempunkte umgesetzt.

B)kleineres Gleichungssystem
Damit ich nicht ein Gleichungssystem mit vier Gleichungen und vier Unbekannten lösen muste habe ich die Ableitung durch ein allgemeines Polynom 2.Ordnung in Nullstellenform ersetzt. Hierdurch habe ich ein Gleichungssystem mit zwei Gleichungen und zwei Unbekannten erhalten.

C) Änderungen / Diagramm
In der Datei sind nur die grün hinterlegten Felder für geänderte Beispiele anzupassen.
1) Im Bereich B25:C26 werden die Extrempunkte eingetragen.
Sie werden im Diagramm als Kreuze dargestellt.
2) In den Zellen B32 und B30 können die der Startwert und die Schrittweite der X-Wert für die Kurve im Diagramm vorgegeben werden.
Abhängig von den Extremwerten sollten diese so gewählt werden, das beide Extremwerte im Intervall [Startwert:Startwert+1000*Schrittweite] liegen (da ich für die Kurve 1001 Stützpunkte habe).

ps.
zu den ca 16.000 Rechnungen
Wenn die Werte der Extrempunkte vernünftig in Tabellenform vorliegen kann man die fünf Formeln (a-e) leicht in ein Makro mit Schleife umsetzen. Bei nur 16.000 Berechnungen sollte die Rechenzeit eine kleine einstellige Sekundenzahl sein.

yarno0815
23.08.2017, 08:42
Wow Oge, vielen Dank für deine Antwort und Arbeit. Das sieht super aus. Ich werde es mir gleich zu Gemüt führen und es versuchen nachzuvollziehen was du gemacht hast.

LG

Oge
23.08.2017, 09:25
Hallo yarno,

sorry, war wohl zu spät heute früh.

Es sind doch nur einfache Funktionen und dafür wird kein Makro benötigt.

yarno0815
23.08.2017, 11:46
Hey,
also das war ja mathematisch ein Genie streich von dir :P habe dein analytisches Vorgehen nochmal mit einem Zettel und Stift durchgerechnet. Überragend ;)

Was meinst du damit dass es nur einfache Funktionen sind und kein Makro benötigt wird?

Ich habe noch ein paar Fragen wie du vorgegangen bist:


hast du das Gleichungssystem von Hand gelöst und dann die Funktion ins Excel eingetragen oder geht das auch direkt im Excel?
wie bist du vorgegangen bei der Erstellung? Wie bekomme ich so einen grauen Hintergrund hin? Und wie trage ich die Funktionen ein bzw. wie weiße ich die konstanten a,b,c,d ihren Werten zu?
Muss man dass im Excel VBA erstellen oder hast du alles in einem Tabellenblatt in Excel erstellt? Welche Fähigkeiten in Excel muss ich beherrschen wenn ich auch so ein Dokument erstellen möchte?


Liebe Grüße und vielen Dank für deine Mühe

Oge
23.08.2017, 12:39
Hallo yarno,

zu:hast du das Gleichungssystem von Hand gelöst und dann die Funktion ins Excel eingetragen oder geht das auch direkt im Excel? Wie bist du vorgegangen bei der Erstellung?
Ich habe die Formeln in den Spalten E und F "von Hand" von oben nach unten ermittelt. Im Standard-Excel geht das nicht, da braucht man schon Programme wie MathCad oder man muss in VBA ein Programm zur Lösung von Gleichungssystemen schreiben.

zu:Wie bekomme ich so einen grauen Hintergrund hin?
Mit "Zellen formatieren">"Ausfüllen"
Ich habe mir angewöhnt den von mir genutzten Bereich grau zu hinterlegen, damit ich bei späterer Nutzung nicht suchen muss bis wohin das Blatt genutzt wird.

zu:Und wie trage ich die Funktionen ein bzw. wie weiße ich die konstanten a,b,c,d ihren Werten zu?
Indem du wie in Spalte C Zeilen 7:9 und 21:22 die in E:F ermittelten Formeln auf die aktuelle Extrempunkte anwendest. Siehe auch Arbeitsblatt Liste im Anhang. Wie gesagt die Spalten E und F sind nur eine allgemeine Herleitung der Formeln.

zu:Muss man dass im Excel VBA erstellen oder hast du alles in einem Tabellenblatt in Excel erstellt? Welche Fähigkeiten in Excel muss ich beherrschen wenn ich auch so ein Dokument erstellen möchte?
Nein VBA ist nicht notwendig.
Wenn du nur die Formeln nutzen möchtest, solltest du sie abschreiben können. Siehe auch Arbeitsblatt Liste im Anhang.
Wenn du die Formeln selbst herleiten möchtest ist (auffrischen des) Schulwissen (ich glaube Klasse 11) notwendig.

yarno0815
24.08.2017, 15:52
Hi,
tut mir leid, also ich habe leider immer noch Probleme die was das Verständnis zur Erstellung deines Dokuments betrifft.

Was ich verstanden habe/nachvollziehen konnte:

Die mathematische Herleitung der Formeln und dass man in Excel eine Funktion mit „‘=“ definieren kann (vgl. https:// support.office. com/de-de/article/ZELLE-Funktion-51bd39a5-f338-4dbe-a33f-955d67c2b2cf)


Was ich nicht nachvollziehen kann:

warum ist in dem ersten Dokument kein Listenblatt? nur im zweiten Dokument?
Im ersten Dokument schreibst du die Formel z.B. in Zelle E12 „f(x) =“ und in F12 „'=e*x^3/3-(xmin+xmax)*e*x^2/2+xmin*xmax*e*x+d“ . Ist f(x) nun in Excel definiert? Oder muss ich die Funktion durch ein anderes Vorgehen definieren? im VBA?
in welchem Feld wird xmin und xmax definiert? Ich kann es leider nicht finden. Beides sind ja variablen, denn wenn ich sie in Zelle B8 oder B9 ändere verändert sich der Kurvenverlauf im Diagramm. Wie kann ich so etwas festlegen? Habe dazu folgenden Thread gefunden: oxxice-lxxsung.de/ftopic75968_0_0_asc.php [Tut mir leid musste den link schwärzen^^]. Die Eingabe erfolgt über VBA?


Also wenn ich das richtig verstanden habe hast du das erste Dokument mit VBA erstellt und das zweite Dokument ohne VBA nur mit Tabellen?

Vielen Dank für die Mühe und
Liebe Grüße

Oge
24.08.2017, 17:35
Hallo yarno,

zu:Was ich verstanden habe/nachvollziehen konnte:
... und dass man in Excel eine Funktion mit „‘=“ definieren kann
Das ist falsch.
Man kann in Excelzellen keine Funktionen in Zellen definieren. Ich habe Excel in den Spalten E und F nur wie ein Blatt Papier benutzt.
Das "'" vor dem "=" war nur notwendig um Excel mitzuteilen, dass der folgende Teil einfach als Text bearbeitet werden soll und nicht als Exelformel, obwohl das erste Zeichen ein "=" ist.

zu:warum ist in dem ersten Dokument kein Listenblatt? nur im zweiten Dokument?
Beim ersten Erstellen der Datei hatte die Anforderung für viele "Parametereinstellungen" noch nicht gesehen. Daher habe ich das Blatt beim zweiten hochladen noch hinzugefügt.

zu:in welchem Feld wird xmin und xmax definiert?
Damit ich beim Übertrag der Textformeln (Spalte F) in echte Excelformeln (Spalte C) nicht zu viel Arbeit hatte und nicht so viele Fehler machte, habe ich den genutzten Zellen einen Namen gegeben.
Der Name einer Zelle erscheint, wenn man diese auswählt, links oben in der Bearbeitungszeile

yarno0815
25.08.2017, 22:01
Super vielen Dank für deine Geduld und deine klar strukturierten Antworten. Ich wusste bisher nicht dass man in excel jeder Zelle einen Namen geben kann^^. Das ist ja superklasse=)))

Liebe Grüße