plotting an equation and finding its max and min

I would like to plot my function n_sx from 0 to 2*pi and find its max and min over that interval. I know that I can use fplot to plot the function and have done so successfully but I can't find a way to find the max and min using fplot. I've tried plotting my equation using plot but I keep getting errors. Any ideas? thanks
clc;close all
syms z t
E1=15.8;
E2=12.9;
G12=2.7;
v12=0.16;
m=cos(t);
n=sin(t);
y=n_sx==n*m*(m^2*(2+2*v12-E1/G12)+n^2*(-2*v12-2*E1/E2+E1/G12))/(m^4+m^2*n^2*(-2*v12+E1/G12)+n^4*E1/E2)
x=t==linspace(0,2*pi,50);
plot(x,y)
indexmin = find(min(y) == y);
xmin = x(indexmin);
ymin = y(indexmin);
indexmax = find(max(y) == y);
xmax = x(indexmax);
ymax = y(indexmax);

 Réponse acceptée

E1=15.8;
E2=12.9;
G12=2.7;
v12=0.16;
x=linspace(0,2*pi,50);
t = x;
m=cos(t);
n=sin(t);
y=n.*m.*(m.^2.*(2+2.*v12-E1./G12)+n.^2.*(-2.*v12-2.*E1/E2+E1./G12))./(m.^4+m.^2.*n.^2.*(-2.*v12+E1./G12)+n.^4.*E1./E2);
plot(x,y)
indexmin = find(min(y) == y);
xmin = x(indexmin);
ymin = y(indexmin);
indexmax = find(max(y) == y);
xmax = x(indexmax);
ymax = y(indexmax);

Plus de réponses (1)

Aman Kumar
Aman Kumar le 5 Jan 2021

0 votes

E1=15.8;
E2=12.9;
G12=2.7;
v12=0.16;
x=linspace(0,2*pi,50);
t = x;
m=cos(t);
n=sin(t);
y=n.*m.*(m.^2.*(2+2.*v12-E1./G12)+n.^2.*(-2.*v12-2.*E1/E2+E1./G12))./(m.^4+m.^2.*n.^2.*(-2.*v12+E1./G12)+n.^4.*E1./E2);
plot(x,y)
indexmin = find(min(y) == y);
xmin = x(indexmin);
ymin = y(indexmin);
indexmax = find(max(y) == y);
xmax = x(indexmax);
ymax = y(indexmax);

Catégories

En savoir plus sur Line Plots 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