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 Kommentare

KSSV
KSSV am 13 Mär. 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 am 13 Mär. 2019
What are the possibles values of a?
Akshay Pratap Singh
Akshay Pratap Singh am 13 Mär. 2019
0 to 1.5
Akshay Pratap Singh
Akshay Pratap Singh am 13 Mär. 2019
But I want also an expression for a.
madhan ravi
madhan ravi am 13 Mär. 2019
The maximum value of Pa is inf when a is zero. Perhaps?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Yasasvi Harish Kumar
Yasasvi Harish Kumar am 13 Mär. 2019

0 Stimmen

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 Kommentar

madhan ravi
madhan ravi am 13 Mär. 2019
Bearbeitet: madhan ravi am 13 Mär. 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.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Mathematics finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 13 Mär. 2019

Bearbeitet:

am 13 Mär. 2019

Community Treasure Hunt

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

Start Hunting!

Translated by