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

dreiecksignal

 

1980

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.03.2010, 14:10     Titel: dreiecksignal
  Antworten mit Zitat      
Hallo Leute!
Wie kann ich eine Dreieckfunktion erstellen? Komme einfach nicht weiter. Kann mir jemand helfen.

Danke


Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.03.2010, 18:04     Titel:
  Antworten mit Zitat      
bisschen mehr INfos wären nicht schlecht.

-Lookuptable (Simulink)
- einfache Geradengleichung (Matlab)
 
Zenon
Forum-Guru

Forum-Guru


Beiträge: 292
Anmeldedatum: 20.01.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.03.2010, 18:34     Titel:
  Antworten mit Zitat      
Bei Simulink kannst Du beispielsweise den Signal Generator nehmen und als Waveform sawtooth eingeben. Geht aber auch mit Repeating Sequence (Simulink). Einfach mal sawtooth in der Hilfe eingeben.
Private Nachricht senden Benutzer-Profile anzeigen
 
1980

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.03.2010, 13:25     Titel:
  Antworten mit Zitat      
ja hab vergessen zu sagen, dass es sich um matlab handelt.

also ich muss eine funktion aufstellen, die ein dreieck zeichnet und diese funktion muss ich mit einer anderne fkt. schneiden. Aber ich habe absolut keine Ahnung wie ich die Dreiecksfkt erstellen kann.
 
Jan*
Forum-Century

Forum-Century


Beiträge: 178
Anmeldedatum: 06.11.09
Wohnort: ---
Version: R2007b
     Beitrag Verfasst am: 18.03.2010, 13:42     Titel:
  Antworten mit Zitat      
Hi,

siehe http://www.gomatlab.de/dreiecksfunktion-t9194.html

Gruß Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
1980

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.03.2010, 15:45     Titel:
  Antworten mit Zitat      
wenn ich einen Vektor habe mit 50 elemeten, wie kann ich denn alle elemente mit 1 füllen, außer das mittlere element. Kann ich das nur mit einer Schleife?
 
Zenon
Forum-Guru

Forum-Guru


Beiträge: 292
Anmeldedatum: 20.01.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.03.2010, 16:03     Titel:
  Antworten mit Zitat      
Du kannst mit

Code:

vektor = ones(1,50)
 


Den Vektor mit Einsen fluten und musst im Anschluss nur noch das mittlere Element überschreiben...
Private Nachricht senden Benutzer-Profile anzeigen
 
1980

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.03.2010, 12:31     Titel:
  Antworten mit Zitat      
Danke Jan für diesen Link, aber ich bekomme keine Dreiecksfkt damit hin.
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.500
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 19.03.2010, 13:42     Titel:
  Antworten mit Zitat      
Hallo,

das ist im Grunde dasselbe Problem wie in dem anderen Thread. Ich habe dort einen Code-Ausschnitt gepostet, mit dem man eine "Dreiecksfunktion" (man sollte vielleicht auch dazu sagen, was die Ecken des Dreiecks sein sollen) erhält. Das Problem kann also nur sein, dass die Funktion nicht in der gewünschten Form verfügbar war. Die Frage also hier wie dort:

Was möchtest du?
Eine Tabelle von x- und y-Werten?
Eine Funktion, in die du x-Werte reinstecken kannst und y-Werte herausbekommst?
Etwas ganz anderes?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
1980

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.03.2010, 17:13     Titel:
  Antworten mit Zitat      
Also ich habe die Ecken des Dreiecks gegeben. ich bräuchte eine Funktion des Dreiecks.
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.500
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 19.03.2010, 17:37     Titel:
  Antworten mit Zitat      
Ja, das ist mir klar. Aber in welcher Form? Wie wäre z.B.

Code:
function y = dreieck(x, ecke1, ecke2, ecke3)


Rein: x und die 3 Ecken
Raus: die zugehörigen y-Werte

Oder wie stellst du dir das vor?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
1980

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.03.2010, 19:30     Titel:
  Antworten mit Zitat      
wenn ich das mit function versuche , dann kommt dieser fehler :
Function definitions are not permitted at the prompt or in scripts.
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.500
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 19.03.2010, 20:23     Titel:
  Antworten mit Zitat      
... und wenn du die Fehlermeldung liest, solltest du auch wissen, was zu tun ist: die Funktion in eine eigene Datei schreiben.

Code:

function y = dreieck(x, ecken)

xs = [ecken(1,1)-1; ecken(:,1); ecken(end,1) + 1];
ys = ecken([1 1:end end],2);
y = interp1(xs, ys, x, 'linear', 'extrap');


Musteraufruf:
Code:
x = -2:0.1:2;
y = dreieck(x, ecken);
plot(x,y)


Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
1980

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.03.2010, 15:25     Titel:
  Antworten mit Zitat      
Danke Harald, dass du dir die Zeit nimmst und Mühe gibst mir das zu erklären.
Könntest du mir noch erklären, was dieser befehl bedeutet:
[ecken(1,1)-1; ecken(:,1); ecken(end,1) + 1];

danke
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.500
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 20.03.2010, 15:58     Titel:
  Antworten mit Zitat      
Hallo,

wenn du extrapolierst, wird der Verlauf nach außen linear fortgesetzt. Damit das die Dreiecksfunktion wird, muss man dafür sorgen, dass sie die Ränder "flach" sind. Das erreiche ich, in dem ich links und rechts einen Punkt auf gleicher Höhe (= y-Wert) hinzufüge.

Grüße,
Harald
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 - 2025 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.