how can I calculate the nautical direction angle from Cartesian x- and y-component of velocity
13 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have a set of Cartesian x- (u) and y-component (v) of velocity. But I want the velocity to be Nautical direction based, which I did the follows:
for k=1:length(u)
if u(k) > 0 && v(k) >0 % velocity direction is from southwest and pointing towards northeast
dir(k) = 180+rad2deg(atan(abs(u(k))./abs(v(k))));
elseif u(k) < 0 && v(k) >0
dir(k) = 180-rad2deg(atan(abs(u(k))./abs(v(k))));
elseif u(k) < 0 && v(k) <0
dir(k) = rad2deg(atan(abs(u(k))./abs(v(k))));
else
dir(k) = 360-rad2deg(atan(abs(u(k))./abs(v(k))));
end
end
May I know if my understanding is conceptually correct?
3 Kommentare
Dyuman Joshi
am 27 Dez. 2023
As I said earlier, I am not familiar with Nautical convention.
Could you provide a definition/reference to it?
Antworten (1)
Chunru
am 27 Dez. 2023
Bearbeitet: Chunru
am 27 Dez. 2023
vx = 10;
vy = 10;
v = sqrt(vx.^2 + vy.^2)
theta = wrapTo360(90 - rad2deg(atan2(vy, vx))) % Earth coordinates, with ref to North, Clock wise
5 Kommentare
Chunru
am 27 Dez. 2023
In nautical navigation the absolute bearing is the clockwise angle between north and an object observed from the vessel. https://en.wikipedia.org/wiki/Bearing_(angle)
The wind direction is defined as the direction from which the wind originates (the opposite of the wind velocity vector).
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!