WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Schwierigkeiten bei der Programmierung einer Optimierung

 

KeCa11
Forum-Anfänger

Forum-Anfänger


Beiträge: 17
Anmeldedatum: 24.04.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.06.2014, 12:07     Titel: Schwierigkeiten bei der Programmierung einer Optimierung
  Antworten mit Zitat      
Hallo liebe Leute,

ich schreibe derzeit meine Bachelorarbeit und muss eine Optimierung programmieren.
Ich habe mich hier im Forum durchgearbeitet und auch einiges versucht, aber leider klappt es nicht.
Am Ende meiner Bachelorarbeit möchte ich eine GUI machen indem man einfach auf Berechnen drückt und dieser dann im Hintergrund alles berechnet was ich benötige.


Code:
%%Vorgehensweise für die Berechnung der Kraft
% Darstellung in einer Matrix

%%  ---------Dicke t (als Zeilenvektor)--------------
tj = linspace(1,2);

%% ---------Breite b (als Spaltenvektor)-----------------
bi = linspace(10,20);          

%% -----------Koordinatenanzeige in Matrixschreibweise----------------
[TJ,BI] = meshgrid(tj,bi);

%% ---------Berechnung der Strapkraft als eine Matrix------------
for i = 1:length(bi)
    for j = 1:length(tj)
        Fstrap(i,j) = ((0.9*470*((bi(i)*tj(j).^3)/12))/(7.5*(tj(j)/2))*2);
    end
end

%% ----------------Werte aus Matrix filtern-----------
Fstrap_neu=Fstrap;
Fstrap_neu(Fstrap_neu<=1550)=0;     %mindest zulässige Kraft
Fstrap_neu(Fstrap_neu>1650)=0 ;     %maximal zulässige Kraft
%% ---------------Erstellung von Vektoren für das Ablesen der jeweiligen Ergebnissen-----------
k = 1;
I = [];
J = [];
for i = 1:100
    for j = 1:100
        if Fstrap(i,j)>1550 && Fstrap(i,j)<1650; %Bereich für die Kraft
            I(k) = i;   %Erstellen der Breiten-Werte als Vektor die im Bereich liegen
            J(k) = j;   %Erstellen der Dicken-Werte als Vektor die im Bereich liegen
            k = k+1;    %immer +1 damit man bis zur gewählten Länge berechnen kann
        end
    end
end


Dieser Code klappt soweit ich es möchte, aber ich muss dennoch alles ablesen.
Und die Optimierung ist auch noch nicht einbezogen. Nur durch mein Ablesen kann ich sagen wie es optimiert werden kann.
Würde es nicht gehen, wenn ich einfach MATLAB sage, dass er mir mit Hilfe der Genauigkeit sagt, ob ich mit der Kraft im Rahmen liege oder nciht?

Falls ich mich schlecht ausgedrückt habe, entschuldige ich mich.
Auf weiter Fragen bin ich offen.

P.S.: ich habe schon angefangen ein GUI zu erstellen und dort schon die Basic Felder und die dazugehörigen Berechnungen eingefügt.
Mein Hauptproblem ist die Optimierung mit deren Zielfunktion und Nebenbedingungen/Restriktionen.

Ich bedanke mich im Voraus für eure Hilfe.
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 27.06.2014, 20:36     Titel:
  Antworten mit Zitat      
Hallo,

es geht doch immer noch um dieses Problem hier?
http://www.gomatlab.de/viewtopic,p,135369.html

Wenn du das so umsetzt wie dort vorgeschlagen, ist es deutlich eleganter und du brauchst nichts abzulesen.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

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.