Русскоязычный форум закрыт из-за отсутствия активности (доступен только для чтения).
Пожалуйста, пользуйтесь англоязычной его версией. Приносим извинения за неудобства
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Neuropriest  
#1 Оставлено : 28 ноября 2014 г. 7:01:33(UTC)
Neuropriest


Статус: Member

Группы: Registered
Зарегистрирован: 06.06.2012(UTC)
Сообщений: 19
Российская Федерация
Откуда: Десятирублёвск

Сказал(а) «Спасибо»: 1 раз
Имеется некий расчет, представленный по ссылке: Лист2.sm

Алгоритм выбирает ту, или иную функцию по заданному условию, после чего вычисляет её значения в точках с заданным шагом l.

Проблема: значения, полученные в матрице Y -не верны, однако, прямое обращение к функции уКП(10*'м,C)=0.003*'м -даёт правильный ответ. Правильный ответ даёт и прямое обращение к функции уРС(L,С)...

Что идёт не так?
Вложение(я):
Лист3.sm (7kb) загружен 40 раз(а).
Лист2.sm (19kb) загружен 41 раз(а).
Без единиц.sm (14kb) загружен 37 раз(а).
Offline mikekaganski  
#2 Оставлено : 28 ноября 2014 г. 7:58:36(UTC)
mikekaganski


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 19.03.2012(UTC)
Сообщений: 112
Мужчина
Российская Федерация
Откуда: Khabarovsk, Russia

Сказал «Спасибо»: 130 раз
Поблагодарили: 33 раз в 29 постах
Возведение в степень скаляра и вектора дают разные результаты
С уважением,
Михаил Каганский
Offline Neuropriest  
#3 Оставлено : 28 ноября 2014 г. 8:06:16(UTC)
Neuropriest


Статус: Member

Группы: Registered
Зарегистрирован: 06.06.2012(UTC)
Сообщений: 19
Российская Федерация
Откуда: Десятирублёвск

Сказал(а) «Спасибо»: 1 раз
Автор: mikekaganski Перейти к цитате
Возведение в степень скаляра и вектора дают разные результаты

Согласен с такой трактовкой.
Но ведь в функцию в обоих случаях (основном и проверочном) попадают образмеренные переменные? Можно-ли как-то проверить: что туда попадает?
Offline Neuropriest  
#4 Оставлено : 1 декабря 2014 г. 18:54:31(UTC)
Neuropriest


Статус: Member

Группы: Registered
Зарегистрирован: 06.06.2012(UTC)
Сообщений: 19
Российская Федерация
Откуда: Десятирублёвск

Сказал(а) «Спасибо»: 1 раз
Подкинем свеженькое поленце: тот-же файл без единиц измерений добавлен к головному посту...
Offline Neuropriest  
#5 Оставлено : 9 декабря 2014 г. 21:25:28(UTC)
Neuropriest


Статус: Member

Группы: Registered
Зарегистрирован: 06.06.2012(UTC)
Сообщений: 19
Российская Федерация
Откуда: Десятирублёвск

Сказал(а) «Спасибо»: 1 раз
Окончательное доказательство правоты mikekaganski см. файл Лист3

Что ставит на повестку дня извечный русский вопрос: Что делать?
Offline mikekaganski  
#6 Оставлено : 10 декабря 2014 г. 12:24:33(UTC)
mikekaganski


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 19.03.2012(UTC)
Сообщений: 112
Мужчина
Российская Федерация
Откуда: Khabarovsk, Russia

Сказал «Спасибо»: 130 раз
Поблагодарили: 33 раз в 29 постах
Для SMath, похоже, возведение вектора в степень равно последовательному скалярному умножению вектора самого на себя соответствующее число раз.

Квадрат вектора, таким образом - это скаляр, равный сумме квадратов элементов (что и следовало ожидать).
Куб вектора - это квадрат вектора (скаляр), умноженный на вектор - то есть, результат - это вектор. Хм. Я не специалист, но мне почему-то не нравится.
Четвёртая степень - это третья степень вектора (вектор), умноженная на вектор -> результат - скаляр...

Ну, не знаю, не знаю. Мне почему-то казалось, что это должны быть все скаляры, равные сумме соответственных степеней элементов...

Как бы то ни было, это - никак не поэлементное возведение в степень, требующаяся уважаемому OP. Для поэлементного возведения нужна отдельная функция.

Прикреплённый пример использует функцию IsArray(#var) (автор w3b5urf3r_reloaded) из этой темы.
Вложение(я):
Лист3.sm (10kb) загружен 37 раз(а).
С уважением,
Михаил Каганский
Offline nik  
#7 Оставлено : 3 февраля 2015 г. 2:16:18(UTC)
nik

Статус: Newbie

Группы: Registered
Зарегистрирован: 01.02.2015(UTC)
Сообщений: 4

я столкнулся с такой же проблемой, когда возведение в степень меняет размерность и преодолеть это невозможно( в частности при работе с ^2 и ^4 в одной формуле, что странно, производим действия над значением, а не его размерностью, понимаю иногда это оправдано, но иногда попадаешь в тупик, бывает, что такой единицы измерения нет в программе, не удалять же из-за одной формулы единицы измерения у всех остальных.

Отредактировано пользователем 3 февраля 2015 г. 2:24:11(UTC)  | Причина: Не указана

Вложение(я):
единицы измерения.sm (5kb) загружен 39 раз(а).
Offline mikekaganski  
#8 Оставлено : 3 февраля 2015 г. 5:55:05(UTC)
mikekaganski


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 19.03.2012(UTC)
Сообщений: 112
Мужчина
Российская Федерация
Откуда: Khabarovsk, Russia

Сказал «Спасибо»: 130 раз
Поблагодарили: 33 раз в 29 постах
Как Вам уже указал w3b5urf3r_reloaded здесь, у Вас совсем другая проблема. Возведение в степень меняет размерность? А Вы что хотели? Это как бы нормально. Если Вы умножаете длину на длину (это и есть возведение длины в квадрат), вы получаете площадь. Чтобы сложить несколько равных отрезков, нужно длину умножить на безразмерную величину "число отрезков". И возникновение таких "ошибок" свидетельствует, что написанная формула не имеет физического смысла.

А если формула, используемая Вами, получена не аналитически, а эмпирически (в таких формулах часто перемножают всё на всё), то есть в ней действительно не физический, а чисто математический смысл, то в неё и передавать физические величины (например, длины) нельзя, и уж извините, Вам придётся при работе с математическими пакетами вручную предусматривать "костыли" для обхода таких "кривых" формул. Ведь только Вы знаете, как именно длина должна быть преобразована к безразмерной величине: это должно быть 200 (миллиметров) или 0,2 (метра)? Как длина это одно и то же, а как безразмерное число для возведения в степень - совсем не одно и то же. Например, если Вы знаете, что в Вашу формулу будут передавать длины, это можно сделать так:
Вложение(я):
единицы измерения.sm (5kb) загружен 32 раз(а).
Пользователь mikekaganski прикрепил следующие файлы:
1.png
С уважением,
Михаил Каганский
Offline Neuropriest  
#9 Оставлено : 3 февраля 2015 г. 6:49:10(UTC)
Neuropriest


Статус: Member

Группы: Registered
Зарегистрирован: 06.06.2012(UTC)
Сообщений: 19
Российская Федерация
Откуда: Десятирублёвск

Сказал(а) «Спасибо»: 1 раз
Автор: nik Перейти к цитате
я столкнулся с такой же проблемой, не удалять же из-за одной формулы единицы измерения у всех остальных.


С той, да не с той.
В вашей формуле, внутри скобок, три слагаемых. Третье слагаемое- имеет размерность мм, второе мм, а вот первое (альфа)- безразмерное.


Что делать: либо везде размерности снимать, но я-бы, наоборот, альфу образмерил.

Автор: mikekaganski Перейти к цитате
вручную предусматривать "костыли" для обхода таких "кривых" формул.


Для нас, технарей, снятие/возвращение размерностей лучше делать на полях документа, дабы формулы не теряли привычный коллегам вид.

Отредактировано пользователем 3 февраля 2015 г. 6:54:32(UTC)  | Причина: Не указана

Offline mikekaganski  
#10 Оставлено : 3 февраля 2015 г. 13:00:25(UTC)
mikekaganski


Статус: Advanced Member

Группы: Registered
Зарегистрирован: 19.03.2012(UTC)
Сообщений: 112
Мужчина
Российская Федерация
Откуда: Khabarovsk, Russia

Сказал «Спасибо»: 130 раз
Поблагодарили: 33 раз в 29 постах
Автор: Neuropriest Перейти к цитате
Третье слагаемое- имеет размерность мм, второе мм, а вот первое (альфа)- безразмерное

Ну, не совсем так: второе - 1/мм², третье - 1/мм⁴.

Автор: Neuropriest Перейти к цитате
Что делать: либо везде размерности снимать, но я-бы, наоборот, альфу образмерил

Кстати, да. Только одну альфу недостаточно. Придётся образмеривать и бету, и гамму. Они все должны быть длинами.

Отредактировано пользователем 3 февраля 2015 г. 15:31:55(UTC)  | Причина: Не указана

С уважением,
Михаил Каганский
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.