%Studienarbeit Leichtbau Aufgabe 2 global F b E szul ;
F =222000;
b =654;
E =70350;
szul = 107;
x0 = [0.1, 0.1, 1]; %Startwerte
fun = @z; %Handle Zielfunktion
B = @Bedingungen; %Handle der Bedingungen
ug = [0,0,0]; %untere Grenze
og = [1000,10,100]; %obere Grenze [Sickenbreite/-höhe,Blechdicke,Sickenanzahl]
% Maximales Minimum (Berechung der Sickenzahl mit Kommastellen)
Das ist mein kompletter Code.
Der angesprochene Vergleich ist bei Verifizierung->Beulen-> letzter fprintf Befehl. Dort habe ich beide Formeln eingegeben die gegenübergestellt werden sollen.
ein sehr langer Code, und ich kann nicht daraus erkennen, wo etwas variiert wurde.
F/(F/szul) ist einfach szul, und das wird anfangs festgelegt.
Beim anderen Teil wird hin- und hergerechnet. Warum da am Ende etwas anderes herauskommen soll, erschließt sich mir nicht.
Ich könnte den Code noch kürzen, müsste dafür aber mehr Text in den Abgabebericht schreiben. Deswegen entschied ich mich für die etwas bequemere Lösung.
es ist für die Zwecke hier schon mal hilfreich, wenn man Code zur Verfügung stellt. Noch besser ist es aber, wenn sich der Code auf das wesentliche konzentriert. Das heißt ja nicht, dass du das in deinem Abgabebericht auch so machen musst.
Ich verstehe noch nicht, was genau das Problem ist.
Zitat:
Dafür muss ein gegebener Parameter >= einem Berechneten sein.
Welcher Parameter muss größer sein als welcher?
Zitat:
Die Formel hierfür lautet: q= 3.62*E*(t/a)^2
Die Formel wofür?
Zitat:
Problem hierbei ist, dass bei leicht abgeänderten Werten auch eine Abweichung zu sehen sein sollte. Diese werden mir aber in Matlab nicht angezeigt.
Welche Werte änderst Du wie ab?
Zitat:
Wenn ich in Matlab die genauigkeit auf %.16f stelle ...
Man kann ion Matlab nicht die Genauigkeit einstellen. $.16f klingt danach, als meintest Du die Ausgabe per
sprintf
bzw.
fprintf
. Hier geht es aber nur um die Anzeige der Zahlen. Mit den Berechnungen hat das nichts zu tun. Ich denke, das ist klar, wollte es aber zur Sicherheit erwähnen.
Zitat:
...sehe ich eine Abweichung, allerdings bei 2.84*10^-14und darum wird verständlicherweise gerundet.
Als Leser kann man nicht wissen, was hier warum gerundet wird.
Zitat:
Woran liegt das oder wie kann ich es beheben?
Weder die Erklärung noch der gezeigte Code helfen zu erkennen, welche Werte Du genau meinst. Es ist gut möglich, dass Dein Taschenrechner mit weniger Stellen rechnet als Matlab, das IEEE754 double Zahlen verwendet.
Versuche also noch mal genau zu erklären, was das Problem ist.
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.