ke, 2006-11-08 kello 16:08 -0800, David L Goldsmith kirjoitti: > Hi! I tried to send this earlier: it made it into my sent mail folder, > but does not appear to have made it to the list. > > I need to numerically solve: > (1-t)x" + x' - x = f(t), x(0) = x0, x(1) = x1 > I've been trying to use (because it's the approach I inherited) an > elementary finite-difference discretization, but unit tests have shown > that that approach isn't working. [clip]
You could try to use some of the pre-existing www.netlib.org codes for solving BVPs. This only requires writing a wrapper. However, I have written a wrapper for the COLNEW code, which is a finite-difference method written by Ascher & Bader in '87, having an adaptive mesh selection. You can find it here: http://www.iki.fi/pav/bvp As I understand, COLNEW does not have any special handling for singular coefficients, but nevertheless it seems to be able to solve your problem. The code goes as follows: ---------------------------------------------------- import scipy as N import bvp u0 = 1 u1 = 2 def f(t): return N.sin(2*t) def fsub(t, z): u, du = z return N.array([(f(t) + u - du)/(1-t)]) def gsub(z): u, du = z return N.array([u[0] - u0, u[1] - u1]) tol = [1e-5, 1e-5] boundary_points = [0, 1] solution = bvp.colnew.solve(boundary_points, [2], fsub, gsub, is_linear=True, tolerances=tol, vectorized=True, maximum_mesh_size=300) import pylab x = solution.mesh pylab.plot(x, solution(x)[:,0]) pylab.savefig('solution.png') ---------------------------------------------------- BR, Pauli Virtanen
signature.asc
Description: Digitaalisesti allekirjoitettu viestin osa
------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________ Numpy-discussion mailing list Numpy-discussion@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/numpy-discussion