Funktion als Summe von Fktn < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 14:33 So 30.03.2014 | Autor: | MrMuffin |
Hallo zusammen,
ich beschäftige mich derzeit mit MATLAB und erstmals mit "function handle". Dabei tue ich mich leider etwas schwer, da ich offensichtlich nicht verstanden habe wie die Dinge zusammengehören.
Wie kann ich die Funktion [mm] $f(x_1, \dots,x_n)=\sum_{i=1}^{n-1} f_i(x_i,x_{i+1})$ [/mm] als function handle speichern ohne manuell die Summe einzutippen.
Beispiel: Seien [mm] $f_1=(x_1+x_2)^2$, $f_2=(x_2 [/mm] + [mm] x_3)^2$, $\dots$, $f_{n-1}=(x_{n-1}+x_n)^2$ [/mm] dann möchte ich NICHT $f= [mm] (x_1+x_2)^2+(x_2 [/mm] + [mm] x_3)^2+ \dots [/mm] + [mm] (x_{n-1}+x_n)^2$ [/mm] von selbst eingeben müssen.
Geht das in MATLAB? Wenn ja, wie?
Grüße
MrMuffin
|
|
|
|
Du kannst dir zwei Funktionen schreiben. Die erste Funktion nennst du summand() und diese berechnet einen Summand, etwa
1: |
| 2: | function ans=summand(a,b)
| 3: | ans = a+b;
| 4: | end
|
und die zweite funktion läuft das Array ab
[code]
function ans =Summe(x)
for i=1:length(x)-1
% etwas mit x(i) und x(i+1) machen
|
|
|
|