WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Aus 3D-Plot (xyz) eine 2D-Funktion (xy) erstellen

 

ErenTTR
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 29.06.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.06.2021, 13:13     Titel: Aus 3D-Plot (xyz) eine 2D-Funktion (xy) erstellen
  Antworten mit Zitat      
Hallo allerseits,

ich bin gerade an einer Arbeit und analysiere mittels Antwortspektrum die Beschleunigung von Fußgängerbrücken. Habe meinen 3D-Plot soweit erstellen können. Nun bräuchte ich eine Hilfe bzgl. der Generierung einer Funktion f(x) in der xz-Ebene aus einem 3D-Plot, das heißt das ich die im Folgenden Bild zu sehende Funktion aufstellen müsste. Weiß einer evtl. wie ich das machen könnte?

Danke schonmal

Funktion.PNG
 Beschreibung:

Download
 Dateiname:  Funktion.PNG
 Dateigröße:  488.14 KB
 Heruntergeladen:  272 mal
Private Nachricht senden Benutzer-Profile anzeigen


Mmmartina
Forum-Meister

Forum-Meister


Beiträge: 745
Anmeldedatum: 30.10.12
Wohnort: hier
Version: R2020a
     Beitrag Verfasst am: 29.06.2021, 16:14     Titel:
  Antworten mit Zitat      
Soweit ich das sehe, ist das das Maximum entlang x-z bzw y-z?
D.h. du könntest einfach Scheibchenweise jede x-z-Ebene (oder alternativ y-z-Ebene) zwei mal Ableiten um das absolute Maximum zu bestimmen. und diese dann entsprechend wieder zusammen setzen.
_________________

LG
Martina

"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
Private Nachricht senden Benutzer-Profile anzeigen
 
ErenTTR
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 29.06.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.06.2021, 19:05     Titel:
  Antworten mit Zitat      
Hallo,

danke für deine Antwort. Das Maximum befindet sich in der xz-Ebene. Wie könnte ich das aber Scheibenweise ableiten?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 29.06.2021, 21:12     Titel:
  Antworten mit Zitat      
Hallo,

du willst die Kurve vermutlich nicht aus dem Plot erstellen, sondern aus den zugrundeliegenden Daten. Ich gehe zumindest davon aus, dass es Daten sind und nicht eine Funktion (im Sinne einer Formel) dahinter steckt.
Die entscheidende Frage ist dann, in welcher Form die Daten vorliegen. Sind die x- und y-Werte auf einem regelmäßigen Raster?

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
ErenTTR
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 29.06.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.06.2021, 21:38     Titel:
  Antworten mit Zitat      
Hallo Harald,

genau ich habe mittels Berechnungen jeweils 3 Vektoren erhalten und diese dann geplottet. Die x-Achse wird durch den Vektor der Trägerlänge, die y-Achse durch den Vektor der normierten Frequenz und die z-Achse durch den Vektor der Beschleunigung abgebildet. Das sind jeweils Vektoren der Größe (1x500.000). Für jede der 500 Trägerlängen habe ich jeweils 1000 Frequenzen und Beschleunigungen berechnen lassen. Also somit insgesamt 500.000 Datenpunkte. Ich bräuchte nun von jeder Trägerlänge den Maximalwert. Und mittels dieser würde ich gerne eine Funktion erstellen auf der sicheren Seite liegend. Diese Funktion sollte dann meine in der Abbildung rot dargestellte Gerade widerspiegeln. Mit Befehlen wie max(..) um die Maximalwerte herauszubekommen, komme ich nicht weiter, da alle Maximalwerte der Träger in einem Vektor liegen. Also alle Beschleunigungen für alle Trägerlängen liegen in einem Vektor.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 30.06.2021, 07:35     Titel:
  Antworten mit Zitat      
Hallo,

wie sind die x- und y-Werte in den Vektoren "verteilt"? Gibt es da ein Schema, dass z.B. erst der x-Wert gleich bleibt, dann alle y-Werte durchlaufen werden, dann der nächste x-Wert kommt, dann wieder alle y-Werte durchlaufen werden, etc.? Dann würde es sich anbieten, die z-Werte in einer 500x1000 oder 1000x500-Matrix anzuordnen. Dann kannst du entlang der y-Richtung das Maximum nehmen und dir neben dem z-Wert auch die Position und somit den passenden y-Wert holen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.