# Build a local mesh

**URL:** <https://community.freefem.org/t/build-a-local-mesh/1382>\
**Category:** General Discussion\
**Created:** [December 10, 2021, 8:14pm UTC](https://community.freefem.org/t/build-a-local-mesh/1382 "2021-12-10T20:14:27Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![larismartins](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.freefem.org/larismartins/32/2712_2.png) [@larismartins](https://community.freefem.org/u/larismartins)\
**Post date:** [December 10, 2021, 8:14pm UTC](https://community.freefem.org/t/build-a-local-mesh/1382/1 "2021-12-10T20:14:27Z")

</div>

Hi, is it possible to build local mesh in 2D? If I’m using:

mesh Th = square(2,2);

as a global mesh, and I want to build a refined local mesh for each triangle. Can I do that? How?

---

<div class="post-metadata">

**Author:** ![Pitagoras1](https://avatars.discourse-cdn.com/v4/letter/p/58956e/32.png) [@Pitagoras1](https://community.freefem.org/u/Pitagoras1)\
**Post date:** [December 12, 2021, 12:29am UTC](https://community.freefem.org/t/build-a-local-mesh/1382/2 "2021-12-12T00:29:40Z")

</div>

Olá Larissa,

Que tipo de malha você se refere?

Você quer refinar essa mesmo? Ou busca uma outra mais específica?

Se for refinar essa, basta mudar esse número 2, por um número maior.  
Esse comando global constrói um quadrado unitário, em que cada aresta é particionada em duas partes.

Esse dois indica essa partição. Caso queira aumentar a partição, basta aumentar esse valor.

Cordialmente,

Pitágoras Carvalho.

---

<div class="post-metadata">

**Author:** ![larismartins](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.freefem.org/larismartins/32/2712_2.png) [@larismartins](https://community.freefem.org/u/larismartins)\
**Post date:** [December 13, 2021, 2:31pm UTC](https://community.freefem.org/t/build-a-local-mesh/1382/3 "2021-12-13T14:31:24Z")

</div>

Não é bem isso. Eu qro fazer malhas locais em cada triangulo. Entao por exemplo, se eu tenho uma malha global com 8 triangulos (square(2,2)) e ai em cada um desses triangulos eu quero criar uma outra malha.

---

<div class="post-metadata">

**Author:** ![prj](https://avatars.discourse-cdn.com/v4/letter/p/ecae2f/32.png) [@prj](https://community.freefem.org/u/prj)\
**Post date:** [December 13, 2021, 8:06pm UTC](https://community.freefem.org/t/build-a-local-mesh/1382/4 "2021-12-13T20:06:07Z")

</div>

Simply use the keyword `trunc` with the parameter `split`, cf. documentation.

---

<div class="post-metadata">

**Author:** ![larismartins](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.freefem.org/larismartins/32/2712_2.png) [@larismartins](https://community.freefem.org/u/larismartins)\
**Post date:** [December 13, 2021, 8:09pm UTC](https://community.freefem.org/t/build-a-local-mesh/1382/5 "2021-12-13T20:09:07Z")

</div>

But how do I specify a triangle?

---

<div class="post-metadata">

**Author:** ![prj](https://avatars.discourse-cdn.com/v4/letter/p/ecae2f/32.png) [@prj](https://community.freefem.org/u/prj)\
**Post date:** [December 13, 2021, 8:12pm UTC](https://community.freefem.org/t/build-a-local-mesh/1382/6 "2021-12-13T20:12:20Z")

</div>

By reading the documentation: [Global variables](https://doc.freefem.org/references/global-variables.html#nutriangle).

---

<div class="post-metadata">

**Author:** ![larismartins](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.freefem.org/larismartins/32/2712_2.png) [@larismartins](https://community.freefem.org/u/larismartins)\
**Post date:** [December 13, 2021, 8:28pm UTC](https://community.freefem.org/t/build-a-local-mesh/1382/7 "2021-12-13T20:28:59Z")

</div>

But there is no parameter in the trunc function that lets me specify which triangle I want to split. I’m reading the documentation and I’m not finding how to do this

---

<div class="post-metadata">

**Author:** ![larismartins](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.freefem.org/larismartins/32/2712_2.png) [@larismartins](https://community.freefem.org/u/larismartins)\
**Post date:** [December 14, 2021, 9:38pm UTC](https://community.freefem.org/t/build-a-local-mesh/1382/9 "2021-12-14T21:38:29Z")

</div>

![globalmesh](https://canada1.discourse-cdn.com/flex030/uploads/freefem/original/1X/ebedc20c7567dfcd79fe184a13e30258d94b0d60.png)  
Suppose that I’m working with this as a global mesh

Then for each triangle want to build a diferente mesh.  
For exemple, something like that:

```auto
mesh[int] Th(NbTriangles);
for(int i = 0; i < NbTriangles; i++){
   Th[i] = trunc(Triangle[i], slipt=3);
}

```

Or maybe if I can pass de nodes number that define a triangle and build a mesh. I’m searching but I haven’t seen anything like that in the documentation, or in discussions here.
