2017-02-10 5 views
0

Я работаю над созданием спирали в Matlab.Helix in Matlab

Идя код ниже:

t = 0:pi/50:20*pi; 

(Можете ли вы объяснить мне этот синтаксис или мы должны следовать этому каждый раз при создании спирали?)

st = sin(t); 
ct = cos(t); 
plot3(st,ct,t) 

Как максимальная эффективность в угол спирали составляет от 40 до 45 градусов, если я хочу ввести угол в 42, как это возможно в коде?

Было бы очень полезно, если бы кто-нибудь может поделиться своим мнением по этому

ТИА

ответ

1

Что происходит в коде является просто выполнение параметрического математического описания спирали, которые вы можете прочитать на wikipedia как

х (Т) = соз (т)

у (г) = Sin (т)

г (т) = т

Первая строка кода генерирует вектор для значений t от 0 до 20pi с шагом pi/50 (т.е. 1000 шагов). Так как каждый 2pi означает одно полное вращение (cos и sin 2π-периодические), он совпадает с 10 витками спирали (если вы хотите изменить это, пусть t работает до 2*pi*NumberOfRotations). Две другие линии генерируют соответствующие векторы для x и y. plot3 изображает линию в 3-D, где передаются x и y, и в качестве аргумента для z мы проходим t с z=t.

Чтобы изменить наклон спирали, использовать более общее описание, данное

х (Т) = а * соз (т)

у (T) = а * sin (т)

г (т) = б * т

где а радиус и б/а наклон. Чтобы получить 42 °, используйте b = a*atand(42). Чтобы убедиться, что соотношение сторон правильное на дисплее, используйте axis equal; после сюжета и, возможно, axis vis3d;, если вы хотите повернуть его.

+0

Спасибо большое Florian .. Ответ был очень полезен в понимании :) – Wazir

+0

Добро пожаловать. :) – Florian