How to load a big .txt-file while using ode45
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Hey!
I am solving a differential equation system with ode45 solver and the problem is that one of the derivatives demands a constant parameter from a big matrix (5x500000), depending on the previous step values in vector x. I can't load the matrix in a differential equation function because then it will be called multiple times and loading takes time.
So where / how should I load this big matrix?
A quick example would be something like this.
function1
[T, X]=ode45(@differ,[0 1],[1 1 1 1]); plot(X(:,1),X(:,2)); hold on;
end
function f = differ(t, x) %x=(x1 x2 x3 4)
A=load('file.txt'); %Now this is not efficient g=9.81;
f = zeros(4,1); f(1) = x(3); f(2) = x(4); f(3) = 0; f(4) = -g*A(i,j); %Here i and j will be determined according to values in x(1) and x(2)
end
0 Kommentare
Antworten (1)
Siehe auch
Kategorien
Mehr zu Ordinary Differential Equations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!