www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Maple" - Differenzieren von "Piecewise"
Differenzieren von "Piecewise" < Maple < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Maple"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Differenzieren von "Piecewise": Problem
Status: (Frage) beantwortet Status 
Datum: 23:02 So 05.11.2006
Autor: Karohemd

Hallo zusammen,
aufgrund eines Problems, das ich in Maple habe, bin ich auf dieses Forum gestoßen. Ich habe Maple erst letzten Monat anfangen zu lernen und habe noch demenstprechend meine Schwierigkeiten damit. Vielleicht kann mir einer der "alten Maple-Hasen" bei meinem Problem helfen.

Nun zu meiner Frage:
Ich habe eine Funktion, die ich mittels "piecewise" zusammengesetzt habe. Die zusammengesetzte Funktion ist stetig. Nun habe ich das Problem, dass ich die "piecewise"-Funktion zwei mal differenzieren will.


Ich habe mir zunächst Funktionen definiert die ich über Punkte ermittelt habe.



Funktionsteil 1:

> h1(t):=20;



Funktionsteil 2:

> M:=[1,2,3,4,5,6,7]:

> n:=nops(M)-1:

> MP:=[seq([P[M[j]][1],P[M[j]][2]],j=1..n+1)]:

> lgn:=solve({seq(f2(MP[k+1][1])=MP[k+1][2],k=0..n)},{a[k]$k=0..n}):

> assign(lgn);

> for l from 0 to n do a[l]:=evalf(a[l],5):od:

> f2(phi):=sort(f2(phi)):

> phi(t):=t*54000:

> h2(t):=f2(phi(t));


h2(t):=...




Funktionsteil 3:

>  h3(t):=eval(h2(t), t=0.0012962962962963);

                      h3(t) := 23.5701684




Nun die stückweise definierte Funktion:

> h(t):=piecewise(t>=0.0000000000000000 and t<0.0002962962962963,h1(t),

>                 t>=0.0002962962962963 and t<0.0012962962962963,h2(t),

>                 t>=0.0012962962962963 and t<0.0066666666666667,h3(t)):

> plot(h(t),t=0.0..0.0066666666666667);



Hier will ich nun differenzieren:

> [mm] h_1(t):=diff(h(t),t); [/mm]

Das bekomme ich geliefert:
[mm] h_1(t) [/mm] := PIECEWISE([0., t < 0.], [Float(undefined), t = 0.], [0., t < 0.2962962963e-3], [Float(undefined), t = 0.2962962963e-3], [mm] [-18011.70000+147852864.*t-0.4795251192e12*t^2+0.8035047796e15*t^3-0.6282066275e18*t^4+0.1793415934e21*t^5, [/mm] t < 0.1296296296e-2], [Float(undefined), t = 0.1296296296e-2], [0., t < 0.6666666667e-2], [Float(undefined), t = 0.6666666667e-2], [0., 0.6666666667e-2 < t])


Wenn ich dann plotten will kommt natürlich nichts.

> [mm] plot(h_1(t),t=0.000000000001..0.000296); [/mm]


Ich denke das Problem ist, dass die Grenzen keine Ableitung haben?!


Gibt es einen entsprechenden Befehl in Maple, der es mir erlaubt, stückweise definierte Funktionen zu differenzieren?
Ich habe schon die Hilfefunktion von Maple 9 bemüht und im Internet gesucht, leider aber nichts entsprechende gefunden.


Für euere Hilfe möchte ich mich im Voraus Bendanken.
Axel.










Nun der Pasus für einen Erstposter:
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

        
Bezug
Differenzieren von "Piecewise": Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 11:38 Mo 06.11.2006
Autor: Martin243

Hallo,

ich wollte das Ganze mal ausprobieren, aber du hast die Definition der Ps unterschlagen. Kannst du die evtl. nachliefern?

Außerdem: Eine Funktion muss nicht nur stetig sondern auch differenzierbar sein, damit sie sich differenzieren lässt. Da ich jetzt aber nicht die Ps habe, kann ich da nix zu sagen...


Gruß
Martin

Bezug
                
Bezug
Differenzieren von "Piecewise": Antwort
Status: (Antwort) fertig Status 
Datum: 14:07 Mo 06.11.2006
Autor: Karohemd

Hallo Martin,
erst einmal Danke für deine Hilfe. Kannst du mir auf die Sprünge helfen (auch auf die Gefahr hin, dass ich mich blamiere), ich weiß nicht was "Ps" heißt?

Gruß Axel.

Bezug
                        
Bezug
Differenzieren von "Piecewise": Ps
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 14:56 Mo 06.11.2006
Autor: Martin243

Hoppla,

ich meinte natürlich die P's in:

MP:=[seq([P[M[j]][1],P[M[j]][2]],j=1..n+1)]: 

Das scheinen deine Punkte zu sein. Ohne die bekomme ich nicht die konkrete Lösung, die du angibst.


Gruß
Martin

Bezug
                                
Bezug
Differenzieren von "Piecewise": Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 18:30 Mo 06.11.2006
Autor: Karohemd

