imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Компьютеры > Программирование
Опции темы
Старый 10.11.2011, 20:55     # 1
DJLOVE
::VIP::
 
Аватар для DJLOVE
 
Регистрация: 30.04.2002
Адрес: Israel
Пол: Male
Сообщения: 7 090

DJLOVE Бог с наворотамиDJLOVE Бог с наворотами
DJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотами
Wink Matlab: конвертация матрицы в радианах в матрицу градусов

Салют,

наконец-то я начал свое знакомство с мат. программированием и с программой Matlab .

На данный момент ломаю голову над тем как конвертировать матрицу данная в radians в матрицу degrees.

Вот код моей простенькой программки, цель которой принять матрицу 4X3 , где каждая цифра символизирует сторону треугольника, подсчитать при помощи теоремы косинусов угол находящийся напротив стороны и в относительном порядке создать матрицу углов (находящихся напротив стороны) в градусах.


Код:
clc
A=input('enter matrix 4*3 while each line represent triangle sides:\n')
a=A(:,1);
b=A(:,2);
c=A(:,3);
d=acos((b.^2+c.^2-a.^2)./(2*(b.*c)));
%d=rad2deg(d);
e=acos((a.^2+c.^2-b.^2)./(2*(a.*c)));
%e=rad2deg(e);
f=acos((a.^2+b.^2-c.^2)./(2*(a.*b)));
%f=rad2deg(f);
B(:,1)=d;
B(:,2)=e;
B(:,3)=f;
disp('The angles for the entered triangles are:')
disp(B)
Пока что я знаком с одной командой для конвертации - rad2deg ,
правильно ли я понимаю что она не может принять вектор в rad и изменить его в degrees?
Намекните ка , как быть
__________________
Дорогие оптимист, пессимист и реалист. Пока вы спорили о стакане с водой. Я его выпил.
Опортюнист.
DJLOVE вне форума  
Старый 10.11.2011, 21:27     # 2
Borland
СуперМод
IMHO Консультант 2005-2009
 
Аватар для Borland
 
Регистрация: 14.08.2002
Адрес: Московская ПЛ, ракетный отс
Пол: Male
Сообщения: 14 516

Borland - Гад и сволочь
Цитата:
Сообщение от DJLOVE Посмотреть сообщение
Намекните ка , как быть
Через радианы - обязательно?
acosd()
А если очень надо radtodeg() - просто меняешь все
Цитата:
d=acos((b.^2+c.^2-a.^2)./(2*(b.*c)));
на
Цитата:
d=radtodeg(acos((b.^2+c.^2-a.^2)./(2*(b.*c))));
__________________
Не засоряйте форум "спасибами"! Для выражения благодарности существуют ПС и репутация! Соблюдайте Правила!
Распространенье наше по планете
Особенно заметно вдалеке:
В общественном парижском туалете
Есть надписи на русском языке

В. Высоцкий

Borland вне форума  
Старый 10.11.2011, 21:37     # 3
DJLOVE
::VIP::
 
Аватар для DJLOVE
 
Регистрация: 30.04.2002
Адрес: Israel
Пол: Male
Сообщения: 7 090

DJLOVE Бог с наворотамиDJLOVE Бог с наворотами
DJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотами
мой арсенал команд слишком мал , acosd() не проходил и к моему глубокому огорчению это означает что ею нельзя пользоваться в этом задании. *) так что обязательно в радианах.
так же , нельзя использовать loops и обращаться по отдельности к каждой цифре в матрице

d=rad2deg(acos((b.^2+c.^2-a.^2)./(2*(b.*c))));

это как раз пробовал , выдает ошибку (см.ниже) , ну я и сделал вывод что команда не принимает на обработку такого рода переменную

Цитата:
??? Undefined function or method 'radtodeg' for
input arguments of type 'double'.
__________________
Дорогие оптимист, пессимист и реалист. Пока вы спорили о стакане с водой. Я его выпил.
Опортюнист.

