Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Mathcad
  Beschleunigungsvektor erstellen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo
Autor Thema:  Beschleunigungsvektor erstellen (1126 mal gelesen)
ExxE
Mitglied



Sehen Sie sich das Profil von ExxE an!   Senden Sie eine Private Message an ExxE  Schreiben Sie einen Gästebucheintrag für ExxE

Beiträge: 12
Registriert: 29.03.2012

erstellt am: 03. Apr. 2014 11:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo

Ich möchte mir aus einem Geschwindigkeitsvektor den Beschleunigungsvektor berechnen.
Die Beschleunigung berechne ich, indem ich die Differenz zweier benachbarter Geschwindigkeitswerte bilde und diese durch die Differenz der dazugehörigen Zeitwerte dividiere.
Also würde das für das erste Beschleunigungsvektorelement folgendermaßen aussehen:

a1=(v1-v0)/(t1-t0)

für das 2. Element

a2=(v2-v1)/(t2-t1) usw. ….

Wie kann ich das in Mathcad 15 realisieren, dass ich mir nicht jedes einzelne Element zuvor von Hand berechnen muss und ich den Beschleunigungsvektor direkt aus dem Geschwindigkeitsvektor berechnen kann?

LG

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rmix22
Mitglied



Sehen Sie sich das Profil von rmix22 an!   Senden Sie eine Private Message an rmix22  Schreiben Sie einen Gästebucheintrag für rmix22

Beiträge: 146
Registriert: 13.09.2013

erstellt am: 03. Apr. 2014 15:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ExxE 10 Unities + Antwort hilfreich

Zitat:
Wie kann ich das in Mathcad 15 realisieren, dass ich mir nicht jedes einzelne Element zuvor von Hand berechnen muss und ich den Beschleunigungsvektor direkt aus dem Geschwindigkeitsvektor berechnen kann?

Indem du entweder eine neue Bereichsvariable i:=0..last(v)-1  (1 Element kürzer als v) definierst und verwendest (a[i:=(v[i+1 - v[i)/(t[i+1) - t[i)) oder etwas eleganter mit einer selbstgeschriebenen Funktion, welche die beiden Vektoren v und t als Argument hat und den Beschleunigungsvektor als Ergebnis liefert. Diese Funktion würde im Wesentlichen das gleiche wie oben beschrieben machen, nur eben mit for-Schleifen anstelle von Bereichesvariablen and wäre somit kompakter und universeller verwendbar.

Falls a und v gleich groß sein müssen/sollen, kannst du etwa das letzte Element von a verdoppeln (a[last(v):=a[last(a))

Eine weiter Möglichkeit ist, durch Interpolation (kub. Splines oder linear) aus den Vektoren v und t eine Funktion v(t) zu basteln und auf diese den normalen Differenzieroperator anzuwenden. Alles eine Frage wie und wofür du das Ergebnis verwenden möchtest.

[Diese Nachricht wurde von rmix22 am 03. Apr. 2014 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

ExxE
Mitglied



Sehen Sie sich das Profil von ExxE an!   Senden Sie eine Private Message an ExxE  Schreiben Sie einen Gästebucheintrag für ExxE

Beiträge: 12
Registriert: 29.03.2012

erstellt am: 04. Apr. 2014 11:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke für die Antwort!

Ich habe versucht die Berechnung mit einer for-Schleife zu realisieren.
Ich bekomme aber immer nur einen Wert zurück und keinen Vektor.

Hier der Code:

a:= for i E 0...last(v)-1
    v[(i+1)-v[i

Ich habe absichtlich vorerst die Zeit weggelassen.

Es scheint mir als würde auf diese Weise nur das Letzte Element berechnet werden.

Daraufhin habe ich folgendes probiert:

a[i:= for i E 0...last(v)-1
    v[(i+1)-v[i

Das funktioniert auch nicht, da ich dann die Meldung "Diese Variable ist nicht definiert", für a[i erhalte.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rmix22
Mitglied



Sehen Sie sich das Profil von rmix22 an!   Senden Sie eine Private Message an rmix22  Schreiben Sie einen Gästebucheintrag für rmix22

Beiträge: 146
Registriert: 13.09.2013

erstellt am: 04. Apr. 2014 11:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für ExxE 10 Unities + Antwort hilfreich


DiskreteAbleitung.zip

 
Bei deiner ersten Variante musst du nach der Schleife den Rückgabebefehl "return v" hinzufügen, damit der ganze Vektor und nicht nur der letzte berechnete Wert zurückgegeben wird. Es würde auch reichen, nur "v" in die letzte Zeile zu schreiben, aber ich finde die Verwendung von return sauberer.

Für deinen zweiten Versuch musst du vorher eine Bereichsvariable i definieren und dafür dann die for-Schleife komplett weglassen, denn eine Bereichsvariable ist selbst eine (implizite) for-Schleife.

Denke die beigefügteDatei sollte helfen.

[Diese Nachricht wurde von rmix22 am 05. Apr. 2014 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

ExxE
Mitglied



Sehen Sie sich das Profil von ExxE an!   Senden Sie eine Private Message an ExxE  Schreiben Sie einen Gästebucheintrag für ExxE

Beiträge: 12
Registriert: 29.03.2012

erstellt am: 06. Apr. 2014 13:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke für deine Hilfe und deine ausfürliche Beschreibung mittels des Files.

Jetzt funktioniert es auch bei mir. 

Es war vorallem sehr wichtig zu sehen, dass ich die Berechnung in der Schleife lokal definieren muss!

LG

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz