This is to announce a new version of ApproxFun 
(https://github.com/dlfivefifty/ApproxFun.jl), a package for approximating 
functions.  The biggest new feature is support for PDE solving.  The 
following lines solve Helmholtz equation u_xx + u_yy + 100 u = 0 with the 
solution held to be one on the boundary:

d=Interval()⊗Interval()                # the domain to solve is a rectangle

u=[dirichlet(d),lap(d)+100I]\ones(4)   # first 4 entries are boundary 
conditions, further entries are assumed zero
contour(u)                             # contour plot of the solution, requires 
GadFly

PDE solving is based on a recent preprint with Alex Townsend 
(http://arxiv.org/abs/1409.2789).   Only splitting rank 2 PDEs are 
implemented at the moment.  Examples included are:

    "examples/RectPDE Examples.ipynb": Poisson equation, Wave equation, 
linear KdV, semiclassical Schrodinger equation with a potential, and 
convection/convection-diffusion equations. 
    "examples/Wave and Klein–Gordon equation on a square.ipynb": On-the-fly 
3D simulation of time-evolution PDEs on a square.  Requires GLPlot.jl 
(https://github.com/SimonDanisch/GLPlot.jl).   
    "examples/Manipulate Helmholtz.upynb": On-the-fly variation of 
Helmholtz frequency.  Requires Interact.jl 
(https://github.com/JuliaLang/Interact.jl)

Another new feature is faster root finding, thanks to Alex.

Reply via email to