How Do FDTD, Finite Volume, and Finite Elements Differ?

In summary, the finite difference, finite volume, and finite element methods all solve Maxwells equations numerically, but they differ in how the solutions are obtained and how shocks are handled.
  • #1
physmurf
27
0
Numerical Methods Help!

I have been trying to understand the differences between Finite-Difference Time-Domain (FDTD), Finite Volume, and the Finite Elements methods of solving Maxwell's equations numerically. I have used the FDTD method for solving Maxwells Equations. I did this without knowing anything about the other two methods. So, now I need to know how FDTD is different from the other two.

Thanks
 
Physics news on Phys.org
  • #2
In the finite elements approach you compute a solution of the differential equation on each element and then you "assemble" these individual solutions into a global one. So you solve your differential equation on each element.

In the finite difference approach you work always with global solutions. The differential operators are represented by matrices and the differential equation is reduced to a linear system of equations. Solving this system you obtain directly the solution of the differential equation.

Another difference consists of the fact that the finite element method is limited to a well defined class of differential equations (see Lax-Milgram theorem).

Hope it helps
clive
 
Last edited:
  • #3
That's a great help clive. You don't happen to know anything about the finite volume approach?

Thanks again

Kurt
 
  • #5
Finite volume methods are used when you have a conservation law to work with. Something like [tex] u_t + f_x = 0 [/tex] where f(u) is a flux. Rather than just evaluating u at grid points as you do in finite differences, you need to average u over little cells to get the value for a point. You have to make sure what goes out of cell i is going into cell i+1. Finite volume methods can be useful if you're trying to handle a shock without screwing everything up.
 
  • #6
LeBrad said:
Finite volume methods can be useful if you're trying to handle a shock without screwing everything up.

What should you use if you do want to screw everything up?
 
  • #7
Ah, now I'm an expert on that!
 
  • #8
SpaceTiger said:
What should you use if you do want to screw everything up?

Finite differences would be a good start. If you apply a finite difference method and a finite volume method to the same problem which contains a shock, the finite differences method will probably give you garbage and the finite volume method will probably give you yummy stuff.

A non-conservative method is likely to give you a solution which propagates the shock at the wrong speed. This results in incorrect/inconsistent fluxes across the domain. If you're using a finite volume scheme derived from a conservation equation this will never happen, because an incorrect flux would mean your thing is not being conserved, and these methods don't allow that. Of course you could still get the wrong answer for other reasons.

In fact, a finite volume scheme can give many solutions for a problem with a shock, and mathematically they may all work. But only one solution will make physical sense, so you need to use an entropy satisfying scheme to automatically pick the right solution.
 

FAQ: How Do FDTD, Finite Volume, and Finite Elements Differ?

What is Numerical Methods Help?

Numerical Methods Help is a branch of mathematics that deals with the development and application of algorithms and computational techniques to solve mathematical problems. It involves using numerical approximations and simulations to find solutions to problems that are difficult or impossible to solve analytically.

Why are numerical methods important?

Numerical methods are important because they allow us to solve complex mathematical problems that cannot be solved by hand. They are also essential in many fields of science and engineering, such as physics, economics, and computer science, where analytical solutions may not be feasible or accurate enough.

What are some common numerical methods?

Some common numerical methods include Newton's method, bisection method, Gaussian elimination, Runge-Kutta methods, and Monte Carlo simulation. These methods are used to solve problems such as finding roots of equations, solving differential equations, and performing integrations and optimizations.

How do I choose the right numerical method for a problem?

The choice of numerical method depends on the specific problem and its requirements. Factors to consider include the type of problem (e.g. finding roots, solving differential equations), the accuracy needed, and the computational resources available. It is important to understand the advantages and limitations of different methods to make an informed decision.

What are some tools and resources for learning about numerical methods?

There are many books, online courses, and tutorials available that cover various numerical methods and their applications. Some popular software packages for numerical computing include MATLAB, Python's NumPy and SciPy libraries, and R. It can also be helpful to join online communities and forums where you can ask questions and exchange knowledge with other scientists and mathematicians.

Back
Top