Hi, I am trying to find the maximum value of 'Pa' in this code with respect to 'a' while others are known. I wrote a following program. where I am wrong. As I am new to matlab, please help me.
clear all
clc
syms a
K=((1+(kh/(1-kv)))/(cos(d)+sin(d)*tan(a-p)))*((1/tan(a))+nq*(lf-l));
Pa=0.5*g*(1-kv)*K*H^2;
solve(diff(Pa)==0,a)

6 commentaires

KSSV
KSSV le 13 Mar 2019
Why use syms ? define all the values and get them and use max.
like this? then it shows :Undefined function or variable 'a'.
clear all
clc
kh=0.1;
kv=0;
d=26*(pi/180);
p=39*(pi/180);
lf=0.2;
l=0.1;
nq=1.35;
g=18.4;
H=4;
kagq=((1+(kh/(1-kv)))/(cos(d)+sin(d)*tan(a-p)))*((1/tan(a))+nq*(lf-l));
Pa=0.5*g*(1-kv)*kagq*H*H;
max(Pa,a)
KSSV
KSSV le 13 Mar 2019
What are the possibles values of a?
Akshay Pratap Singh
Akshay Pratap Singh le 13 Mar 2019
0 to 1.5
Akshay Pratap Singh
Akshay Pratap Singh le 13 Mar 2019
But I want also an expression for a.
madhan ravi
madhan ravi le 13 Mar 2019
The maximum value of Pa is inf when a is zero. Perhaps?

Connectez-vous pour commenter.

Réponses (1)

Yasasvi Harish Kumar
Yasasvi Harish Kumar le 13 Mar 2019

0 votes

Hi,
clear
clc
syms a;
kh=0.1;
kv=0;
d=26*(pi/180);
p=39*(pi/180);
lf=0.2;
l=0.1;
nq=1.35;
g=18.4;
H=4;
kagq=((1+(kh/(1-kv)))/(cos(d)+sin(d)*tan(a-p)))*((1/tan(a))+nq*(lf-l));
Pa=0.5*g*(1-kv)*kagq*H*H;
possition = vpasolve(diff(Pa)==0,a); % a value for maxima
I think this should solve it.
Regards

1 commentaire

madhan ravi
madhan ravi le 13 Mar 2019
Modifié(e) : madhan ravi le 13 Mar 2019
The calculus approach is true but the result is not within the bounds 0 to 1.5 even if the range is specified in vpasolve() empty sol will be returned , meaning maxima does not exist in the given range.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Mathematics dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by