How to plot general solution of a trigonometric function???
Afficher commentaires plus anciens
I want to plot a graph of a and b defined by this equation. 1-2*cosd(a)+2*cosd(b)=0 when I started plotting only graph of the principal solutions of cos is considered. whereas i want all possibilities of general solutions. by using contour only plot of functions can be drawn. what do i do now????
8 commentaires
HARSHA GYANANI
le 11 Juin 2018
Modifié(e) : Walter Roberson
le 11 Juin 2018
Walter Roberson
le 11 Juin 2018
The straight line is not present in the plot unless you ignore the imaginary component of y.
What would be the equation for the other parts you want drawn? Those curves are not the half circles.
HARSHA GYANANI
le 12 Juin 2018
Walter Roberson
le 12 Juin 2018
Why stop at two solutions? Why not also look at 450, 630, and so on?
HARSHA GYANANI
le 13 Juin 2018
Walter Roberson
le 13 Juin 2018
The below code requires R2016b or later:
Macosd = @(X) sort([(-1800:360:1800).'+acosd(X); (-1800:360:1800).'-acosd(X)]);
x = linspace(0, 90, 361);
y = (Macosd((-1+2*cosd(5*x))/2))./5;
plot(x, real(y))
If you zoom into the region near x = 24, you might see what looks like a "bounce". This is a side effect of the fact that when you start talking about taking multiple non-principle branches of the acosd, that the ordering of the branches is not well defined. Also, the sorting is not well defined for the places where acosd is imaginary. Also, as a limitation, the Macosd function produces duplicate points for cosd = +/- 1, but that case cannot show up in this particular use of it.
For release before R2016b, the code could be rewritten to use bsxfun.
HARSHA GYANANI
le 17 Juin 2018
Walter Roberson
le 17 Juin 2018
Macosd = @(X) sort([ bsxfun(@plus, (-1800:360:1800).', acosd(X)); bsxfun(@minus, (-1800:360:1800).', acosd(X))]);
Réponses (2)
KSSV
le 11 Avr 2018
N = 100 ;
a = linspace(0,2*pi,N) ;
b = linspace(0,2*pi,N) ;
[X,Y] = meshgrid(a,b) ;
Z = 1-2*cos(X)+2*cos(Y) ;
surf(X,Y,Z)
hold on
contour(X,Y,Z,[0 0],'r')
5 commentaires
HARSHA GYANANI
le 13 Avr 2018
KSSV
le 13 Avr 2018
contour(X,Y,Z,[0 0],'r')
HARSHA GYANANI
le 13 Avr 2018
Vivek Kumar
le 21 Mar 2020
bro please help me to plot a graph delta_lambda=h(1-cosX)/cm please help me
Walter Roberson
le 21 Mar 2020
Vivek Kumar: you should open a new Question for that. In that Question, please indicate which variables are your independent variables, and what range of values you want, and what style of plot you want.
Torsten
le 13 Avr 2018
0 votes
Derive b as a function of a, prescribe a range for a, calculate b and use "plot(a,b)".
Best wishes
Torsten.
Catégories
En savoir plus sur Surfaces, Volumes, and Polygons 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!

