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

Erstellen eine Schleife

 

NNLab
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 59
Anmeldedatum: 11.10.11
Wohnort: Frankfurt am Main
Version: 7.12.0
     Beitrag Verfasst am: 09.12.2011, 16:18     Titel: Erstellen eine Schleife
  Antworten mit Zitat      
Hallo Freunde,

bräuchte euro hilfe um aus dem eine schleife zu basteln:

P01 = (power1(202)-power1(201)) / (f1(202)-f1(201));
P02 = (power1(203)-power1(202)) / (f1(203)-f1(202));
P03 = (power1(204)-power1(203)) / (f1(204)-f1(203));
P04 = (power1(205)-power1(204)) / (f1(205)-f1(204));
P05 = (power1(206)-power1(205)) / (f1(206)-f1(205));
P06 = (power1(207)-power1(206)) / (f1(207)-f1(206));
P07 = (power1(208)-power1(207)) / (f1(208)-f1(207));
P08 = (power1(209)-power1(208)) / (f1(209)-f1(208));
P09 = (power1(210)-power1(209)) / (f1(210)-f1(209));
P10 = (power1(211)-power1(210)) / (f1(211)-f1(210));
P11 = (power1(212)-power1(211)) / (f1(212)-f1(211));
P12 = (power1(213)-power1(212)) / (f1(213)-f1(212));
P13 = (power1(214)-power1(213)) / (f1(214)-f1(213));
P14 = (power1(215)-power1(214)) / (f1(215)-f1(214));
P15 = (power1(216)-power1(215)) / (f1(216)-f1(215));
P16 = (power1(217)-power1(216)) / (f1(217)-f1(216));
P17 = (power1(218)-power1(217)) / (f1(218)-f1(217));
P18 = (power1(219)-power1(218)) / (f1(219)-f1(218));
P19 = (power1(220)-power1(219)) / (f1(220)-f1(219));
P20 = (power1(221)-power1(220)) / (f1(221)-f1(220));

Dank euch schon mal!
Private Nachricht senden Benutzer-Profile anzeigen


soad
Forum-Century

Forum-Century


Beiträge: 150
Anmeldedatum: 10.11.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.12.2011, 16:50     Titel:
  Antworten mit Zitat      
Das kannst du mit DIFF auch ohne Schleife lösen, siehe:
Code:
Private Nachricht senden Benutzer-Profile anzeigen
 
NNLab
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 59
Anmeldedatum: 11.10.11
Wohnort: Frankfurt am Main
Version: 7.12.0
     Beitrag Verfasst am: 09.12.2011, 17:55     Titel:
  Antworten mit Zitat      
dank dir für deine antwort, aber das ahbe ich nciht so ganz verstanden.
ich habe es mal so versucht:

for i=202:220
P(i) = (power(i)-power(i-1)) / (f1(i)-fi(i-1));
end

aber es klappt nciht so richtig.
bin noch ein anfänger...
Private Nachricht senden Benutzer-Profile anzeigen
 
soad
Forum-Century

Forum-Century


Beiträge: 150
Anmeldedatum: 10.11.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.12.2011, 18:26     Titel:
  Antworten mit Zitat      
Was klappt den nicht so richtig Smile?

Was mir auffällt:
Code:
for i=202:221 % index muss bis 221 gehen
P(i-201) = (power(i)-power(i-1)) / (f1(i)-fi(i-1)); % hier müsstest du entsprechend subtrahieren, da sonst die Ergebnisse auch an Position 202, 203, usw. stehen.
end


Eigentlich sollte es so auch funktionieren:
Code:
idx = 201:221;
P = diff(power(idx))./diff(f1(idx));
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 09.12.2011, 18:32     Titel:
  Antworten mit Zitat      
Hallo NNLab,

Statt eines vagen "es klappt nciht so richtig" ist es viel besser, wenn Du konkret beschreibst, was genau nicht klappt. Es ist immer viel leichter Probleme zu lösen, als zu raten, welche Problem auftreten.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
NNLab
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 59
Anmeldedatum: 11.10.11
Wohnort: Frankfurt am Main
Version: 7.12.0
     Beitrag Verfasst am: 12.12.2011, 15:20     Titel:
  Antworten mit Zitat      
Danke für eure Antworten, hat wunderbar geklappt!

Mit beiden Varianten!
Private Nachricht senden Benutzer-Profile anzeigen
 
NNLab
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 59
Anmeldedatum: 11.10.11
Wohnort: Frankfurt am Main
Version: 7.12.0
     Beitrag Verfasst am: 13.01.2012, 13:41     Titel:
  Antworten mit Zitat      
Hallo Leute,

hab mal wieder eine Frage zu einem neuen Problem.
Ich habe 14 Vektoren (x1, x2, ... x14) mit jeweils 2000x1.
Will nun diese Vekoren zusammen addieren.
Also den ersten Wert mit dem 1. Wert der anderen Vektoren usw. und das dann durch 2000 teilen so das ich einen Mittelwertvektor bekomme

Könnt ihr mir hierbei helfen?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 13.01.2012, 14:06     Titel:
  Antworten mit Zitat      
Hallo,

es ist deutlich einfacher, wenn du die Vektoren in einer Matrix nebeneinander oder untereinander anordnest. Dann kannst du MEAN direkt darauf anwenden.

Ansonsten ginge das nur über sehr unschöne EVAL-Konstrukte.

Grüße,
Harald

P.S.: Wenn die Frage mit dem alten Thema nichts zu tun hat, bitte ein neues aufmachen.
Private Nachricht senden Benutzer-Profile anzeigen
 
NNLab
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 59
Anmeldedatum: 11.10.11
Wohnort: Frankfurt am Main
Version: 7.12.0
     Beitrag Verfasst am: 13.01.2012, 14:33     Titel:
  Antworten mit Zitat      
Leide nützte es mir nichts dies immer wieder eine eine Matrix zu kopieren, da ich es immer wieder mit neuen Vektoren machen muss.

Hab es hier rein geschrieben da ich dachte es würde mit einer schleife Funktionieren.

Werde aber nun ein neues Thema aufmachen.

Dank dir!
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 13.01.2012, 16:29     Titel:
  Antworten mit Zitat      
Hallo,

dann schreib doch diese "immer neuen Vektoren" in die Matrix?
Wo kommen denn die Variablen her?
Was spricht dagegen,
Code:
durch
Code:

zu ersetzen?

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.