Непонятная ошибка

Непонятная ошибка - Сообщения

#1 Опубликовано: 06.05.2013 08:57:17
Mike Kaganski

Mike Kaganski

184 сообщений из 434 понравились пользователям.

Группа: User

Пытаюсь реализовать расчёт согласно IF97.
При расчёте через функцию выдаёт странную ошибку:

"Для округления должно использоваться от 0 до 15 разрядов включительно. параметра: digits Имя".

Если вместо функции использовать просто её формулу - считает.
IAPWS-IF97r1.sm (45 КиБ) скачан 80 раз(а).
С уважением, Михаил Каганский
#2 Опубликовано: 06.05.2013 13:08:50
Andrey Ivashov

Andrey Ivashov

2269 сообщений из 3729 понравились пользователям.

Группа: Super Administrator

Спасибо!

Как удалось выяснить, данная ошибка проявляется в сочетании использования настройки "Вид ответа (дроби)" > "Авто" и точности ответа в 14 или 15 чисел после запятой.
Саму ошибку я исправил, ну а пока что Вам рекомендую в настройках SMath Studio установить "Вид ответа (дроби)" > "Десятичные" и повторно нажать "=" в каждом отдельном выражении, вычисляющемся с ошибкой.

С уважением, Андрей Ивашов.
1 пользователям понравился этот пост
Mike Kaganski 06.05.2013 19:17:00
#3 Опубликовано: 21.05.2013 19:03:23
Mike Kaganski

Mike Kaganski

184 сообщений из 434 понравились пользователям.

Группа: User

Ещё ошибки. Версия 0,96 (сборка 4868).

В прикреплённом файле, собственно, всё показано. Выглядит так, что одна и та же функция даёт разные результаты на один и тот же набор параметров в зависимости от того, где её вызывают. Причём оптимизация (и даже использование eval()) не влияют на это.

И в дополнение - здесь же показано нестандартное поведение конструкции stack(matrix(0;1);x). Вместо вектора с одной строкой получается вектор из двух строк, первой из которых идёт mat(0;1).
IAPWS-IF97.sm (20 КиБ) скачан 82 раз(а).
С уважением, Михаил Каганский
#4 Опубликовано: 21.05.2013 19:16:20
Mike Kaganski

Mike Kaganski

184 сообщений из 434 понравились пользователям.

Группа: User

И ещё - очень тяжело без возможности использовать solve() (или аналоги) с функциями, включающими eval(). На форуме я встречал данные о том, что некоторые такие функции успешно обрабатываются solve(), но, к сожалению, не везде можно найти такую альтернативную форму (по крайней мере, мне не удалось ни разу). И не везде можно обойтись без eval(): например, в расчётах промежуточные вычисления приводят без eval() к превышению максимально допустимого числа. Пикреплённый к первому сообщению в теме файл как раз демонстрирует такие функции. И именно их хотелось бы использовать с solve(), потому что соответствующие задачи решаются именно методом последовательных приближений.
С уважением, Михаил Каганский
#5 Опубликовано: 21.05.2013 21:41:08
Mike Kaganski

Mike Kaganski

184 сообщений из 434 понравились пользователям.

Группа: User

Ещё замечание: значение универсальной газовой постоянной в программе не соответствует его принятому значению (CODATA/СИ): в программе R=8.31447215 Дж/(моль К), а принятое значение 8.3144621 Дж/(моль К), причём разница больше, чем оценка неопределённости константы (0.0000075 Дж/(моль К)).

Стоило бы заодно проверить и другие константы.
С уважением, Михаил Каганский
#6 Опубликовано: 21.02.2014 23:17:47
Igor Skarine

Igor Skarine

14 сообщений из 97 понравились пользователям.

Группа: User

Я уже не новичок и использую программу довольно долго.
Но сегодня выл просто ошеломлен ...
Что это ???


test.sm (10 КиБ) скачан 53 раз(а).
#7 Опубликовано: 22.02.2014 03:49:30
Martin Kraska

Martin Kraska

1222 сообщений из 2150 понравились пользователям.

Группа: Moderator

Нельзя употреблять i как переменную в цикле, если одновременно проводить вычисления с мнимными числами. i никоем способом защитан против изменения его значения (надо былo как-то различать между [MATH]i:sqrt(-1)[/MATH] и обыкновенной переменной имени i)

И надо сапомнить что клетки отработаются слева направо и сверху вниз. Вертикльна позиция клетки определяется верхным краем а не базовой линий (там где знак = или :=) как в маткаде. Это наверно проще программируется, практического преимущества по моему не имеет (а наверно приводит к недоразумениям).
test_kr.sm (14 КиБ) скачан 52 раз(а).
Martin Kraska Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
1 пользователям понравился этот пост
Igor Skarine 22.02.2014 23:19:00
  • Новые сообщения Новые сообщения
  • Нет новых сообщений Нет новых сообщений