How to make a polar grid with variable number of angular points?
Show older comments
Greetings...
I am making a grid to discretize a circular disk area for an integration process:
- we have the radial variable ρ and the angle ϕ.
- Making it using "meshgrid" (even with nonuniform ticks) yields a unnecessary large density of ϕ at small ρ and a poor density of ϕ at large ρ. This affects the convergence of the integral, and capturing the variaion on the disk will require to take inefficient very large grids.
Requirements:
- Making the grid on varying density basis. That is, as the value of ρ increases, the number of ϕ samples increase.
- The grid should be integrable in MATLAB. I mean, can we use trapz or any built in numerical integration function? Or do it using "sum" in a straight foreward manner?
Thanks in advance for any help.
Answers (1)
I would use integral2() which, for one thing, does not require you to provide a meshgrid of samples. However, remember that with 2D integrals in polar coordinates, you have to multiply the integrand by ρ.
2 Comments
Mohamed Abd El Raheem
on 20 Feb 2022
Edited: Mohamed Abd El Raheem
on 20 Feb 2022
Matt J
on 21 Feb 2022
I don't have a formula to integrate. As I know, integral2 should take a formula through an input function handle.
You need a function handle, but that doesn't mean you need a formula. You can supply a handle to a function that interpolates the data.
Categories
Find more on Numerical Integration and Differentiation in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!