Dividing Tet list

TetGen, import mesh, Paraview, Quasar, etc

Dividing Tet list

Postby Giannis » Thu Jul 14, 2016 8:44 am

Hi,

I would like to know if it is possible to subdivide a tet mesh to two different tet lists, according to desired corrdinates, on which i want to assign different materials.

Thanks
Giannis
 
Posts: 9
Joined: Sun Oct 11, 2015 8:41 pm

Re: Dividing Tet list

Postby zhouxinwei » Thu Jul 14, 2016 5:35 pm

The general approach is:

(1) create a geometry type element list. The geometry type list doesn't have a material model, and does not enter the solver loop, where the nodal forces are computed, equation of motion is integrated, etc.

(2) select elements of interest from the geometric element list

(3) create the real element list using selected elements from the geometric element list in (1), with desired finite element formulation. This element list will enter the solver loop.

Repeat (2) and (3) to create other sub lists.

For example:
Code: Select all
TetSolidList PRSM Geometry {
  EditNodeList { // select nodes of the elements of interest
    Select cx < 0.1 cm
  }
  Select 4n // select element of interest
}
TetSolidList tet1 Flex {
  Material ...
  CopySelectedElementFromList PRSM // use seleteced geometric elements to create finite elements
}
TetSolidList PRSM { // retrieve the geometric element list
  EditNodeList {
    Select cx > -0.01 cm
  }
  Select 4n
}
TetSolidList tet2 Flex {
  Material ...
  CopySelectedElementFromList PRSM
}


Attached is the full input.
Attachments
run2.mrs
(1.25 KiB) Downloaded 594 times
zhouxinwei
 
Posts: 208
Joined: Thu Jul 09, 2015 7:12 pm

Re: Dividing Tet list

Postby Giannis » Fri Jul 15, 2016 7:24 am

Thanks
Giannis
 
Posts: 9
Joined: Sun Oct 11, 2015 8:41 pm

Re: Dividing Tet list

Postby rwendner » Fri Jul 15, 2016 8:24 am

For consistency and ease of use I suggest to maintain the logic and syntax of other lists

For NodeLists we use
EditNodeList{} with the command "Make NodeList"

Then similarly we should have "Make TetList", removing the need for a "CopySelectedElementFromList" command.
This way we can use the generated geometric TetLists for multiple purposes, e.g. to create finite elements for the mechanical problem or diffusion problem.
rwendner
 
Posts: 154
Joined: Wed Jul 15, 2015 4:35 pm

Re: Dividing Tet list

Postby zhouxinwei » Fri Jul 15, 2016 4:05 pm

"Make NodeList" is creating a sub list, AND the created list is the same type of the parent list - NodeList.

Where as CopySelectedElementFromList does different things: it is using a different TYPE list rather than itself. In the example showed earlier, we create Flex (FE) tet list using the Geometric tet list by copying geometry information. This is different. We cannot Make a FE tet list right in the definition of a Geometric tet list, because then we need to add type information, plus sub list does not go into the solver loop. To do what you suggested, we need a major change in MARS input structure which is not worth it.
zhouxinwei
 
Posts: 208
Joined: Thu Jul 09, 2015 7:12 pm

Re: Dividing Tet list

Postby rwendner » Mon Jul 18, 2016 6:44 pm

I understand that there are different types of lists.
My point is that similar functions should have commands that work analogously.
Otherwise, using MARS becomes a headache. The keywords should be intuitive and follow a consistent logic and syntax.
I don't see this being always the case.

rename, make, import, ... are available for one type of list but not always for the other
CopySelectedElementFromList, TetList in the new DiffusionFramework both create new lists from existing geometry lists....
CopySelectedElementFromList, ImportNodeList both copy other lists and append them ...
rwendner
 
Posts: 154
Joined: Wed Jul 15, 2015 4:35 pm

Re: Dividing Tet list

Postby zhouxinwei » Mon Jul 18, 2016 7:16 pm

We agree that similar functions should have the similar commands. We will fix the inconsistencies if you pinpoint us the ones.

rename, make, import, ... are available for one type of list but not always for the other


Please elaborate.

CopySelectedElementFromList, TetList in the new DiffusionFramework both create new lists from existing geometry lists....


TetList in the diffusion framework use geometry information from a tet list. This tet list can either be type of geometry or a FE formulation. It uses the FULL tet list. CopySelectedElementFromList only uses the ones of interest. They are different enough to be two keywords.

CopySelectedElementFromList, ImportNodeList both copy other lists and append them ...


The first one is copying geometry information of selected elements to construct new elements, the second is referencing another whole node list, there is no copying. They are different enough to be two keywords.
zhouxinwei
 
Posts: 208
Joined: Thu Jul 09, 2015 7:12 pm


Return to Pre/Post Processing

Who is online

Users browsing this forum: No registered users and 2 guests

cron