Ich möchte ein Gleichungssystem lösen, welches aus 2 Gleichungen und 2 Unbekannten besteht. Der Haken an der Sache ist, dass ich innerhalb der Funktion eine sehr große (12300x1)-Matrix "Vol" habe, aus der ich für jedes Element meine Gleichungen lösen lassen will. Am Ende möchte ich also für alle 12300 Einträge die Lösung x=[x(1),x(2)] haben.
Code:
function F = spheroid(x)
Daten = Inputwerte;
time_2 = [0:0.01:Daten.time_aufblasen]';
V = zeros(length(time_2),1);
for m = 1:length(time_2) if m<12/Daten.delta_t+1 % Bereich 1: t:[0,12]
V(m,1) = 6.441/1000*time_2(m,1)^2+0.09503;
elseif m>(12/Daten.delta_t) && m<(37/Daten.delta_t+1)% Bereich 2: t:[12,37]
V(m,1) = 0.15458*time_2(m,1)-0.83246;
elseif m>(37/Daten.delta_t) && m<(70/Daten.delta_t+1)% Bereich 3: t:[37,70]
V(m,1) = 5.465/1000*time_2(m,1)^2-0.40441*time_2(m,1)+12.3686;
elseif m>(70/Daten.delta_t) && m<(105/Daten.delta_t+1)% Bereich 4: t:[70,105]
V(m,1) = 0.515271*time_2(m,1)-25.2306;
else% Bereich 4: t:[105,123]
V(m,1) = -0.014313*time_2(m,1)^2+3.520997*time_2(m,1)-183.031;
end end % hier habe ich also nun eine 12300x1-Matrix
for n = 1:length(time_2)
Vol = V(n,1);
F(n,1) = [(x(2)+x(1))*(1+3*((x(2)-x(1))/(x(2)+x(1)))^2/(10+sqrt(4-3*((x(2)-x(1))/(x(2)+x(1)))^2)))-4;
3/4*Vol*1/(pi*x(1)^2)-x(2)];
end
Zum Glück sind Probleme mit <100'000 Variablen auf modernen Computern nicht unbedingt als "groß" zu bezeichnen.
Zitat:
Allerdings stimmen da die Dimensionen der Variablen natürlich nicht. Ich habe jedoch schon alles mögliche probiert.
Nun müsste man für eine Lösung viel raten: 1. Wieso stimmen welche Diomensionen nicht? 2. Woher weißt Du das? 3. Wie müssten denn die richtigen Dimensionen lauten? 4. An welcher Stelle tritt das Problem auf und gibt es eine Fehlermeldung? 5. Was hast Du ausprobiert? 6. Warum genau hat das, was du probiert hast, nicht funktioniert?
Ich empfehle zu posten, was Du versucht hast und das auftredende Problem genau zu erklären. Dann wäre ein Lösungsvorschlag effizient und möglicherweise sogar einfach.
Gruß, Jan
Einstellungen und Berechtigungen
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
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.