|
1 / 1 / 0
Регистрация: 24.12.2016
Сообщений: 37
|
||||||
Решение уравнений в символьном виде20.03.2017, 15:39. Показов 5765. Ответов 10
Метки нет (Все метки)
Требуется определить напряжение в фазе А воздушной линии. По моей программе, сначала ввожу параметры воздушной линии, напряжение, ток и т.д. На основании системы уравнений определяется напряжение в фазе А. Ввожу коэффициенты k1-k8, входящие в систему уравнений. Далее решаю систему уравнений, с помощью оператора solve, определяю неизвестные коэффициенты a1-a8. И тут возникает проблема, программа определяет неизвестные a1-a8 в символьном виде, а мне требуются численные значения переменных a1-a8. Далее определяю напряжение в фазе А - UA, следовательно не могу получить конечное число. Укажите на мои ошибки в программе. Что бы мне получить численные значения a1-a8 и следовательно определить напряжение в фазе А – UA.
Вот код программы:
0
|
||||||
| 20.03.2017, 15:39 | |
|
Ответы с готовыми решениями:
10
Решить систему неравенств в символьном виде при условии положительности аргументов. Решение уравнений Решение дифференциальных уравнений |
|
Модератор
1765 / 1610 / 541
Регистрация: 13.09.2015
Сообщений: 5,629
|
|
| 20.03.2017, 15:58 | |
|
mixar, для численного решения есть функция NSolve
1
|
|
|
1 / 1 / 0
Регистрация: 24.12.2016
Сообщений: 37
|
||||||||||||
| 21.03.2017, 16:06 [ТС] | ||||||||||||
Как мне вывести результат вычислений а1-а8 что бы Wolfram Mathematica понимала что a1=-372615, a2=372615 и т.д. И при дальнейших вычислении напряжения в фазе А
0
|
||||||||||||
|
Модератор
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,490
|
|
| 21.03.2017, 20:17 | |
|
mixar, простенький пример...
1
|
|
|
1 / 1 / 0
Регистрация: 24.12.2016
Сообщений: 37
|
|
| 22.03.2017, 17:42 [ТС] | |
|
Попробовал ввести аналогично аналогично примеру, Wolfram Mathematica выдал такую ошибку;
0
|
|
|
1 / 1 / 0
Регистрация: 24.12.2016
Сообщений: 37
|
|
| 23.03.2017, 15:53 [ТС] | |
|
Как я понимаю символ "->" в программе Wolfram Mathematica обозначает присвоение. Следовательно в моём случае переменной a1 присваивается численное значение равное -372614.88, аналогично для других искомых мной переменных.
{} - данными скобками в программе обозначаются списки (массивы). В моём случае я имею массив переменных. И из него нужно вычислить переменные а1-а8. Подскажите, мои предположения верны?
0
|
|
|
|
||||||||||
| 23.03.2017, 23:38 | ||||||||||
|
mixar, как говорится, RTFM.
Rule: так, a -> b эквивалентно Rule[a, b].Присваивание в WM называется Set. В инфиксной форме =В свою очередь, Rule означает правило подстановки. Первый аргумент — шаблон для поиска/обработки выражения/подвыражения, второй аргумент — выражение, на которое следует заменить выражение/подвыражение. {1, 2, 3} является сокращением для List[1, 2, 3].У Вас есть {{ a1 -> v1, a2 -> v2, a3 -> v3 }}.Вы знаете, что {...} — это список. Тогда вышеуказанное выражение — это список из одного списка, состоящего в свою очередь из 3 правил. Ещё Вы не читаете сообщения об ошибках. Написано же
%, которое означает результат предыдущего вычисления, во время первого вычисления на странице тоже должно было насторожить.Собственно, Вас вопрос, если его ставить аккуратно, звучит так: вот есть список правил замен, полученный в результате NSolve; вот есть выражение с символами, которые выступали неизвестными в уравнениях. Как бы заменить все эти неизвестные их значениями. Ответ: использовать ReplaceAll
1
|
||||||||||
|
1 / 1 / 0
Регистрация: 24.12.2016
Сообщений: 37
|
|||||||||||
| 24.03.2017, 12:56 [ТС] | |||||||||||
|
Mysterious Light, спасибо большое за подробное объяснение. Использовал оператор "ReplaceAll" ввел в программу:
0
|
|||||||||||
|
|
||
| 24.03.2017, 14:44 | ||
|
Встречный вопрос: а что Вы хотели увидеть в ответе, если из 8 символов определили только 4?
1
|
||
|
1 / 1 / 0
Регистрация: 24.12.2016
Сообщений: 37
|
||||||||||||||||
| 26.03.2017, 07:04 [ТС] | ||||||||||||||||
|
Переработал изначальную программу. Изменил исходные данные, их вид записи и некоторые значения. Более подробно записал коэффициенты k3-k8 в символьном виде. Программа поучилась громоздкой поэтому не могу привести её в этом сообщении. Прилаживаю файл программы к данному сообщениюНахождение а1-а8 в числ виде.rar. Пока в программе не вычисляю напряжение UA, так как разбираюсь с решением системы уравнений в символьном виде. После выполнения программы использую оператор NSolve получаю результат:
Решение представлено в виде подстановок: a1->, a2-> и т.д. Это не дает возможности проверить достоверность решения. А так же использовать значения a1-a8 в дальнейших расчетах. Для этого пользователь должен представить неизвестные в явном виде с присвоением им имени a1=-5.53741*10^8 + 4.78444*10^8 I и т.д., затем использовать их по назначению. Получить решение в явном виде можно с помощью выражения вида:
0
|
||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||
| 26.03.2017, 18:10 | ||||||||||||||||||||||||||||||||||||
Сообщение было отмечено mixar как решение
Решение
Кажется, Вы не полностью отделяете понятия «переменная/символ», «значение переменной как число» и «правило подстановки».
Допустим, мы решаем уравнение с одной неизвестной a (чтоб писыть было меньше).
nsol — список список правил замен. Кстати, смотрите внимательно на то, что WM возвращает.Пусть Вы определили некоторую переменную как выражение с a, например,
U — это символ, имеющий в качестве значения выражение 5 a^2, где a — тоже символ.Это удобно, потому что можно делать чисто символьные манипуляции, в которых нет никакой магии, но во многих языках программирования подобное делается существенно сложнее:
Set/SetDelayed) так или иначе. Например,
Чтобы освободить a от своего значения, необходимо записать Clear[a]P.S. ещё важный момент: когда я говорю о выражениях WM, например, «записать [выражение]», я имею в виду «записать и вычислить в предположении, что контекст свободен от неуказанных явно правил, связанных с используемыми символами». Чистка контекста осуществляется перегрузкой ядра/программы WM или Clear/ClearAll используемых символов.В раннем сообщении Вы использовали %, чтобы сослаться на выражение, которое Вы просто вставили в редактор, но не вычислили.От порядка кода в редакторе ничего не зависит — всё определяется только порядком вычислений.
2
|
||||||||||||||||||||||||||||||||||||
| 26.03.2017, 18:10 | |
|
Помогаю со студенческими работами здесь
11
Решение системы уравнений в Mathematica Решение системы однородных уравнений Решение системы дифференциальных уравнений
Решение системы линейных уравнений Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|