fun = sawtooth(2 * pi * 50 * t);
ini_tickness = 1 * ones(size(fun));
in_Domain = ini_tickness + normalize(fun, "range");
pgon = polyshape([0, Lx, Lx, 0], [Ly, Ly, 0, 0]);
title('Rectangular Domain');
x_holo = linspace(0, Ly - 1, length(in_Domain));
holo_polygon = polyshape([x_holo, fliplr(x_holo)], [zeros(size(x_holo)), fliplr(y_holo)]);
Warning: Polyshape has duplicate vertices, intersections, or other inconsistencies that may produce inaccurate or unexpected results. Input data has been modified to create a well-defined polyshape.
holo_polygon = rotate(holo_polygon, -90, [20, 0]);
holo_polygon = translate(holo_polygon, -19, -0.5);
title('internal Geometry');
polyout = subtract(pgon, holo_polygon);
title('Composite Geometry');
tr = triangulation(polyout);
polyout = boundaryshape(tr);
pdem.geometryFromMesh(tr.Points', tr.ConnectivityList');
pdegplot(pdem, 'EdgeLabels', "on");
title('Edges of the Geometry');
pdegplot(pdem, 'FaceLabels', "on");
title('Faces of the Geometry');
generateMesh(pdem, "GeometricOrder", "linear");