Re: Partial diff equations

*To*: mathgroup at smc.vnet.net*Subject*: [mg58556] Re: Partial diff equations*From*: dsboily at fastmail.ca*Date*: Thu, 7 Jul 2005 05:35:44 -0400 (EDT)*References*: <200507050557.BAA29453@smc.vnet.net><dag1cu$5jm$1@smc.vnet.net>*Sender*: owner-wri-mathgroup at wolfram.com

Thanks everyone, I think that in general PDEs are out of reach of computer algebra systems, but for the particular case of a gradient vector field there is a very straightforward solution procedure. The use of mathematica was sort of required because the PDEs I wanted to solve had more than a hundred terms each. The technique outlined by Devendra worked like a charm. I should have mentioned that the system I wanted to integrate was actually a gradient vector field (i.e. Curl is nul). And so the first solution method mentioned was perfect for this type of system, as it's basically the way a human would do it. My system was of dim 3, so the solution procedure went like this: sys = {fx, fy, fz} <<Calculus`VectorAnalysis` Curl[sys, Cartesian] to verify if sys is indeed a gradient vector field sol1 = DSolve[D[f[x,y,z],x]==sys[[1]], f, {x, y, z}, GeneratedParameters -> g] sol2 = DSolve[(D[f[x, y, z], y] /. sol1[[1]]) == sys[[2]], g[1], {y,z}, GeneratedParameters -> h] sol3 = DSolve[(D[f[x, y, z], z] /. sol1[[1]] /. sol2[[1]]) == sys[[3]], h[1], {z}] f[x,y,z] /. sol1[[1]] /. sol2[[1]] /. sol3[[1]] Which i suppose could be automated in future releases of mathematica. The only problem was that while working on sol3 my computer ran out of memory. My whole system froze up. I'll try different variations of the above, not forgetting to use MemoryConstrained. Also, is there a way to tell mathematica to be more conservative in its memory usage? Thank you, David Boily Centre for Intelligent Machines McGill University Montreal, Quebec

**References**:**Partial diff equations***From:*David Boily <dsboily@fastmail.ca>