Последний раз редактировалось DJLOVE; 10.11.2011 в 21:47.
DJLOVE вне форума  
Старый 10.11.2011, 23:02     # 4
Borland
СуперМод
IMHO Консультант 2005-2009
 
Аватар для Borland
 
Регистрация: 14.08.2002
Адрес: Московская ПЛ, ракетный отс
Пол: Male
Сообщения: 14 516

Borland - Гад и сволочь
fromRadians(degrees,...), насколь я понимаю, конвертирует группу углов из радианов в градусы.
Точно так же, как и toDegrees(radians,...)
Правда, их наверное тоже низзя использовать.
Цитата:
Сообщение от DJLOVE Посмотреть сообщение
Undefined function or method 'radtodeg' for
input arguments of type 'double'.
Походу требуется аргумент типа single?..
single() принимает любой числовой аргумент и возвращает single.

Цитата:
Сообщение от DJLOVE Посмотреть сообщение
не проходил и ... это означает что ею нельзя пользоваться
Странно... Обычно при обучении использование справочников по командам не возбраняется...

Цитата:
Сообщение от DJLOVE Посмотреть сообщение
она не может принять вектор в rad и изменить его в degrees?
Она даже на double плюётся, что уж тут о сложных типах говорить...
Offtop:
В своё время (лет так 14 назад) пытался научиться пользоваться этой программой. Раза 3 запустил - и забыл как страшный сон. В том же C++ с полпинка можно "на коленке" приспособить практически любую функцию к практически любым данным (в пределах здравого смысла, конечно), что и делается. А в плане "чиста пащетать" мне и FORTRAN тогда было куда больше чем достаточно...
__________________
Не засоряйте форум "спасибами"! Для выражения благодарности существуют ПС и репутация! Соблюдайте Правила!
Распространенье наше по планете
Особенно заметно вдалеке:
В общественном парижском туалете
Есть надписи на русском языке

В. Высоцкий

Borland вне форума  
Старый 10.11.2011, 23:17     # 5
Borland
СуперМод
IMHO Консультант 2005-2009
 
Аватар для Borland
 
Регистрация: 14.08.2002
Адрес: Московская ПЛ, ракетный отс
Пол: Male
Сообщения: 14 516

Borland - Гад и сволочь
Ещё ковырнул мануал.
arrayfun(radtodeg,...)
__________________
Не засоряйте форум "спасибами"! Для выражения благодарности существуют ПС и репутация! Соблюдайте Правила!
Распространенье наше по планете
Особенно заметно вдалеке:
В общественном парижском туалете
Есть надписи на русском языке

В. Высоцкий

Borland вне форума  
Старый 12.11.2011, 19:54     # 6
DJLOVE
::VIP::
 
Аватар для DJLOVE
 
Регистрация: 30.04.2002
Адрес: Israel
Пол: Male
Сообщения: 7 090

DJLOVE Бог с наворотамиDJLOVE Бог с наворотами
DJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотамиDJLOVE Бог с наворотами
в конце использую наверно acosd() , пусть докажут что это не правильно
__________________
Дорогие оптимист, пессимист и реалист. Пока вы спорили о стакане с водой. Я его выпил.
Опортюнист.
DJLOVE вне форума  
Старый 12.11.2011, 21:12     # 7
Borland
СуперМод
IMHO Консультант 2005-2009
 
Аватар для Borland
 
Регистрация: 14.08.2002
Адрес: Московская ПЛ, ракетный отс
Пол: Male
Сообщения: 14 516

Borland - Гад и сволочь
Мне только что пришло в голову, что радианы в градусы влёгкую переводятся простым умножениемна 180 и делением на число π.
В матлабе есть спец. функция pi для вычисления значения π.
__________________
Не засоряйте форум "спасибами"! Для выражения благодарности существуют ПС и репутация! Соблюдайте Правила!
Распространенье наше по планете
Особенно заметно вдалеке:
В общественном парижском туалете
Есть надписи на русском языке

В. Высоцкий

Borland вне форума  

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 11:37.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.