I am new to FEBio and am trying to figure out a way to simulate stenting in the pulmonary artery and have run into a few questions:
1.) Does anyone know a good way to setup a very simple stent expansion? To start, I am simply trying to expand a cylinder. The first issue I run into is that I don't believe FEBio has a way to prescribe displacement using cylindrical coordinates. I tried to get around this by centering the cylinder on the origin (0,0,0), and prescribing displacement in each quadrant using conversions from polar to cylindrical coordinates. In the following code, I attempted to expand the cylinder radially by 2 by applying the following displacement equations to the surfaces in the quadrants specified. When I only apply this technique to the first and third quadrants alone, it works. However, it will not work on the 2nd and 4th quadrants. I'm assuming these contain the nodes that lie on the Y axis and thus arctan(Y/X) cannot be defined.
<Boundary>
<prescribe bc="y" node_set="Quad 1 and 4 Y">
<scale lc="1" type="math"><math>2*sin(atan(Y/X))</math></scale>
<relative>0</relative>
</prescribe>
<prescribe bc="x" node_set="Quad 2 and 3 X">
<scale lc="2" type="math"><math>2*cos(180+atan(Y/X))</math></scale>
<relative>0</relative>
</prescribe>
<prescribe bc="y" node_set="Quad 2 and 3 Y">
<scale lc="3" type="math"><math>2*sin(180+atan(Y/X))</math></scale>
<relative>0</relative>
</prescribe>
<prescribe bc="x" node_set="Quad 1 and 4 X">
<scale lc="4" type="math"><math>2*cos(atan(Y/X))</math></scale>
<relative>0</relative>
</prescribe>
</Boundary>
I would really appreciate any input (or a simpler way to accomplish the task of expanding a cylinder radially).
2.) Even if the above technique worked along the Y axis, it still would not suffice if the stent was moved anywhere but the origin. Does FEBio have a way to create a local coordinate system? For example, if the stent was imported at a different location and rotation, how would I handle this?
3.)My vessel geometry needs to be patient specific. The images were segmented and then the surface meshes were processed in Meshmixer. When I import the vessels, they look like hollow objects with two surfaces--inner and outer separated by the wall thickness I prescribed. How do I tell FEBio to "fill the gap" in the vessel wall between the interior and exterior surface meshes? The simulations fail because the geometries that I applied materials to are not solid. I have been importing/exporting as .stl files, could this be part of the problem?
4.) I want to be able to edit the .feb file. However, when I go to import it back in, FEBio Studio cannot import it because it cannot recognize the "NodeSet" tag that it created. Even if I export a FE model, make no changes, and then import the same model, I cannot get FEBio Studio to read it in.
Help or comments on any of the above inquiries would be very appreciated.
Thanks in advance,
Carly
1.) Does anyone know a good way to setup a very simple stent expansion? To start, I am simply trying to expand a cylinder. The first issue I run into is that I don't believe FEBio has a way to prescribe displacement using cylindrical coordinates. I tried to get around this by centering the cylinder on the origin (0,0,0), and prescribing displacement in each quadrant using conversions from polar to cylindrical coordinates. In the following code, I attempted to expand the cylinder radially by 2 by applying the following displacement equations to the surfaces in the quadrants specified. When I only apply this technique to the first and third quadrants alone, it works. However, it will not work on the 2nd and 4th quadrants. I'm assuming these contain the nodes that lie on the Y axis and thus arctan(Y/X) cannot be defined.
<Boundary>
<prescribe bc="y" node_set="Quad 1 and 4 Y">
<scale lc="1" type="math"><math>2*sin(atan(Y/X))</math></scale>
<relative>0</relative>
</prescribe>
<prescribe bc="x" node_set="Quad 2 and 3 X">
<scale lc="2" type="math"><math>2*cos(180+atan(Y/X))</math></scale>
<relative>0</relative>
</prescribe>
<prescribe bc="y" node_set="Quad 2 and 3 Y">
<scale lc="3" type="math"><math>2*sin(180+atan(Y/X))</math></scale>
<relative>0</relative>
</prescribe>
<prescribe bc="x" node_set="Quad 1 and 4 X">
<scale lc="4" type="math"><math>2*cos(atan(Y/X))</math></scale>
<relative>0</relative>
</prescribe>
</Boundary>
I would really appreciate any input (or a simpler way to accomplish the task of expanding a cylinder radially).
2.) Even if the above technique worked along the Y axis, it still would not suffice if the stent was moved anywhere but the origin. Does FEBio have a way to create a local coordinate system? For example, if the stent was imported at a different location and rotation, how would I handle this?
3.)My vessel geometry needs to be patient specific. The images were segmented and then the surface meshes were processed in Meshmixer. When I import the vessels, they look like hollow objects with two surfaces--inner and outer separated by the wall thickness I prescribed. How do I tell FEBio to "fill the gap" in the vessel wall between the interior and exterior surface meshes? The simulations fail because the geometries that I applied materials to are not solid. I have been importing/exporting as .stl files, could this be part of the problem?
4.) I want to be able to edit the .feb file. However, when I go to import it back in, FEBio Studio cannot import it because it cannot recognize the "NodeSet" tag that it created. Even if I export a FE model, make no changes, and then import the same model, I cannot get FEBio Studio to read it in.
Help or comments on any of the above inquiries would be very appreciated.
Thanks in advance,
Carly
Comment