Mathcad Toolbox

Mathcad Toolbox - Contains analogs of functions from Mathcad - Messages

#221 Posted: 11/1/2025 7:13:04 PM
Valery Ochkov

Valery Ochkov

62 likes in 659 posts.

Group: User

Now we can use units by ODE solution in Mathcad-block? Tanks to Slava!
But
Is it a bug?
Pendulum-Friction.sm (16.88 KiB) downloaded 56 time(s).

PF.png
Edited 11/5/2025 9:17:24 AM
#222 Posted: 11/5/2025 8:34:44 AM
Вячеслав Мезенцев

Вячеслав Мезенцев

1,526 likes in 1,835 posts.

Group: Moderator

No, all solvers don't currently support units. If something works, it's just a special case. I don't have time to rewrite the solvers to support this feature right now.
Russia ☭ forever, Viacheslav N. Mezentsev
1 users liked this post
Valery Ochkov 11/9/2025 6:28:01 AM
#223 Posted: 11/5/2025 9:25:24 AM
Valery Ochkov

Valery Ochkov

62 likes in 659 posts.

Group: User

Wrote

No, all solvers don't currently support units. If something works, it's just a special case. I don't have time to rewrite the solvers to support this feature right now.


Слава! Если появится время, то сделай так, чтобы можно было вставлять в Mathcad-block и алгебраические выражения. Как в Mathcad.
#224 Posted: 11/5/2025 10:21:32 AM
Вячеслав Мезенцев

Вячеслав Мезенцев

1,526 likes in 1,835 posts.

Group: Moderator

В этом блоке нет никаких ограничений. Можно вставлять что угодно, даже компоненты. Сам блок не является решателем, он просто создаёт коллекцию из элементов внутри него и на этом всё. На выходе блока просто набор элементов, они могут быть практически любыми.
Если в блоке вписывать функцию, то коллекция элементов вставляется в качестве первого аргумента (по умолчанию) и функции передаётся управление, т.е. она вычисляется.
Поэтому сам блок - это просто "обёртка" с минимальными функциями работы с набором выражений и не более того.

Использование алгебраических выражений в численном решателе уже осуществляется в самих функциях решателей. Это уже они решают что является исходными данными для задачи. Я пока не расширял функционал на этот случай, т.к. любые подобные изменения скажутся на всех численных решателях, которые я поддерживаю и это нужно долго тестировать.

Я планировал изменить архитектуру исходников, чтобы было возможным дорабатывать код, но пока это всё отложено.
Edited 11/5/2025 10:26:44 AM
Russia ☭ forever, Viacheslav N. Mezentsev
1 users liked this post
Alvaro Diaz Falconi 11/6/2025 10:54:59 PM
#225 Posted: 11/6/2025 10:55:30 PM
Alvaro Diaz Falconi

Alvaro Diaz Falconi

1,073 likes in 1,739 posts.

Group: User

Hi. A practical solution to the problem of the solution being unit-based could be to simply use el('U,1) ... el('U,n), which would all default to 1, and the user could redefine them before calling the ode solver. I believe the amount of code to modify would be minimal, and it would be the same for all ode solvers, just as it is, I imagine, for calling the interpolation functions.

Best regards.
Alvaro.
#226 Posted: 11/7/2025 6:25:30 AM
Valery Ochkov

Valery Ochkov

62 likes in 659 posts.

Group: User

Wrote


Я планировал изменить архитектуру исходников, чтобы было возможным дорабатывать код, но пока это всё отложено.



Если появится возможность вставлять в Mathcad-block и алгебраические уравнения, то это откроет путь к решению сложных задач без ухищренных инструментов, к каким прибегает Альваро.
См. один пример
DAE.png
#227 Posted: 11/7/2025 6:57:09 AM
Вячеслав Мезенцев

Вячеслав Мезенцев

1,526 likes in 1,835 posts.

Group: Moderator

Я это знаю. Дело в том, что сейчас численные решатели используют один общий код преобразования общего вида задачи к матричному. Этот код нужно архитектурно упростить и добавить в него поддержку единиц измерений, что само по себе не просто. Кроме этого, я пытаюсь портировать общую функцию odesolve, которая будет основной для такого рода задач.
Ещё хотелось бы доработать функцию find, устранив ошибки и сделав её также символьной, если получится, т.е. чтобы ответ можно было получить в символьном виде.
Поскольку это не моя основная работа, то я не могу сказать когда найду для этого время.
Edited 11/7/2025 10:38:31 AM
Russia ☭ forever, Viacheslav N. Mezentsev
  • New Posts
  • No New Posts