On Fri, Apr 6, 2012 at 6:57 AM, Daniel Wheeler <[email protected]>wrote:
> > > On Thu, Apr 5, 2012 at 8:07 PM, Yun Tao <[email protected]> wrote: > >> Tremendously helpful response! Thanks, Dan! >> >> So I was playing around with the Van Leer Convection Term and still >> noticed time-dependent error, albeit much improved over the other schemes. >> I've plotted a simple graph with the same script below but tracking the >> peak value of the wave (which should stay the same) over time for >> convection coefficient going from 5.5 to 10.0 with increments of 0.5. >> Interestingly enough, despite the initial presence of error that >> asymptotically dampens, its temporal trajectory seems to stay the same >> regardless of the coefficient chosen (see attachment). >> > > I'm not sure what you mean. Are you saying that the value of the > coefficient doesn't change the speed of the wave? > > Sorry about the ambiguity. I meant that, even with VanLeerConvectionTerm, a original Gaussian function is not preserved over time when given only a convection term and no diffusion term. This can be seen in the decreasing peak value of the wave as it moves across space. This decreasing peak value function, however, appears to be the same regardless of the convection coefficient I use, which is interesting by itself. My main concern right now is how to preserve the initial condition that is a probability density function. VanLeer scheme is much better than the first order ones, but still isn't quite perfect. Maybe the solution is to simply refine the spatial scale (using smaller increment)? > But I suppose my question now is: is there another scheme that is even >> higher order accurate? >> > > Not in FiPy. You can use spectral methods for this depending on the > boundary conditions and the coefficient dependencies. Fourth order with > limiters seems to be what people use if you need to resolve the waves > accurately for any general hyperbolic equation, but we don't have those > schemes in FiPy. > > >> If not, will sweeping reduce the initial error seen here? >> > > No. The problem is not the non-linearities. Sweeping is just fixed point > iteration to resolve the non-linearities. It is the spatial order of > accuracy that matters. Take a look at "Spectral Methods in MATLAB" or > "Finite Volume Methods for Hyperbolic Problems" for a better understanding. > > Fantastic references! Thanks! > Cheers > > -- > Daniel Wheeler > > _______________________________________________ > fipy mailing list > [email protected] > http://www.ctcms.nist.gov/fipy > [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ] > > -- Graduate Group of Ecology Doctoral Candidate Department of Environmental Science and Policy Center for Population Biology University of California, Davis
_______________________________________________ fipy mailing list [email protected] http://www.ctcms.nist.gov/fipy [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]
