Отобразить вектор на графике

Форум пользователей пакета Mathcad

Модератор: Admin

Dmitry_mathcad
Сообщения: 8
Зарегистрирован: Пт май 21, 2010 8:19 pm

Отобразить вектор на графике

Сообщение Dmitry_mathcad » Пн июн 14, 2010 10:25 am

Доброго всем времени суток!

Вот такой вопрос: у меня есть Радиус-вектор, т.е. я задаю вектор в трехмерном пространстве таким образом Изображение
т.е. радиус вектор имеет начальную точку с координатами xn=0, yn=0, zn=0, и конечную точку с координатами xk=1, yk=2, zk=3. Радиус вектор которого я задал имеет координаты конечной точки Rv1=1,Rv2=2,Rv3=3. Мне необходимо отобразить этот вектор в трехмерном графике. Т.е. должен быть отображение отрезок начало которого xn=0, yn=0, zn=0 и конец которого xk=1, yk=2, zk=3. Я пытаюсь делать это так:Изображение

Но как видите MathCad строит три точки и соединяет их отрезками. Координаты этих трех точек в трехмерном пространстве такие:
1-ая точка x1=0,y1=0,z1=1
2-ая точка x2=0,y2=0,z2=2
3-ая точка x3=0,y3=0,z3=3

т.е. MathCad по осям x и y откладывает индексы элементов вектора Rv, а по оси z откладывает соответствующие величины элементов вектора Rv, т.е. Rv1=1,Rv2=2,Rv3=3

Как отобразить вектор в трехмерном пространстве, так, чтобы по оси x откладывалась величина Rv1, по оси y откладывалась величина Rv2, а по оси z откладывалась величина Rv3. При этом отрезок проводился бы из начала координат к конечной точке с координатами xk=1, yk=2, zk=3.

Спасибо всем за любую помощь советом, или примером!

Olegmath
Сообщения: 136
Зарегистрирован: Сб ноя 15, 2008 3:44 pm
Контактная информация:

Re: Отобразить вектор на графике

Сообщение Olegmath » Пн июн 14, 2010 1:19 pm

В учебном курсе Макарова Е.Г. «Инженерные расчёты в Mathcad», 2005 г. на странице 277 описан алгоритм построения пространственной кривой с помощью встроенной функции CreateSpace.
Применяя указанный алгоритм, пытаюсь построить отрезок OA, где O(0;0;0), A(1;2;3), но Mathcad выдаёт ошибку.
Пытался также построить с помощью функции CreateSpace отрезок BC, где B(-1;0;0), С(0;2;3), но вместо ожидаемого отрезка Mathcad строит плоскость.
Почему?

Dmitry_mathcad
Сообщения: 8
Зарегистрирован: Пт май 21, 2010 8:19 pm

Вот моя придумка

Сообщение Dmitry_mathcad » Пн июн 14, 2010 5:45 pm

Все верно, я посмотрел Ваш пример и в самом деле непонятно, как можно отображать вектора в Mathcad. Я придумал вот такую схему:
Изображение
Но все равно это неудобно, хотелось вы вектор хранить и отображать одним массивом данных. Но как это сделать? вопрос остается открытым.

IVVA
Сообщения: 1036
Зарегистрирован: Вт апр 05, 2005 6:44 pm

Сообщение IVVA » Пн июн 14, 2010 8:06 pm

А так?
Изображение

Olegmath
Сообщения: 136
Зарегистрирован: Сб ноя 15, 2008 3:44 pm
Контактная информация:

Сообщение Olegmath » Пн июн 14, 2010 9:49 pm

IVVA писал(а):А так?
Изображение

IVVA, спасибо Вам за ответ! Но у меня всё равно осталось два вопроса:
1)Если переменной "вектор" присвоить вложенный массив, так как у вас на рисунке, то отрезок не строится!


2)И всё-таки, как же в Mathcad построить пространственную кривую???

IVVA
Сообщения: 1036
Зарегистрирован: Вт апр 05, 2005 6:44 pm

Сообщение IVVA » Пн июн 14, 2010 10:02 pm

Olegmath писал(а):
IVVA писал(а):А так?
Изображение

IVVA, спасибо Вам за ответ! Но у меня всё равно осталось два вопроса:
1)Если переменной "вектор" присвоить вложенный массив, так как у вас на рисунке, то отрезок не строится!


2)И всё-таки, как же в Mathcad построить пространственную кривую???


