Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Система нелинейных уравнений - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как вставить перевод строки в конец? http://www.cyberforum.ru/cpp-beginners/thread903041.html
имеется строка char str="123456" как в нее грамотно вставить символ перевода строки? пробовал так: char str="123456"; str='\n'; str='\0'; не получается...
C++ Вводы-выводы из файла Приветствую.Изучаю программирование,в общем мне нужно сдать курсовую.В курсовой задачи.Я написал сами коды программ,но к ним по заданию нужны тесты(такие тесты,чтобы заваливали программу).Но проблема... http://www.cyberforum.ru/cpp-beginners/thread903039.html
C++ стеки. Переделать под функцию, то что в мейне
Помогите переделать в функцию, то что в мейне. Пытался уже, но ошибки выдаёт. ( //стек.cpp #include "stdafx.h" #include "iostream" #include "stack.h" using namespace std; #define max 20;
C++ Выполнить перестановку в заданном массиве
Выполнить перестановку в данном массиве Е22 так чтобы сначала были записаны подряд 9 первых элементов массива имеют четные индексы й После них разместить элементы массива имеющие нечетные индексы с...
C++ Проблемой при создании массива через переменную http://www.cyberforum.ru/cpp-beginners/thread902982.html
На C++ столкнулся с проблемой при создании массива через переменную. Таким образом: int list; i,j - переменные типа int на CodeBlocks все прошло без проблем (компилятор MinGW). на Microsoft...
C++ По номеру дня недели определить количество занятий Написать программу, которая по номеру дня недели (натуральному числу от 1 до 7) выдает в качестве результата количество занятий в Вашей группе в этот день(без разницы сколько занятий, разумное от 3-5... подробнее

Показать сообщение отдельно
vlad_light
4 / 4 / 0
Регистрация: 24.09.2012
Сообщений: 178

Система нелинейных уравнений - C++

16.06.2013, 02:15. Просмотров 562. Ответов 2
Метки (Все метки)

Имеется задача
http://www.cyberforum.ru/cgi-bin/latex.cgi?\begin{cases}<br />
f_1(\overline x)=0\\<br />
f_2(\overline x)=0\\<br />
...\\<br />
f_n(\overline x)=0\\<br />
\end{cases}
где http://www.cyberforum.ru/cgi-bin/latex.cgi?\overline x = (x_1,...,x_n)\in R^n,f_i(\overline x):R^n\to R. Нужно найти решение (относительно http://www.cyberforum.ru/cgi-bin/latex.cgi?\overline x ).
Допустим, мы выбрали метод Гаусса для решения данной задачи:
1. Записываем новую функцию http://www.cyberforum.ru/cgi-bin/latex.cgi?g(\overline x)=|f_1 (\overline x)|+...+|f_n (\overline x)|. Она равна нулю тогда и только тогда, когда все http://www.cyberforum.ru/cgi-bin/latex.cgi?f_i одновременно равны нулю. Т.е. из http://www.cyberforum.ru/cgi-bin/latex.cgi?g(\overline x)=0 следует, что http://www.cyberforum.ru/cgi-bin/latex.cgi?\overline x является решением исходной системы. Если решение существует, то минимум данной функции будет в нуле.
2. Придумываем начальное приближение http://www.cyberforum.ru/cgi-bin/latex.cgi?\overline x := \overline x^0
3. Минимизаруем функцию http://www.cyberforum.ru/cgi-bin/latex.cgi?g(\overline x) по отдельности по каждой переменной, например, методом дихотомии. Т.е. фиксируем все http://www.cyberforum.ru/cgi-bin/latex.cgi?x_i, кроме какой-то одной и находим минимум этой функции относительно (уже) одной переменной и найденную переменную (минимизирующую данную функцию) подставляем в качестве фиксированной. Повторяем процедуру для всех переменных.
4. После прохода по всем переменным, проверяем на http://www.cyberforum.ru/cgi-bin/latex.cgi?g(\overline x)=0. Если это не выполняется - переходим к шагу 3. Если выполняется -- текущий http://www.cyberforum.ru/cgi-bin/latex.cgi?\overline x и будет решением.
Проблема в том, что кол-во функций и их вид заранее неизвестны. Как мне реализовать данный метод, чтоб мне не пришлось переписывать пол программы, если мне придётся изменить некоторые функции или их количество?
П.С. Данный метод решения системы уравнений я взял в качестве примера. Подойдёт и любой другой.
Заранее спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru