Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

I need to solve this Fredholm integral equation of the second kind:

f[s]+integrate[f[t] K[s,t],{t,0,1}]=s 

where 0<=s<=1.

The kernel is:

K[s,t]=(a/2)*(BesselJ[1,a*(s+t)]-BesselJ[1,a*Abs[s-t]]-i*StruveH[1,a*(s+t)]+i*StruveH[1,a*Abs(s-t)]) 

where a: real, i: imaginary unit.

I tried to solve this with the method described here: Integral equation numerical solution with NDSolve, this is the best algorithm for this case I have come across so far but it takes for ages and in the end it doesn't produce any result (due to memory insufficiency). Could anyone please help me solve it?

share|improve this question

1 Answer 1

up vote 4 down vote accepted

There exist few typos in your kernel definition. This is how your kernel looks assuming a=2 (we denote it as A while defining the kernel as Kpart in the following). enter image description here

Please utilize the code from here to solve your problem. Below I changed the constants and functional arguments of FredholmKind2 to fit your particular problem.

n = 20;(*number of discretization*)
a = 0.;
b = 1.;
lambda = -1.;
Kpart[s_, t_] := With[{A =2},
(A/2)*(BesselJ[1, A*(s + t)] - BesselJ[1, A*Abs[s - t]]-I*StruveH[1, A*(s + t)]
+ I*StruveH[1, A*Abs[s - t]])];
Gpart[x_] := x;
f1 = FredholmKind2[{a, b, lambda, Kpart, Gpart}, n,Method -> Automatic];
f2 = FredholmKind2[{a, b, lambda, Kpart, Gpart}, n,Method -> NIntegrate];

In both the methods the Re and Im part of your complex solution function coincide pretty well.

(Plot[Evaluate@(# /@ {f1[x], f2[x]}), {x, a, b}, Frame -> True, 
Axes -> False, PlotStyle -> {{Thick, Opacity@.45}, {Dashed, Red}},
 PlotLegends -> {"Automatic", "NIntegrate"}, 
ImageSize -> 400] & /@ {Re, Im})

enter image description here

share|improve this answer
    
This was very helpful (note:the Gpart is a function of s and equal to s not x). Is there a way to solve this without evaluating A? I am asking this because next I need to calculate the function 'K[A]=A^3 Integrate[s f[s],{s,0,1}]'. –  EvPl Aug 26 at 15:18
    
@EvaPlevri I am afraid symbolic A will not fit here. –  PlatoManiac Aug 26 at 17:26
    
Do you know if there is another way to solve an integral equation with symbolic parameters in it? –  EvPl Aug 27 at 10:38
    
Sorry! I do not know answer to your symbolic parameter question. I used Plot3D[Kpart[s, t],{s,-1,1},{t,-1,1},PlotPoints-> 40] to plot the kernel. –  PlatoManiac Aug 27 at 11:12

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.