how can I do Iteration in matlab
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have an equation of the form
a(x) + x.da/dx = 2x , x= 1:1:12
f(x) is known and has different values for different x. My question is how can I find values of 'a' in matlab through iteration. Am new to matlab and any help is highly appreciated.
0 Kommentare
Akzeptierte Antwort
Azzi Abdelmalek
am 17 Nov. 2012
Bearbeitet: Azzi Abdelmalek
am 17 Nov. 2012
save this function with the name dif_eq
function da=dif_eq(x,a,tim,f)
f1=interp1(tim,f,x)
da=(f1-a)/x;
then call the function:
t=[0.1:10]; % time vector
x0=0; % initial condition
f=rand(1,numel(t)); % your vector f, same length as vector time t
[X,A]=ode45(@(x,a) dif_eq(x,a,t,f),t,x0);
plot(X,A)
Weitere Antworten (1)
Azzi Abdelmalek
am 17 Nov. 2012
Bearbeitet: Azzi Abdelmalek
am 17 Nov. 2012
save this funnction with the name dif_eq
function da=dif_eq(x,a)
f=sin(x); for example
da=(f-a)/x;
then type in Matlab command
[x,res]=ode45(@dif_eq,[1 12],0)
5 Kommentare
Azzi Abdelmalek
am 17 Nov. 2012
Ede, the problem is not a, we are looking for a. I can't use f with different values in the equation. If I find something I will post it, or someone else will do.
Siehe auch
Kategorien
Mehr zu Ordinary Differential Equations finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!