how can i solve integral equation ,symbolically methode by using a matlab

7 views (last 30 days)
y(x)+ integral(k(x,t)*y(t) , t , a, b) =f(x)

Answers (2)

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 16 Jul 2021
You can start by initiating the variables via syms, e.g.:
syms t x
y = expression1;
f = expression2;
Sol = solve(y+integral(@(t)expression3)-expression2==0)

Walter Roberson
Walter Roberson on 16 Jul 2021
syms a b f(x) k(x,t) y(x)
eqn = y(x) + int(k(x,t)*y(t), t, a, b) == f(x)
eqn = 
But what are you trying to solve for? For example do you have known f(x) and y(x) and a and b, and the task is to find k(x,t) ? Or do you have known functions and known a and the task is to find b?
  2 Comments
aissa ghaddab
aissa ghaddab on 16 Jul 2021
actually, I wanna find y(x),
for example:
we give f(x)=exp(-x^2) , a=0, b=1, k(x,t)=exp(x*t)
Walter Roberson
Walter Roberson on 17 Jul 2021
That appears to be an inhomogeneous Fredholm equation of the second kind; it looks like it would typically be examined using Liouville–Neumann series https://en.wikipedia.org/wiki/Liouville%E2%80%93Neumann_series . For the usual approach to hold,
syms x t a b real
Kcond = int(abs(exp(x*t)),t,a,b)
Kcond = 
which is (exp(b*x)-exp(a*x))/x .
This can be true for particular ranges of x, but clearly cannot be true for arbitrary real a, b, and x ranges. Picking a and b arbitrarily,
Kcond13 = subs(Kcond, [a,b], [1, 3])
Kcond13 = 
vpasolve(Kcond13 == 1)
ans = 
limit(Kcond13, x, -inf)
ans = 
0
so it could be true from -inf to about -0.357 but not for greater x.
What this tells us is that the Liouville Neumann approach is not suitable for this equation -- that there is no general contraction mapping.
No matter which non-zero a and b you choose, there is some x for which (exp(b*x)-exp(a*x) is arbitrarily large, and that increases non-linearly, so at some point that is going to be greater than x. So it looks to me as if that particular set of equations does not have a contraction mapping, and so probably there is no solution.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!