vlitomsk Опубликовано 18 Сентября, 2010 в 12:47 Поделиться Опубликовано 18 Сентября, 2010 в 12:47 Здравствуйте, многоуважаемые химики. В школе прошли расставление коэффициентов в уравнении методом электронного баланса. Что в нем не нравится - то,что нужно после нахождения множителей все равно дошаманивать коэффициенты руками. Вопрос вот какой: есть ли способ делать это более универсальный, чем электронный баланс? Очень хочется написать программу, считающую эти самые коэффициенты. Просьба отвечать понятно для уровня 9классника ) Конечно понимаю, что существует масса нюансов(туп я еще для этих вопросов и т.п.), но все это - дело времени. Помогите, буду очень благодарен. Ссылка на комментарий
pauk Опубликовано 18 Сентября, 2010 в 16:35 Поделиться Опубликовано 18 Сентября, 2010 в 16:35 Существует метод электронно-ионного баланса: http://forum.xumuk.ru/index.php?showtopic=37301&view=findpost&p=225477 Ссылка на комментарий
Sartul Опубликовано 18 Сентября, 2010 в 16:42 Поделиться Опубликовано 18 Сентября, 2010 в 16:42 Существует метод электронно-ионного баланса: Вряд ли этот метод удастся "вложить" в программу. Иначе таковая давно бы появилась. Ссылка на комментарий
Ramus Опубликовано 18 Сентября, 2010 в 18:27 Поделиться Опубликовано 18 Сентября, 2010 в 18:27 Здравствуйте, многоуважаемые химики. В школе прошли расставление коэффициентов в уравнении методом электронного баланса. Что в нем не нравится - то,что нужно после нахождения множителей все равно дошаманивать коэффициенты руками. Вопрос вот какой: есть ли способ делать это более универсальный, чем электронный баланс? Очень хочется написать программу, считающую эти самые коэффициенты. Просьба отвечать понятно для уровня 9классника ) Конечно понимаю, что существует масса нюансов(туп я еще для этих вопросов и т.п.), но все это - дело времени. Помогите, буду очень благодарен. Нахождение коэффициентов в уравнении реакции сводится к решению системы однородных линейных уравнений. Допустим у тебя есть K веществ, и N общее число различных химических элементов входящих в эти вещества. Запишем вещество под номером k(k от 1 до K) так: {A1k; A2k; .. ;Aik; ..; ANk}, где АiK - коэффициент показывающий сколько атомов элемента номер i, входит в вещество c номером k. У нас задача найти К коэффициентов для каждого вещества. По условию, сумма числа элементов каждого вида справа и слева уравнения реакции должна быть одинакова. Для однообразия все вещества справа, можно перенести влево, изменив знак коэффициентов. Тогда вышеназванные суммы будут равны нулю. Тогда получим N линейных уравнений: ΣСkAik=0; (суммирование ведем по k, от 1 до K). Ck - искомые коэффициенты. Решение должно получится в виде: Сk=Dk*E, где Dk - набор из К чисел, а Е - любое число. Потом ищем минимальное подходящее Е, такое чтобы все Сk были целыми числами. Ссылка на комментарий
Sartul Опубликовано 18 Сентября, 2010 в 18:32 Поделиться Опубликовано 18 Сентября, 2010 в 18:32 Такой алгоритм стоит в сервисе http://www.xumuk.ru/uravnivanie/index.php Но он не всегда дает верные уравнения реакций, хотя все элементы выравнивает. Ссылка на комментарий
Ramus Опубликовано 18 Сентября, 2010 в 18:40 Поделиться Опубликовано 18 Сентября, 2010 в 18:40 Такой алгоритм стоит в сервисе http://www.xumuk.ru/uravnivanie/index.php Но он не всегда дает верные уравнения реакций, хотя все элементы выравнивает. Это потому, что еще нужно ввести дополнительные условия о которых еще много прийдется писать . Вообще решения приведенной системы уравнений представятся не одномерными как я написал, а N-R мерными, где N число уравнений, а R ранг матрицы Aik. Но с помощью дополнительных условий, решение сведется к одномерному. Это и достигается методом электронного баланса, для окислительно-восстановительных реакций. В предыдущем сообщении у меня не правильное последнее предложение, не успел отредактировать. Ссылка на комментарий
vlitomsk Опубликовано 19 Сентября, 2010 в 02:07 Автор Поделиться Опубликовано 19 Сентября, 2010 в 02:07 Спасибо огромное всем! Ушел кодить Ссылка на комментарий
Ramus Опубликовано 21 Сентября, 2010 в 15:07 Поделиться Опубликовано 21 Сентября, 2010 в 15:07 Спасибо огромное всем! Ушел кодить Программа готова, показывай . Ссылка на комментарий
vlitomsk Опубликовано 21 Сентября, 2010 в 17:02 Автор Поделиться Опубликовано 21 Сентября, 2010 в 17:02 Программа готова, показывай . Да-да, с учетом того, что я был занят все это время На выходных попишу Ссылка на комментарий
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти