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

Tangentenverfahren

 

MatlabTrainee
Forum-Newbie

Forum-Newbie


Beiträge: 1
Anmeldedatum: 14.11.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.01.2015, 17:49     Titel: Tangentenverfahren
  Antworten mit Zitat      
Hallo Leute, ich stehe auf dem Schlauch und komme nicht mehr voran..
Ich will mit Octave das Tangentenverfahren nach Newton konstruieren, aber es kommt immer zu fehlern. Ich hab es mit der While-schleife gemacht.
Ich möchte noch erwähnen, dass ich nicht so erfahren bin mit Octave und wäre euch für die Hilfe sehr dankbar!
Soweit bin ich nun gekommen...

_________________________________________________________

y_1 = (x_start)^3-2*(x_start)^2+1
y_2 = (3*(x_start)^2-4*(x_start) %Ableitung von y_1


x_start[-10:0.1:10]; %Wertebereich für x
k=1;
x_neu = x_start-(y_1/y_2);

while x_start >= x_neu
k =k+1;
x_neu = x_start-(y_1/y_2);
x_start = x_neu;

endwhile

_________________________________________________________


Ich möchte mit dem Algorithmus für einen gegebenen Wert x_start einen Näherungswert der Nullstelle mit Hilfe der Berechnungsvorschrift

x_neu = x_start - [ y_1(x_start) / y_2(x_start) ] bestimmen.

Nun kommt es immer zu Syntax-Error oder zu Parse-Error. ich weiß nicht was ich dagegen machen könnte. Danke für die Zeit und Hilfe im voraus!
Private Nachricht senden Benutzer-Profile anzeigen
Verschoben: 05.01.2015, 18:46 Uhr von Winkow
Von Programmierung nach Octave-Forum


AndyAndyAndy
Forum-Anfänger

Forum-Anfänger


Beiträge: 44
Anmeldedatum: 22.12.14
Wohnort: Nähe Offenburg
Version: GNU Octave 4.1.0+
     Beitrag Verfasst am: 07.01.2015, 18:04     Titel:
  Antworten mit Zitat      
Du solltest zuerst ein Tutorial durcharbeiten um zu lernen, wie man Funktionen definiert usw.

ich habe deinen Code etwas aufbereitet.
Code:

y_1 = @(x) x.^3 - 2*x.^2 + 1;
y_2 = @(x) 3*x.^2 - 4*x; %Ableitung von y_1

# einfach mal y_1 und y_2 plotten
x = linspace (-3, 4, 100); %Wertebereich für x
plot (x, y_1(x), ";y_1(x);", x, y_2(x), ";y_2(x);")

x_start = 3

for k=1:5
  x_neu = x_start-(y_1(x_start)/y_2(x_start))
  x_start = x_neu;
endfor

## Wo findet fzero den Nulldurchgang, Start bei 3
fzero (y_1, 3)
 


Die while schleife habe ich einfach mal dur eine for loop ersetzt, normalerweise prüft man in ther while schleife ein Abbruchkriterium.

Für Octave gibt es übrigens auch einen IRC Channel #octave-de auf freenode
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.