Store midpoint of all the squares inside the square of width 1cm.
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
There is a square of width 1cm.Discretize it in n squares and find the midpoint of all the square.Plot it
Donot use any pde tools or inbuilt function.
3 comentarios
Respuestas (1)
Aditya
el 29 de Nov. de 2022
Hi,
I understand that you are trying to divide a square of side 1 into n squares and find mid points of all these smaller squares.
A basic approach is to divide the larger square into rows and columns and proceed as follows:
- The number of squares in each column/row is sqrt(n) (=4 in above figure).
- The side of a smaller square is of length 1/sqrt(n) (=0.25 in above figure).
- Find the mid-point of first square (0.25/2, 0.25/2) and keep incrementing by side of square (0.25) to get mid points along an axis.
- Once, we have mid points along a side, we can use meshgrid to generate all points.
Here is a simple function that does that:
function discretize_square(n)
% n has to be a perfect square.
assert(mod(sqrt(n), 1) == 0, "n not a perfect square");
side_divs = sqrt(n);
delta = 1/side_divs;
midpts = delta/2: delta:1;
[x,y]= meshgrid(midpts, midpts);
scatter(x,y);
xlim([0, 1]);
ylim([0,1]);
end
A few points for above code:
- This will work only is n is a perfect square.
- Notice the colon operator for creating array of mid points along a side.
0 comentarios
Ver también
Categorías
Más información sobre General PDEs en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!