Форум программистов, компьютерный форум, киберфорум
Maple
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 14.01.2016
Сообщений: 14

Интеграл с параметром для процедуры

14.01.2016, 12:59. Показов 2106. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Помогите пожалуйста со следующей проблемой:
Необходимо вычислить значение интеграла с параметром, который прописан процедурой:

Haskell
1
2
3
4
5
6
7
8
9
10
11
12
restart
Digits:= 5;
x1:=1;
x2:= 1;
x3:= 1;
 
b := proc (x1, x2, x3, x4)
b := x2*x1+x3+x4/7 
end proc; 
b(x1, x2, x3, x4)
 
evalf(Int(6+b(x1, x2, x3, x4)-14*b(x1, x2, x3, x4), x4 = 0 .. 2)) assuming b(x1, x2, x3, x4) < 2;
При вычислении необходимо, чтобы при "пробегании" переменной x4 от 0 до 2 и, соответственно, подстановке в процедуру b, вычисленные значения b входили в интеграл только при условии, если значение b, допустим, строго меньше 2.
Возможно ли реализовать такое?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.01.2016, 12:59
Ответы с готовыми решениями:

Интеграл с параметром
I(\alpha )= \int_{0}^{\pi }\frac{2(\alpha - cosx)}{1-2\alpha x+{\alpha }^{2}}dx Нужна помощь с таким интегралом. Как я пробовал....

Несобственный интеграл с параметром
задание такое: Найти: \int_{0}^{\propto }\frac{ln(x)dx}{(x^2+a^2)^2} , при а&gt;0

Процедуры с параметром
Найти произведение и среднее арифметическое элементов одномерного массива. Программу оформить в виде процедуры с параметром – открытым...

13
Модератор
Эксперт по математике/физике
 Аватар для VSI
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,490
14.01.2016, 20:18
uniknown, попробуйте так...
Haskell
1
2
3
4
5
6
> for x4 from 0 to 2 do
> A:=evalf(b(x1,x2,x3,x4)):
> if A<2 then 
> # [считаем то, что нужно считать при A<2] 
> end if;
> end do;
1
0 / 0 / 0
Регистрация: 14.01.2016
Сообщений: 14
15.01.2016, 09:13  [ТС]
VSI, Большое спасибо за ответ!

Единственное, при вычислении (я упростила, вместо интеграла использовала сумму S:=6*A) S по условию A<= 2,5 используется только последнее значение удовлетворяющее условию A <= 2,5, но не все.. Как можно просуммировать все значения?

И еще в памяти Maple задается значение x4 (когда прописываем for x4 from 0 to 2..) , а после мы снова задаем пределы интегрирования для x4 в интеграле, на что Maple ругается:

"Error, (in int) integration range or variable must be specified in the second argument"
"Error, (in evalf/int) invalid arguments"

Можно ли это избежать каким-нибудь образом?


Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
restart
Digits:= 5;
x1:=1;
x2:= 1;
x3:= 1;
 
b := proc (x1, x2, x3, x4)
b := x2*x1+x3+x4/2 
end proc; 
b(x1, x2, x3, x4)
 
for x4 from 0 to 2 do 
A := evalf(b(x1, x2, x3, x4)); 
if A <= 2.5 then 
S := evalf(Int(6+A-14*A, x4 = 0 .. 2));
end if;
end do; 
value(Iy);
0
Модератор
Эксперт по математике/физике
 Аватар для VSI
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,490
15.01.2016, 10:11
Лучший ответ Сообщение было отмечено uniknown как решение

Решение

Цитата Сообщение от uniknown Посмотреть сообщение
Как можно просуммировать все значения?
Можно так...
Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
> restart: Digits:= 5: x1:=1: x2:= 1: x3:= 1:
> b := proc (a1, a2, a3, a4)
local b;
b := a2*a1+a3+a4/2; 
end proc:
> S:=0:
for Z from 0 to 2 do
if b(x1, x2, x3, Z)<=2.5 then
S := S + (Int(6+b(x1, x2, x3, x4)-14*b(x1, x2, x3, x4), x4 = 0 .. 2)):
end if:
end do;
> print("Summa = ",evalf(S)); 
 
                         "Summa = ", -106.00
1
0 / 0 / 0
Регистрация: 14.01.2016
Сообщений: 14
15.01.2016, 16:25  [ТС]
VSI, большое спасибо Вам! Все получилось!
А есть ли возможность построить в данном случае еще трехмерный график зависимости, предположим, S=f(x1, x2)?

Пробовала вот таким образом :

Haskell
1
plot3d(evalf(S), x1 = -2 ..2, x2 = -2 .. 2);
Но для этого необходимо не указывать явно значения переменных x1, x2, но тогда не получится рассчитать и интеграл, поскольку он зависит от условия, а это условие, в свою очередь, зависит от значений x1,x2..

Выдает в этом случае, что нет возможности определить выполнение условия:
"Error, cannot determine if this expression is true or false: x2*x1 <= 1.5"

Может есть какой-то выход?
0
Модератор
Эксперт по математике/физике
 Аватар для VSI
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,490
15.01.2016, 16:42
uniknown, о какой функции идет речь? S - это ЧИСЛО!!! S=-106
Начнем сначала.
Итак. Какую задачу Вы решаете? Приведите самое-самое начальное условие (задание).
1
0 / 0 / 0
Регистрация: 14.01.2016
Сообщений: 14
15.01.2016, 16:49  [ТС]
Пробую таким образом построить график зависимости значений интеграла S от координат x1, x2:

Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
restart; 
Digits := 5; 
x1; 
x2; 
x3 := 1;
 
b := proc (a1, a2, a3, a4) 
local b; 
b := a2*a1+a3+(1/2)*a4 
end proc;
 
S := 0; for Z from 0 to 2 do 
if b(x1, x2, x3, Z)<=2.5 then
S := S + (Int(6+b(x1, x2, x3, x4)-14*b(x1, x2, x3, x4), x4 = 0 .. 2)):
end if 
end do;
 
print("Summa = ", evalf(S));
                    
plot3d(evalf(S), x1 = -0.06 ..0.06, x2 = -0.06 .. 0.06);
Но для того, чтобы получить значение S я не могу указывать явно значения переменных x1, x2, но тогда не получится рассчитать и интеграл, так как он зависит от условия, а это условие, в свою очередь, зависит от значений x1,x2..

Выдает ошибку:
"Error, cannot determine if this expression is true or false: x2*x1 <= 1.5"
0
Модератор
Эксперт по математике/физике
 Аватар для VSI
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,490
15.01.2016, 16:56
uniknown, приведите МАТЕМАТИЧЕСКУЮ запись Вашей функции, трехмерный график которой собираетесь строить...
1
0 / 0 / 0
Регистрация: 14.01.2016
Сообщений: 14
15.01.2016, 17:02  [ТС]
VSI,
Для того, чтобы получить математическую запись этой функции необходимо выполнение условия для процедуры b, а для ее расчета надо явно задать значения x1,x2. Задав их я получу значение интеграла, но затем, когда пробую использовать следующее:
Haskell
1
plot3d(evalf(S), x1 = -1 ..1, x2 = -1 .. 1);
Maple выдает: "Error, (in plot3d) unexpected options: [1 = -0.6e-1 .. 0.6e-1, 1 = -0.6e-1 .. 0.6e-1]"

А сама задача:
Задача в том, что нужно найти значение интеграла, а данный интеграл зависит от некоторой процедуры b. Если значение b меньше 2,5 то тогда эти значения входят в интеграл, т.е. учитываются, как только значение b переваливает величину 2,5, то данные значения не должны входить в искомый интеграл.
С Вашей помощью удалось рассчитать интеграл с условием для этой процедуры b, хотелось бы еще наглядно посмотреть на значения интеграла в зависимости от переменных x1,x2..
0
Модератор
Эксперт по математике/физике
 Аватар для VSI
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,490
15.01.2016, 17:11
uniknown, а ничего, что у Вас в расчетах получается только 2 значения?
for Z from 0 to 2 do... В этом цикле шаг = 1...
0
0 / 0 / 0
Регистрация: 14.01.2016
Сообщений: 14
15.01.2016, 17:15  [ТС]
Да, действительно, это тоже ошибка, спасибо.. Но даже если будет 10 итераций - график, кажется, этим методом все-таки не удастся построить.. из-за того, что будут явно заданы переменные, т.е. значение интеграла будет только для одного определенно заданного значения х1 и определенно заданного значения х2..
0
Модератор
Эксперт по математике/физике
 Аватар для VSI
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,490
15.01.2016, 17:37
uniknown, отожжжжж...
0
0 / 0 / 0
Регистрация: 14.01.2016
Сообщений: 14
15.01.2016, 17:41  [ТС]
Значит никак не обойти?
0
Модератор
Эксперт по математике/физике
 Аватар для VSI
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,490
15.01.2016, 18:02
Цитата Сообщение от uniknown Посмотреть сообщение
Значит никак не обойти?
Подумать надо...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.01.2016, 18:02
Помогаю со студенческими работами здесь

Вычислить интеграл с параметром и отобразить решение
Всем привет) Буду рад, если поможете! Требуется вычислить интеграл с параметром. Посмотрев примеры на различных сайтах, вычисляю. Но...

Процедуры в Oracle с объектным параметром
Добрый день. В базе Oracle есть некий объектный тип: CREATE TYPE Tdata AS OBJECT ( Param1 VARCHAR2(30), param2 NUMBER )NOT...

С помощью процедуры с параметром процедурного типа
Здраствуйте! Решил обратиться к вам вот по какому поводу: попробуйте, пожалуйста, решить эту громоздкую задачу, вдруг у вас всё-таки...

Процедуры и функции с произвольным числом параметром
В PascalABC.Net функции и процедуры с произвольным числом параметром задаются так: function Sum(params a: array of integer): integer; ...

Процедуры с параметром. Робот Pascal ABC.NET
Task ('pp1') Закрасить помеченные клетки, составив процедуры с параметром RightN(n) и LeftN(n) Мой код работает. Возможно ли...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 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-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru