Computing end-points using the Neumann condition

hunt_mat
Homework Helper
Messages
1,816
Reaction score
33
TL;DR
How do I compute boundary values from a Neumann condition?
Suppose I have a boundary condition [itex]f'(0)=a[/itex]. I know the value of [itex]f(x)[/itex] at [itex]x=h/2,3h/2[/itex]. Does it make sense to write:
[tex] f'(x)=af(x)+bf(x+h/2)+cf(x+3h/2)[/tex]
Using Taylor series to expand, we obtain the following:
[tex] f'(x)=(a+b+c)f(x)+\frac{h}{2}(b+3c)f'(x)+\frac{h^{2}}{8}(b+9c)f''(x)[/tex]
By equating coefficients, we obtain the following set of linear equations for [itex]a,b[/itex] and [itex]c[/itex]:
[tex] a+b+c=0,\quad b+3c=\frac{2}{h},\quad b+9c=0[/tex]
The solution of which is:
[tex] a=-\frac{8}{3h},\quad b=\frac{3}{h},\quad c=-\frac{1}{3h}[/tex]
making:
[tex] f'(x)=-\frac{8}{3h}f(x)+\frac{3}{h}f(x+h/2)-\frac{1}{3h}f(x+3h/2) [/tex]
Using the above equation, it is possible to obtain:
[tex] f(0)=\frac{3h}{8}\left(-a+\frac{3}{h}f(h/2)-\frac{1}{3h}f(3h/2)\right)[/tex]
Is this a reasonable approach? I've tested it with a few functions and it appears to be accurate to [itex]10^{-4}\%[/itex]
 
Physics news on Phys.org
You are using [itex]a[/itex] as both the known value of [itex]f'(0)[/itex] and as the coefficient of [itex]f(0)[/itex] in your approximation to [itex]f'(0)[/itex]. Please don't use the same symbol to mean two different things!

Generally one would treat [itex]f(0)[/itex] as one of the unknowns, but instead of enforcing the DE at this point one instead requires that the appropriate one-sided approximation to the derivative should equal the prescribed value of the derivative on the boundary. In an explicit time-marching scheme this reduces to your given expression.
 
This is part of finite volume scheme, and I'm reducing the set of PDEs into a set of ODEs, a method of lines approach, and then I'm using ODE15s. So I'm converting averages within cells to values on the cell boundary.
 

Similar threads

  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 0 ·
Replies
0
Views
5K
  • · Replies 1 ·
Replies
1
Views
4K
  • · Replies 10 ·
Replies
10
Views
2K
  • · Replies 3 ·
Replies
3
Views
4K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 1 ·
Replies
1
Views
4K
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 1 ·
Replies
1
Views
4K