how do i write sin^2(x) in matlab?

285 Ansichten (letzte 30 Tage)
Miri van de Kamp
Miri van de Kamp am 4 Sep. 2020
Kommentiert: Walter Roberson am 18 Feb. 2024
I am trying to plot sin^2(x) together with cos^2(x) between [0,2pi]
but cant get my matlab to accept sin^2(x).
here is what I wrote, what am i doing wrong?
x=0:0.01:2*pi
si=sin^2(x);
co=cos^2(x);
plot(si,co)
  5 Kommentare
Steven Lord
Steven Lord am 23 Jan. 2024
That is the correct value for the sine of -5 radians. If you wanted to compute the sine of -5 degrees use the sind function instead of the sin function.
R1 = -5; % radians
D1 = rad2deg(R1) % -5 radians in degrees
D1 = -286.4789
sineOfMinus5Radians = [sin(R1); sind(D1)]
sineOfMinus5Radians = 2×1
0.9589 0.9589
D2 = -5; % degrees
R2 = deg2rad(D2) % -5 degrees in radians
R2 = -0.0873
sineOfMinus5Degrees = [sind(D2); sin(R2)]
sineOfMinus5Degrees = 2×1
-0.0872 -0.0872
Dyuman Joshi
Dyuman Joshi am 23 Jan. 2024
Bearbeitet: Dyuman Joshi am 23 Jan. 2024
@Hammad, the input of sin() is considered as radian, which can be seen from the documentation of sin (easily foundable by a simple search on the internet), thus the value is provided accordingly.
If you want to compute considering the input as degrees, use sind.
Also note that the output shown is a truncated value upto 4 digits after decimal, which is not what the actual value is.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

David Hill
David Hill am 4 Sep. 2020
Bearbeitet: David Hill am 4 Sep. 2020
x=0:0.01:2*pi;
si=sin(x).^2;
co=cos(x).^2;
plot(x,si,x,co);
figure;
plot(si,co);%not sure which one you want
  4 Kommentare
Sam Chak
Sam Chak am 24 Mär. 2022
@윤선 이, no worries, I teach you.
x = 0:0.01:pi;
y = sin(2*x);
plot(x, y)
Image Analyst
Image Analyst am 24 Mär. 2022
An alternative to specifying the spacing is to specify the number of elements in the vector with linspace(), like
numElements = 2000; % Should be enough to fit all the way across your screen.
x = linspace(0, pi, numElements);
y = sin(2 * x);
plot(x, y, 'b-', 'LineWidth', 2);
grid on;
xlabel('x');
ylabel('y');
title('Y vs X');
xlim([min(x), max(x)]);

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

hemin ahmad
hemin ahmad am 18 Feb. 2024
sin(x)
  1 Kommentar
Walter Roberson
Walter Roberson am 18 Feb. 2024
No, this is not correct. As explained above, sin(x).^2 is needed.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by