krava123
1

двойной интеграл в С++

06.10.2012, 16:54. Показов 2040. Ответов 5
Метки нет (Все метки)

∫∫exp-r3*cos(ψ)*r*dr*dψ
межи (0,1) и (0,π*2)
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.10.2012, 16:54
Ответы с готовыми решениями:

Двойной интеграл
Всем доброго времени суток, прошу помочь решить мне двойной интеграл методом Монте Карло. Я сделал...

Вычислить двойной интеграл методом Гаусса
Неправильный результат выдаёт. Помогите найти в чём ошибка. (Visual C++ 2008) #include...

Найти двойной интеграл методом прямоугольников
программа для решения задачи вычисления двойного интеграла методом прямоугольников. в С++

Двойной факториал
Здравствуйте, Товарищи. Поискал на форуме подобную задачку, увы, не нашел. Помогите составить...

5
527 / 344 / 12
Регистрация: 05.11.2010
Сообщений: 1,076
Записей в блоге: 1
06.10.2012, 17:59 2
В c++ нет интегралов, извини.
0
4299 / 1421 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
06.10.2012, 18:04 3
Герц, зато есть итерационные методы их решения.
0
4 / 4 / 1
Регистрация: 24.09.2012
Сообщений: 178
06.10.2012, 18:48 4
Могу подсказать идею.
Интерпретируем интеграл, как объём фигуры, ограниченной поверхностью подынтегральной функции, как цилиндрическое множество. Разбиваем эту поверхность на маленькие квадратики(вообще-то прямоугольнички, но для простоты будем использовать равномерное разбиение) и значение функции на каждом квадратике аппроксимируем значением функции в любой точке этого квадратика. Ну, а дальше объём такого цилиндрика (с основой -- квадратиком и высотой -- значение функции) -- это длина умножить на ширину и на высоту. А интеграл равен сумме всех таких цилиндриков. Данное разбиение похоже на сумму Дарбу в интеграле Римана, только там площадь квадратиков стремится к 0.
Код будет похож на такой:
Код
C++
1
2
3
4
5
6
7
8
9
10
11
const double pi = 3.14;
const double len = 1; // длина
const double wid = pi/2; // ширина
const double h = 0.01; // шаг
double sum = 0; // значение интеграла
 
for (double l = 0; l <= len; l += h)
    for (double w = 0; w <= wid; w += h)
        sum += f(l+h/2,w+h/2)*h*h; // каждый раз в цикле к sum прибавляем по цилиндрику
                                               // для примера берём точку посередине квадратика
std::cout << sum;

Код не проверял, но по идее должен работать.
1
Герц
06.10.2012, 22:50
  #5

Не по теме:

Герц, зато есть итерационные методы их решения.
Без КО не обошлось? :-) Если человек так компонует свое сообщение, типа "есть задание, решайте господа", то и ответ соответствующий

0
BumerangSP
06.10.2012, 23:09     двойной интеграл в С++
  #6

Не по теме:

Герц, по той фразе можно понять, что будто бы это действительно так. Либо смысл в глубокой иронии)

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.10.2012, 23:09

(2n+1)! ( Двойной факториал)
(2n-1)!! (двойной факториал) делать с помощью while

Двойной указатель
Это не совсем C++ вроде, а просто C, но поясните, пожалуйста, зачем в коде в строчку **sums=NULL...

Двойной переворот
помогите переписать на c++, это Delphi. {$APPTYPE CONSOLE} uses SysUtils; var x:array of...

Двойной факториал
Дано целое число N (&gt; 0). Найти двойной факториал N: N!! = N·(N–2)·(N–4)·… (последний сомножитель...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru