IBBM 2017

Page 3 of 3 FirstFirst 123
Results 21 to 29 of 29

Thread: Negative Jacobian and Node Numbering

  1. #21
    Join Date
    Nov 2007
    Location
    Salt Lake City, UTAH
    Posts
    1,664

    Default

    Hi,

    i) Sorry if I missed it, but can you please explain what problem you are referring too?

    ii) Your interpretation of the color is correct. PreView always draws the normal in the outward direction. I assume you are talking about the labels on the tried? If so, then no, you cannot turn them off in PreView, although we know that on some macs, the labels don't always show up correctly.

    iii) Depending on the problem, you might be able to correct the issue inside PreView, but I'll need to know a little bit more about the issue you are having.

    In any case, I hope this helps, and let us know if you have any further questions.

    Cheers,

    Steve
    Department of Bioengineering, University of Utah
    Scientific Computing and Imaging institute, University of Utah

  2. #22
    Join Date
    Aug 2015
    Location
    Brazil
    Posts
    13

    Default

    Hi Steve,

    Thank you for your reply.

    i) This is the error (inverted elements):

    **************************** E R R O R ****************************
    Negative jacobian detected at integration point 1 of element 55927
    Jacobian = -0.886097
    Did you use the right node numbering?
    Nodes:22265,22266,22281,22286
    ************************************************** *****************

    **************************** E R R O R ****************************
    Found 28046 initially inverted elements.
    Run will be aborted.
    ************************************************** *****************

    Here are my workflows experienced to solve this, but not effective yet:

    a) (like suggested in a post above) export surface as a .poly -> mesh with Tetgen -> importing to PreView.

    b) import volume mesh .msh directly to PreView -> invert elements.

    c) reorient the mesh in my script (a function of iso2mesh's toolbox) before building the .feb structure.

    Moreover, if a) or b) had worked, they wouldn't be the most suitable options to me since I'm exporting the whole
    .feb xml structure directly from a Matlab script with everything set (BCs, loads, etc.). c) looks like fine, but doesn't have
    the desirable effect in PreView (above error).

    ii) Great! Yes, I talk about the tried and I'm using mac, indeed. OK.
    But, I've a last point for my enlightenment : for instance, I see coloured stems - vectors - starting from
    a white color (at the face) to a red color (outward the face).
    What you call "outward" is the direction "white -> red"?? That's to say, "inward" would be "red -> white"? I can't see arrows...

    iii) Good! Is there a way to solve it inside PreView so that I don't need set the conditions by hand, i.e., do what the xml automatically does through my script?
    For my geometry, this would be insane!

    Best regards,

  3. #23
    Join Date
    Aug 2015
    Location
    Brazil
    Posts
    13

    Default

    Hi Steve,

    Thank you for your reply.

    i) This is the error (inverted elements):

    **************************** E R R O R ****************************
    Negative jacobian detected at integration point 1 of element 55927
    Jacobian = -0.886097
    Did you use the right node numbering?
    Nodes:22265,22266,22281,22286
    ************************************************** *****************

    **************************** E R R O R ****************************
    Found 28046 initially inverted elements.
    Run will be aborted.
    ************************************************** *****************

    Here are my workflows experienced to solve this, but not effective yet:

    a) (like suggested in a post above) export surface as a .poly -> mesh with Tetgen -> importing to PreView.

    b) import volume mesh .msh directly to PreView -> invert elements.

    c) reorient the mesh in my script (a function of iso2mesh's toolbox) before building the .feb structure.

    Moreover, if a) or b) had worked, they wouldn't be the most suitable options to me since I'm exporting the whole
    .feb xml structure directly from a Matlab script with everything set (BCs, loads, etc.). c) looks like fine, but doesn't have
    the desirable effect in PreView (above error).

    ii) Great! Yes, I talk about the tried and I'm using mac, indeed. OK.
    But, I've a last point for my enlightenment : for instance, I see coloured stems - vectors - starting from
    a white color (at the face) to a red color (outward the face).
    What you call "outward" is the direction "white -> red"?? That's to say, "inward" would be "red -> white"? I can't see arrows...

    iii) Good! Is there a way to solve it inside PreView so that I don't need set the conditions by hand, i.e., do what the xml automatically does through my script?
    For my geometry, this would be insane!

    Best regards,

  4. #24
    Join Date
    Nov 2007
    Location
    Salt Lake City, UTAH
    Posts
    1,664

    Default

    Hmm, I was going to suggest use the Invert elements tool in PreView, but it sounds like you already tried that. Strange, cause that usually does the trick. Did you apply the Invert tool on the entire mesh or only on the inverted elements? Is there any way you could attach the model or email it to me? I'd like to see what is going on with it.

    The colors for the vectors do go from white (on the surface) to a color, in the outward direction.

    Cheers,

    Steve
    Department of Bioengineering, University of Utah
    Scientific Computing and Imaging institute, University of Utah

  5. #25
    Join Date
    Aug 2015
    Location
    Brazil
    Posts
    13

    Default

    Hi Steve!

    Eureka! I could run my first simulation!!!

    I think I found a mistaken step... But questionable.

    While calling the method 'reorientmesh()' - this is from iso2mesh toolbox -, I was passing the wrong array entries which define the
    element's table. Then, I suppose that the mesh was going out from my script with no effect. But, even applying 'Invert' inside PreView,
    the Jacobian error remained. Of course, the bad use of the function belongs to iso2mesh's realm and to my skill over it. Fine...

    Well, I could run the simulation on Febio doing the following: I've applied the 'reorientmesh()' passing the arguments correctly and then applied 'Invert' in PreView.
    I'm not completely sure why I have to use 'Invert' even with 'reorientmesh()'. Nonetheless, it was the solution.

    From now, I will go to Febio's theory to mature in the models, since I have a fair solution for the pre-processing stage. My script uses an example extracted from Gibbon code to mount the XML tables required by Febio, but I need to go through it.

    I do believe I'll be around here for another question soon.

    Thank you for your amazing support!

  6. #26
    Join Date
    Aug 2015
    Location
    Brazil
    Posts
    13

    Default

    Hi Steve!

    Eureka! I could run my first simulation!!!

    I think I found a mistaken step... But questionable.

    While calling the method 'reorientmesh()' - this is from iso2mesh toolbox -, I was passing the wrong array entries which define the
    element's table. Then, I suppose that the mesh was going out from my script with no effect. But, even applying 'Invert' inside PreView,
    the Jacobian error remained. Of course, the bad use of the function belongs to iso2mesh's realm and to my skill over it. Fine...

    Well, I could run the simulation on Febio doing the following: I've applied the 'reorientmesh()' passing the arguments correctly and then applied 'Invert' in PreView.
    I'm not completely sure why I have to use 'Invert' even with 'reorientmesh()'. Nonetheless, it was the solution.

    From now, I will go to Febio's theory to mature in the models, since I have a fair solution for the pre-processing stage. My script uses an example extracted from Gibbon code to mount the XML tables required by Febio, but I need to go through it.

    I do believe I'll be around here for another question soon.

    Thank you for your amazing support!

  7. #27
    Join Date
    Apr 2016
    Posts
    14

    Default

    Hello steve,

    I am trying to run a simulation in Febio. After 2-5% of processing, Febio fails to converge and shows negative jacobian in some elements. I have around 3 million volume elements and zero surface elements in my mesh. I also use dynamic analysis for this simulation.
    <beta>1.0</beta>
    <gamma>2.0</gamma>
    <analysis type="dynamic"/>
    I do not know why it is not converging. Any help would be greatly appreciated.

    Thank you,

    Sanaz

  8. #28
    Join Date
    Apr 2016
    Posts
    14

    Default

    Quote Originally Posted by Sanaz View Post
    Hello steve,

    I am trying to run a simulation in Febio. After 2-5% of processing, Febio fails to converge and shows negative jacobian in some elements. I have around 3 million volume elements and zero surface elements in my mesh. I also use dynamic analysis for this simulation.
    <beta>1.0</beta>
    <gamma>2.0</gamma>
    <analysis type="dynamic"/>
    I do not know why it is not converging. Any help would be greatly appreciated.

    Thank you,

    Sanaz
    I reduced the bulk modulus and the simulation converged for 20% (It diverged because of negative jacobian). So I thought by more reduction, I might get better convergence. But it did not happen.
    Anyone has any suggestion for improving the convergence by eliminating the negative jacobian?


    Thank you
    Sanaz

  9. #29
    Join Date
    Nov 2007
    Location
    Salt Lake City, UTAH
    Posts
    1,664

    Default

    Hi Sanaz,

    There are many reasons for getting negative Jacobians. A good place to start for debugging your model is the Troubleshooting section of the FEBio User's manual, which you can find here (See Chapter 8 of the user manual). Please take a look at this and let us know if you need any further assistance.

    Cheers,

    Steve
    Department of Bioengineering, University of Utah
    Scientific Computing and Imaging institute, University of Utah

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •