решить систему дифференциальных уравнений

решить систему дифференциальных уравнений - Messages

#1 Posted: 8/2/2011 12:07:40 AM
ibsh

ibsh

0 likes in 3 posts.

Group: User

Здравствуйте.

Прошу помочь можно ли в текущей версии Smath Studio
решить систему дифференциальных уравнений, описывающих
химическую реакцию вида
A -> B -> C

dCA/dt = -k1*CA
dCB/dt = k1*CA-k2*CB
dCC/dt = k2*CB

где CA, CB, CC - концентрации веществ
k1, k2, k3 - константы скоростей химической реакции (известны)
t - время

Как это сделать в данной программе ?





Ранее делал в Maxima - листинг прилагаю

/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/
/* [ Created by wxMaxima version 0.7.4 ] */

/* [wxMaxima: input start ] */
atvalue(A(t),t=0,1);
/* [wxMaxima: input end ] */

/* [wxMaxima: input start ] */
atvalue(B(t),t=0,0);
/* [wxMaxima: input end ] */

/* [wxMaxima: input start ] */
atvalue(C(t),t=0,0);
/* [wxMaxima: input end ] */

/* [wxMaxima: input start ] */
desolve([diff(B(t),t)=k1*A(t)-k2*B(t),
diff(C(t),t)=k2*B(t),
diff(A(t),t)=-k1*A(t)],
[B(t),C(t),A(t)]);
/* [wxMaxima: input end ] */

/* Maxima can't load/batch files which end with a comment! */
"Created with wxMaxima"$
#2 Posted: 8/2/2011 5:38:15 PM
Медведев Виктор

Медведев Виктор

13 likes in 157 posts.

Group: User

Стандартных функций для решения дифуров в SMath пока нет. Есть в примерах решение дифура второго порядка методом Рунге-Кутта пятого порядка. Может, что-то возьмете оттуда.
#3 Posted: 8/2/2011 5:52:08 PM
Radovan Omorjan

Radovan Omorjan

325 likes in 2052 posts.

Group: Moderator

Wrote

Стандартных функций для решения дифуров в SMath пока нет. Есть в примерах решение дифура второго порядка методом Рунге-Кутта пятого порядка. Может, что-то возьмете оттуда.



Попробуйте ODEsolvers.dll плагин. Есть rkfixed и Rkadapt как в Mathcad. Надеюсь, что будет окончательная версия этого плагина.

Попробуйте Batch reactor пример

С уважением,
Радован
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
1 users liked this post
Andrey Ivashov 8/2/2011 7:37:00 PM
#4 Posted: 8/3/2011 12:31:32 PM
уни

уни

156 likes in 355 posts.

Group: User

Что-то вроде этого (используя ODEsolvers.dll):

Россия навсегда! Вячеслав Мезенцев
4 users liked this post
ibsh 8/3/2011 1:10:00 PM, Andrey Ivashov 8/3/2011 2:58:00 PM, Radovan Omorjan 8/3/2011 3:20:00 PM, Медведев Виктор 8/3/2011 6:42:00 PM
#5 Posted: 8/3/2011 4:09:58 PM
ibsh

ibsh

0 likes in 3 posts.

Group: User

Тогда вопрос как данный плагин ODEsolvers.dll
поключить к данной версии SMathStudioDesktop.0_89.8.Portable.exe ?
#6 Posted: 8/3/2011 5:34:13 PM
уни

уни

156 likes in 355 posts.

Group: User

Просто скопировать файл в папку Plugins и перезапустить программу. Всё.
Россия навсегда! Вячеслав Мезенцев
#7 Posted: 8/3/2011 9:24:08 PM
ibsh

ibsh

0 likes in 3 posts.

Group: User

Wrote

Просто скопировать файл в папку Plugins и перезапустить программу. Всё.



Как я понял это работает для версии MathStudioDesktop.0_89.8.Setup.msi,
которая устанавливается в папку c:\Program Files\Smath\
(и там есть папка Plugins).
И это работает.

Но если я хочу использовать версию SMathStudioDesktop.0_89.8.Portable.exe,
то в том каталоге из которого я запускаю данную версию
возникает папка Xenocode (и там много вложенных папок с другими именами) и возникает файл settings.
Папки Plugins - я в этом случае не вижу.

Версия SMathStudioDesktop.0_89.8.Portable.exe мне показалась
удобнее так как ее не надо инсталлировать.



#8 Posted: 8/3/2011 10:00:53 PM
Radovan Omorjan

Radovan Omorjan

325 likes in 2052 posts.

Group: Moderator

Wrote

Wrote

Просто скопировать файл в папку Plugins и перезапустить программу. Всё.



Как я понял это работает для версии MathStudioDesktop.0_89.8.Setup.msi,
которая устанавливается в папку c:\Program Files\Smath\
(и там есть папка Plugins).
И это работает.


Правда - это работает.
Wrote

Но если я хочу использовать версию SMathStudioDesktop.0_89.8.Portable.exe,
то в том каталоге из которого я запускаю данную версию
возникает папка Xenocode (и там много вложенных папок с другими именами) и возникает файл settings.
Папки Plugins - я в этом случае не вижу.


Подтверждает что это такое. Я не знаю как решить это.

С уважением
Радован
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
#9 Posted: 8/4/2011 1:39:55 AM
уни

уни

156 likes in 355 posts.

Group: User

В портативной версии происходит разворачивание окружения программы при запуске и сворачивание окружения после выхода из программы. Только то, что включено в архив портативного дистрибутива, может быть использовано для работы. Программа автоматически "подчищает" за собой, поэтому не имеет смысла пытаться подсунуть ей плагин (хотя в прошлой версии это можно было сделать, но плагин на ту версию не рассчитан).

Разработчики пока не включили решатели ОДУ в свою программу, поэтому портативный вариант всегда будет более ограничен по возможностям, чем стационарный. Если, конечно, не изменится "форма" этой портативности.

Сейчас идёт работа над численным и символьным плагинами, в которых, возможно, будет включена данная функциональность. Я попробовал некоторые функции из этих плагинов, выглядит многообещающе, хотя работа идёт очень медленно.
Россия навсегда! Вячеслав Мезенцев
1 users liked this post
Radovan Omorjan 8/4/2011 1:34:00 PM
#10 Posted: 8/4/2011 2:34:23 AM
Andrey Ivashov

Andrey Ivashov

2270 likes in 3734 posts.

Group: Super Administrator

Всё верно, спасибо! Постараюсь добавить возможность загрузки дополнений из произвольного места для портативной версии.
1 users liked this post
Radovan Omorjan 8/4/2011 1:34:00 PM
  • New Posts New Posts
  • No New Posts No New Posts