I am not able to integrate heaviside(y-f) for x= 0 to pi/2 and y = 0 to pi/2 (only syms integration "int"). After running the code, output is shown in below and i am not able to get the numerical answer. Can you give some ideas on how to proceed?
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
CHINTALAPUDI GNANA SURYA NARAYANA SAI
il 13 Ago 2020
Commentato: hosein Javan
il 14 Ago 2020
syms x y
f = sin(x);
integ = int( int(heaviside(y-f), x, 0, pi/2),y, 0, pi/2)
Result:
integ =
int(int(heaviside(y - sin(x)), x, 0, pi/2), y, 0, pi/2)
4 Commenti
Walter Roberson
il 14 Ago 2020
For your purposes, is heaviside(0) equal to 0, or is it equal to 1, or is it equal to 1/2, or is it undefined ?
CHINTALAPUDI GNANA SURYA NARAYANA SAI
il 14 Ago 2020
Modificato: CHINTALAPUDI GNANA SURYA NARAYANA SAI
il 14 Ago 2020
Risposta accettata
Walter Roberson
il 13 Ago 2020
Reverse the order of integration.
>> integ = int( int(heaviside(y-f), y, 0, pi/2),x, 0, pi/2)
integ =
pi^2/4 - 1
0 Commenti
Più risposte (1)
hosein Javan
il 13 Ago 2020
if you need numerical integration, some functions cannot be easily evaluated by symbolic. instead use "integral". in here we have a double integral. the integral calculation method is 'iterated' which means on each iteration it is integrating on one dimension and then the next. it takes a few seconds to accomplish though.
fun = @(x,y) double( y > sin(x) )
q = integral2(fun, 0, pi/2, 0, pi/2, 'Method', 'iterated', 'Reltol', 1e-8)
% answer in command window:
q =
1.4674
here's your function plot. blue part is zero. yellow part equals one.
3 Commenti
Vedere anche
Categorie
Scopri di più su Calculus in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!