I want to create a model by geometryFromEdges(model,@squareg) but i need other sizes of square. @squareg creates 1x1, but i want 0.6x0.6.
Could anybody help me understand what i need to change in squareg. I look code by using
type squareg
I know that any square is created in PDE TOOLbox and exported in workspace and i can use
geometryFromEdges(model,g)
but then i created mesh by
generateMesh(model,'Hmax',0.05,'GeometricOrder','Linear');
and that mesh is less, and even if i decrease Hmax, i get more unstable solutions of PDE in comparison if i used geometryFromEdges(model,@squareg) and then created mesh.

 Respuesta aceptada

Ravi Kumar
Ravi Kumar el 6 de Jun. de 2019
Editada: Ravi Kumar el 6 de Jun. de 2019

1 voto

Hi Pavel,
I don't fully understand your question, but I can answer a portion on how to create square of different size. You can use decsg to create geometry using coordinate information.
Here is a small example for creating square with 0.6 as edge length.
% Coordinates
lowerLeft = [0 ,0 ];
lowerRight = [0.6 , 0 ];
upperRight = [0.6 , 0.6];
upperLeft = [0.0 , 0.6];
% Geometry matrix
S = [3,4 lowerLeft(1), lowerRight(1), upperRight(1), upperLeft(1), ...
lowerLeft(2), lowerRight(2), upperRight(2), upperLeft(2)];
gdm = S';
% Names
ns = 'S';
% Set formula
sf = 'S';
% Invoke decsg
g = decsg(gdm,ns,sf');
% Import g into model using geometryFromEdges.
model = createpde;
geometryFromEdges(model,g);
pdegplot(model,'EdgeLabel','on');
Regards,
Ravi

1 comentario

Pavel M
Pavel M el 6 de Jun. de 2019
Hi Ravi, thank you for your help.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Preguntada:

el 5 de Jun. de 2019

Editada:

el 6 de Jun. de 2019

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by