Не строится потому, что у Вас стоит поверхность во вкладке, не линия :)
А как можно построить линию, имея только одну переменную х?, а где у?

Olegmath
Сообщения: 136
Зарегистрирован: Сб ноя 15, 2008 3:44 pm
Контактная информация:

Сообщение Olegmath » Пн июн 14, 2010 10:24 pm

[/quote]
А как можно построить линию, имея только одну переменную х?, а где у?[/quote]

IVVA,ничего не понимаю! Я хочу построить прямую L, заданную в параметрической форме:
{x=x0+t*p,
{y=y0+t*q,
{z=z0+t*r, где t - параметр.

Как это сделать в Mathcad?

IVVA
Сообщения: 1036
Зарегистрирован: Вт апр 05, 2005 6:44 pm

Сообщение IVVA » Пн июн 14, 2010 10:31 pm

Olegmath писал(а):

А как можно построить линию, имея только одну переменную х?, а где у?[/quote]

IVVA,ничего не понимаю! Я хочу построить прямую L, заданную в параметрической форме:
{x=x0+t*p,
{y=y0+t*q,
{z=y0+t*r, где t - параметр.

Как это сделать в Mathcad?[/quote]
Можно так.
Изображение

Olegmath
Сообщения: 136
Зарегистрирован: Сб ноя 15, 2008 3:44 pm
Контактная информация:

Сообщение Olegmath » Пн июн 14, 2010 10:44 pm

Урааааааааа!!! Всё получилось!!! И винтовая линия у меня получилась и даже пространственная прямая вышла! Красота! :D Просто я не знал, как сделать вместо поверхности линию, в настройках поставил кружочек Scatter Plot и всё получилось, как я хотел!

IVVA, спасибо Вам огромное! Без Вас бы не справился!

Dmitry_mathcad
Сообщения: 8
Зарегистрирован: Пт май 21, 2010 8:19 pm

спасибо

Сообщение Dmitry_mathcad » Пн июн 14, 2010 11:19 pm

IVVA писал(а):А так?
Изображение


Блестящее решение!

А вот подскажите как мне задать радиус-вектор (т.е. вектор который вы построили) в движении? Причем скажем пусть движение будет по окружности и само движение будет равномерным, т.е. без ускорения.

Спасибо!

IVVA
Сообщения: 1036
Зарегистрирован: Вт апр 05, 2005 6:44 pm

Сообщение IVVA » Пн июн 14, 2010 11:26 pm

Уже поздно, завтра на работу.Где-то у меня есть
нужный файл, завтра вечером посмотрю.

IVVA
Сообщения: 1036
Зарегистрирован: Вт апр 05, 2005 6:44 pm

Сообщение IVVA » Вт июн 15, 2010 10:40 pm

Здесь стрелка рисует окружность (2D).
Техникку решения подобных задач можно усмотреть из этого поста.
Изображение

Dmitry_mathcad
Сообщения: 8
Зарегистрирован: Пт май 21, 2010 8:19 pm

Сообщение Dmitry_mathcad » Ср июн 16, 2010 7:11 pm

IVVA писал(а):Здесь стрелка рисует окружность (2D).
Техникку решения подобных задач можно усмотреть из этого поста.
Изображение


Спасибо! Буду изучать Ваш пример.

Vladimir__
Сообщения: 1657
Зарегистрирован: Вс дек 21, 2003 8:52 am

Re: Отобразить вектор на графике

Сообщение Vladimir__ » Чт июн 17, 2010 9:04 pm

Olegmath писал(а):В учебном курсе Макарова Е.Г. «Инженерные расчёты в Mathcad», 2005 г. на странице 277 описан алгоритм построения пространственной кривой с помощью встроенной функции CreateSpace....

Кстати, на сайте издательства "ПИТЕР" можно скачать файлы для этой книги:
http://piter.com/book.phtml?978594723530
http://piter.com/bugs/5-94723-530-7/Mathcad-Makarov.zip

Dmitry_mathcad
Сообщения: 8
Зарегистрирован: Пт май 21, 2010 8:19 pm

Как отобразить два вектора на одном графике

Сообщение Dmitry_mathcad » Сб июн 19, 2010 7:18 pm

Как отобразить два вектора на одном графике?

Положим у меня есть два вектора, как их отобразить вместе на одном графике? (график я использую 3D-график разброса)Изображение