Solving a weakly singular integral equation - Take 2.
- To: mathgroup at smc.vnet.net
- Subject: [mg54485] Solving a weakly singular integral equation - Take 2.
- From: Zaeem Burq <Z.Burq at ms.unimelb.edu.au>
- Date: Mon, 21 Feb 2005 03:44:55 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
Dear all, I am still trying to solve a Linear Volterra type-2 integral equation by using successive approximations method. I am mainly interested in the behaviour of the solution near zero. The unknown function is f[t]. Define p[x_]:= Exp[- 0.5 * x^2]/Sqrt[2 Pi] (* Gaussian probability density function*) c[t_]:= Sqrt[2.1 t Log[Log[1/t]] ] G[s_,t_]:= (c[t] - c[s]) p[(c[t]-c[s])/Sqrt[t-s]] / (t-s)^1.5 (* The kernel *) The integral equation is: f[t] = c[t]p[c[t]/Sqrt[t]] / t^1.5 - \int_{0}^{t} G[s,t] f[s] ds As you can see, the kernel has a $(t-s)^1.5$ in the denominator, i.e., singularities along the diagonal (s=t). These singularities are appropriately killed by the function p, but Mathematica seems to have trouble with them: Since c is differentiable (except at zero), the factor c[t] - c[s] in the numerator of the kernel is O(t-s) when t-s is small and t > 0. This means that the denominator (t-s)^1.5 is only as bad as Sqrt[t-s]. This combined with the exponential function, means that the kernel is actually at-least Holder continuous of order -0.5. Even when t=0, the exponential function kills the pole at zero. It is known from other sources, that this integral equation has a unique solution. I wrote down the following routine based on a paper in the Mathematica Journal: n is the number of iterations of the approximation process: \!\(Clear[c, approxsoln, K]\n n = 3\n 3\n \(p[x_] := \[ExponentialE]\^\(\(-x\^2\)/2\)\/\@\(2 \[Pi]\);\)\n \(c[t_] := Sqrt[2.1\ t\ Log[Log[1/t]]];\)\n \(approxsoln[x_] = 0;\)\n \(G[s_, t_] := \(\(\ \)\(\((c[t] - c[s])\)\ p[\(c[t] - c[s]\)\/\@\(t - s\)]\)\ \)\/\((t - s)\)\^1.5`;\)\n \(For[j = 1, j <= \ n, \(j++\), \[IndentingNewLine]values = Table[{t, \(\(\ \)\(c[t] p[c[t]\/\@t]\)\)\/\((t)\)\^1.5`\ - NIntegrate[G[s, t]*approxsoln[s], {s, 0, t}]}, {t, 0.0000000001, .01, .01\/10}]; \n approxsoln[t_] = InterpolatingPolynomial[values, t]; \[IndentingNewLine]Print[ j]];\)\[IndentingNewLine] Plot[approxsoln[x], {x, 0, .01}]\) The PROBLEMS: 1. I have had to truncated the integral away from zero - i.e., s runs from 0 to t, but t runs from 0.0000000001 to 0.01. It should run from 0 to 0.1. This is not entirely satisfactory, as I am mainly interested in behaviour near zero. 2. As the code stands, Mathematica tells me that the numerical integrals converge too slowly. I'd appreciate any help. Best, Zaeem. ________________________________ Zaeem Burq PhD Stochastic Processes, Dept. of Mathematics and Statistics, Unimelb. Room 201, Richard Berry Building University of Melbourne, Parkville, VIC 3052. ph: 8344 4248. http://www.ms.unimelb.edu.au/~zab