Hallo Martin.
Klar, die Funktion willst du aus den Punkten bauen... Ich habe die Funktion die ich mir durch die Punkte ermittelt habe noch in Abhängigkeit der Zeit gebracht (Weg, Geschwindigkeit, Beschleunigung... da soll es hin).
Deshalb poste ich dir gleich die Funktion, mit der ich arbeite:

[mm] h2(t):=21.725-18011.70000*t+73926432.00*t^2-0.1598417064e12*t^3+0.2008761949e15*t^4-0.1256413255e18*t^5+0.2989026557e20*t^6 [/mm]


Nachmals danke für deine Mühe, Axel.

Bezug
        
Bezug
Differenzieren von "Piecewise": Antwort
Status: (Antwort) fertig Status 
Datum: 20:25 Mo 06.11.2006
Autor: Martin243

Hallo,

ich hoffe, jetzt verschwindet endlich das Brett vor unser beider Köpfen!

Du schreibst:

> Wenn ich dann plotten will kommt natürlich nichts.

1. Kommt nichts, eine Fehlermeldung oder ein leerer Plot?
Ich wette, es ist ein leerer Plot.

2. Was erwarten wir für einen Plot?
Richtig! In diesem Intervall ist die Ableitung überall 0, da die Funktion konstant (=20) ist.

Die Tatsache, dass bei der Ableitung undefinierte Werte herauskommen, ist natürlich auf die (wenigen) nicht differenzierbaren Stellen zurückzuführen. Aber die können uns nix anhaben. Es sind ja nur die drei. Den Plot stört es nicht. Nur müssen wir genau überlegen, was wir sehen wollen, wenn wir die Nullfunktion plotten :)

Hat bei mir etwas länger gedauert...


Gruß
Martin


Bezug
                
Bezug
Differenzieren von "Piecewise": Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 20:31 Mo 06.11.2006
Autor: Karohemd

Hallo Martin,
jetzt verstehe ich etwas nicht. Ich habe ja mehrere Funktionen las piecewise definiert. D.h. für den einen Funktionsteil h1(t) ist die Ableitung gleich null, klar, wo keine Wegänderung da keine Geschwindigkeit ... Wenn ich nun aber den Funktionsteil h2(t) differenziere sollte doch was zu "holen" sein.

Also nochmal: Mir ist klar, dass der erste Teil Null wird, der zweite darf es aber auf keinen Fall?!

Oder bin ich verkehrt?


Gruß Axel.

Bezug
                        
Bezug
Differenzieren von "Piecewise": Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 20:33 Mo 06.11.2006
Autor: Karohemd

Nochmal als Nachtrag: Mit [mm] "h_1(t)" [/mm] meinte ich natürlich die erste Ableitung!

Bezug
                        
Bezug
Differenzieren von "Piecewise": Antwort
Status: (Antwort) fertig Status 
Datum: 22:41 Mo 06.11.2006
Autor: Martin243

Hallo,

du schreibst:

> Wenn ich nun aber den Funktionsteil h2(t) differenziere sollte doch was
> zu "holen" sein.

Na klar! Aber du hast beim Plotten nur das erste Intervall angegeben.

Ich versuche das mal nachzuvollziehen. Ich schreibe meine Eingaben mal auf:
  h1(t):=20;
  h2(t):=21.725-18011.70000*t+73926432.00*t^2-0.1598417064e12*t^3+0.2008761949e15*t^4-0.1256413255e18*t^5+0.2989026557e20*t^6;
  h3(t):=eval(h2(t), t=0.0012962962962963);
  h(t):=piecewise(t<0.0002962962962963,h1(t),t<0.0012962962962963,h2(t),t<0.0066666666666667,h3(t));
  plot(h(t),t=0.0..0.0066);
und erhalte
[Dateianhang nicht öffentlich]

Nun differenziere ich die gesamte Funktion
  h_1(t) := diff(h(t),t);
erhalte dreimal 0, dreimal undefined und ein schönes Polynom. Also plotte ich nun (den gesamten Bereich, du hast ja nur das erste Intervall genommen):
  plot(h_1(t),t=0..0.0066);
und erhalte
[Dateianhang nicht öffentlich]


Es klappt bei mir bestens. Bekommst du evtl. noch irgendwelche Warnungen?


Gruß
Martin

Dateianhänge:
Anhang Nr. 1 (Typ: gif) [nicht öffentlich]
Anhang Nr. 2 (Typ: gif) [nicht öffentlich]
Bezug
                                
Bezug
Differenzieren von "Piecewise": Gelöst
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 21:37 Mi 08.11.2006
Autor: Karohemd

Hallo Martin,
menschenskinder... Ich habe mich selber aus dem Konzept gebracht! Als ich h(t) differenziert habe und mir das Ergebnis mit ";" habe anzeigen lassen hat mich das so aus dem Konzept gebracht, dass ich beim Plotten vergessen habe, den ganzen Wertebereich anzugeben. *Peinlich*. Ich habe mich vermutlich so in das Ding verrant dass ich den Wald vor lauter Bäumen nicht gesehen habe.
Vielen Dank, dass du dir für das "Problem" Zeit genommen hast.

Axel.

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Maple"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]