2D Finite Difference Convergence Rate Issues

In summary: It is also possible that there is an error in your calculations, so it may be helpful to double-check your code and compare it to the method of manufactured solutions. In summary, the presence of holes in the complex domain may be affecting the convergence rates in your code, and you may need to adjust your boundary conditions or increase the accuracy of your discretization to improve the results.
  • #1
Aggie1313
1
0
I have completed a 2D finite difference code in MATLAB that has a domain of (0,1)x(0,1) and has Dirichlet Boundary Conditions of value zero along the boundary. I get convergence rates of 2 for second order and 4 for fourth order. My issue now is that I'm now wanting to change the domain to a more complex domain and see the resulting convergence rates. I have cut 4 square holes throughout the plate within the domain (0,1)x(0,1) with Dirichlet Boundary Conditions of value zero. When I run the code for the new domain I do not get convergence rates of 2 and 4. They usually end up being in the 1.3 - 2 range. I'm imposing the inner boundary conditions using the penalty method.

It is my belief that the holes within the new domain are causing the convergence rates to change. Is there a reason for this or is something just incorrect in my calculations? I have made sure the code was correct using the method of manufactured solutions.

Attached is example domain and solution output.

I can attach the code if needed but I'm more so asking a theory question I suppose
 

Attachments

  • ExampleDomain.png
    ExampleDomain.png
    1.6 KB · Views: 512
  • ExampleSolution.png
    ExampleSolution.png
    18.2 KB · Views: 491
Last edited:
Physics news on Phys.org
  • #2
.It is likely that the holes in the domain are causing the convergence rate to change. This could be due to the penalty method you are using to impose the inner boundary conditions, which may not be accurate enough to capture the correct solution. For example, the penalty method assumes a linear relationship between the solution values at the inner boundary and outside the boundary, and this assumption may not hold for the complex domain with the holes. You can try different methods for imposing the inner boundary conditions to see if the convergence rates improve. Alternatively, you can increase the resolution of the grid or use higher-order discretization schemes to ensure accuracy.
 

What is a 2D Finite Difference method?

A 2D Finite Difference method is a numerical technique used to solve differential equations on a 2-dimensional grid. It involves approximating derivatives at discrete grid points using a finite difference formula, and then using these approximations to solve the differential equation.

Why is convergence rate important in 2D Finite Difference methods?

Convergence rate is important in 2D Finite Difference methods because it determines how quickly the numerical solution approaches the exact solution. A higher convergence rate means that the solution will be more accurate and require fewer grid points, saving computational time and resources.

What factors affect the convergence rate of a 2D Finite Difference method?

The convergence rate of a 2D Finite Difference method can be affected by the grid spacing, boundary conditions, and the order of the finite difference formula used. Other factors such as the smoothness of the solution and the stability of the method can also impact the convergence rate.

How can one improve the convergence rate of a 2D Finite Difference method?

To improve the convergence rate of a 2D Finite Difference method, one can use a higher order finite difference formula, refine the grid by decreasing the grid spacing, or use a more accurate form of boundary conditions. It is also important to select a stable and efficient method for solving the differential equation.

What are some common issues that can arise with convergence rate in 2D Finite Difference methods?

Common issues with convergence rate in 2D Finite Difference methods include slow convergence, which can lead to longer computational times, and non-convergence, which can result in inaccurate solutions or errors. These issues can be caused by factors such as an inappropriate choice of finite difference formula or instability in the method.

Similar threads

Replies
6
Views
2K
  • Differential Equations
Replies
1
Views
2K
  • Differential Equations
Replies
7
Views
4K
  • Differential Equations
Replies
2
Views
2K
  • Differential Equations
Replies
3
Views
2K
Replies
2
Views
1K
  • Differential Equations
Replies
5
Views
2K
  • Differential Equations
Replies
8
Views
1K
  • Differential Equations
Replies
1
Views
2K
  • General Math
Replies
7
Views
1K
Back
Top