Info
Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.
Hello guys, please help me to solve the below mentioned prograame. it is not running
    4 Ansichten (letzte 30 Tage)
  
       Ältere Kommentare anzeigen
    
D1=2;
D2=3;
D3=5;
Q1=4;
Q2=5;
Q3=6;
V1=4*Q1/(3.14*D1^2);
V2=4*Q2/(3.14*D2^2);
V3=4*Q3/(3.14*D3^2);
P1=5*D1^2;
P2=5*D2^2;
P3=0.5*D3^2;
if Vi<=10
   Cpv=0;
else
   for i=1:3
       Cpv=(1/15)*(Vi^2-100);
   end
end
%%%%
if Pj>=18
   Cpp=0;
else
   for j=1:3
       Cpp=Cpp+18-Pj;
   end
end
 Comment on this Answer
Antworten (2)
  Image Analyst
      
      
 am 19 Jan. 2018
        You need to define Vi and Pj. For example:
Vi = 5
Pj = 22
or whatever. If you do that, it runs.
7 Kommentare
  Walter Roberson
      
      
 am 20 Jan. 2018
				Your objective function is going to receive a vector of values in a single variable. Extract portions of that vector into variables inside the function. Use vectors and index them as needed.
  Walter Roberson
      
      
 am 20 Jan. 2018
        function cost = obj(x)
  P = x(1:10) ;
  V = x(11:18);
  cost = sum((P-7).^2) + sum((V-100).^2) ;
6 Kommentare
  Jan
      
      
 am 22 Feb. 2018
				@adarsh: Do not let the expression "Q1,Q2,Q3, ..." confuse you. Later in the document Q is an array and an index is used: Q(1), Q(2), ... Using vectors is the right way to go.
Diese Frage ist geschlossen.
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!