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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Hinducoder
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 3
#1

Странный интеграл методом Монте-Карло - C++

22.05.2013, 19:40. Просмотров 770. Ответов 4
Метки нет (Все метки)

Вычислить интеграл методом монте-карло.
Лекцию проболел, а из найденных источников нашел только как с обычными интегралами работать,
не понимаю, что тут делать с суммой.
Изображения
 
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.05.2013, 19:40     Странный интеграл методом Монте-Карло
Посмотрите здесь:

Вычисление числа Пи методом Монте-Карло C++
Вычисление числа Пи методом Монте-Карло C++
Вычисление площади методом Монте-Карло C++
Решения кратного интеграла методом Монте Карло на С++ C++
Рассчет определенного интеграла методом Монте-Карло. C++
Таблица умножения методом Монте-Карло C++
C++ Вычисление интеграла методом Монте-Карло
C++ Вычислить интеграл методом Монте-Карло
C++ Интегрирование методом Монте-Карло
Вычислить методом Монте-Карло C++
C++ Написать алгоритм методом Монте - Карло
Решение определенного интеграла методом Монте Карло C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
6111 / 5714 / 1849
Регистрация: 18.12.2011
Сообщений: 14,593
Завершенные тесты: 1
22.05.2013, 19:51     Странный интеграл методом Монте-Карло #2
Вы вычисляете интеграл вида f(x)dx.
Т.е. все, что от знака интеграла до dx, это f(x).
Можете f(x) представить в виде f(x)=exp(-2.0+x)*g(x),
где g(x) сделать в виде отдельной функции, которая вычисляет
эту сумму с заданной точностью.

Добавлено через 6 минут
вот пример вычисления g(x)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
double g(double x)
{
    int n;
    double s,an;
    an=1;// нулевой член ряда
    s=an; // суммируем нулевой член
    n=1; // следуюший член первый
    while(fabs(an)>=0.00001)
    {
        an*=x*2*(n+2)/(n+1)/(n+1); // пересчитываем следующий член ряда через предыдущий
        s+=an; // суммируем
        n++; // переходим к следующему члену
     }
     return s;
 
}
Hinducoder
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 3
22.05.2013, 19:53  [ТС]     Странный интеграл методом Монте-Карло #3
посчитал сумму ряда (не учитывая xn) получилось 3e2 Если бы как-то убрать теперь сумму, то тут уже бы справился, наверное.
zss
Модератор
Эксперт С++
 Аватар для zss
6111 / 5714 / 1849
Регистрация: 18.12.2011
Сообщений: 14,593
Завершенные тесты: 1
22.05.2013, 20:05     Странный интеграл методом Монте-Карло #4
Я же привёл код функции, вычисляющий эту сумму
Hinducoder
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 3
22.05.2013, 20:10  [ТС]     Странный интеграл методом Монте-Карло #5
Да, спасибо, лагает просто очень =)
Yandex
Объявления
22.05.2013, 20:10     Странный интеграл методом Монте-Карло
Ответ Создать тему
Опции темы

Текущее время: 22:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru