calculate a double integral in a function

3 vues (au cours des 30 derniers jours)
Niloufar le 2 Déc 2022
I want to calculate this double integral in a function that the inputs are m,n and a two variable function like f(x,y) but I don't know how to pass f(x,y) to function.here is my code
clear;clc;close all;
f = @(x,y) sin(2*x)*sin(y);
Bmn = findBmn(1,2,f);
%%
function Bmn = findBmn(m,n,f)
a = pi;
fun = @(x,y) f.*sin(n*pi*x/a).*sin(m*pi*y/a);
Bmn = (4/(a^2)).*integral2(fun,0,a,0,a);
end
0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

Réponse acceptée

David Hill le 2 Déc 2022
f = @(x,y) sin(2*x).*sin(y);
Bmn = findBmn(1,2,f)
Bmn = 1.0000
function Bmn = findBmn(m,n,f)
a = pi;
fun = @(x,y) f(x,y).*sin(n*pi*x/a).*sin(m*pi*y/a);
Bmn = (4/(a^2)).*integral2(fun,0,a,0,a);
end
0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

Catégories

En savoir plus sur Parallel Computing dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by