Page 1 of 2 12 LastLast
Results 1 to 10 of 12

Thread: inverse fitting model

  1. #1
    Join Date
    Jan 2019
    Location
    Gold Coast, Australia
    Posts
    57

    Default inverse fitting model

    Hi,

    I have raw uniaxial tensile data (force vs displacement) from rectangular sample. I want to try fit raw data with Neo-Hookean material model (Young's modulus and Poisson's ratio). I might have a very naive question as I am total beginner in solid mechanics and FEA but would it be possible using FEBio to fit force vs displacement or engineering stress vs strain and true stress vs strain? What are examples of FEBio with inverse fitting models?

    I thought that if Neo-Hookean material model will not be able to fit the raw data I will go for non-linear material model. My second step would be using the calculated fitted material parameters and material model, reproduce uniaxial tensile test (raw data results which have yield point followed by sudden drop and plateau of plastic deformation followed by fluctuations at large strains).

    I would appreciate for any relevant information.

    Regards,
    Nataliya

  2. #2
    Join Date
    Nov 2007
    Location
    Salt Lake City, UTAH
    Posts
    2,030

    Default

    Hi Nataliya,

    There are some example optimization problems in the FEBio test suite, which should be part of your FEBio installation. They are op01, op02, and op03. The corresponding model files are oi01, oi2 (op03 also uses oi01). Also make sure to check out the documentation on optimization in the FEBio user's manual (Chapter 6). 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

  3. #3
    Join Date
    Jan 2019
    Location
    Gold Coast, Australia
    Posts
    57

    Default

    Hi Steve,

    I got these messages while running op files

    Reading file op01.feb ...FAILED!
    FATAL ERROR: febio_spec tag was not found. This is not a valid input file.

    Reading file op02.feb ...FAILED!
    FATAL ERROR: febio_spec tag was not found. This is not a valid input file.

    Reading file op03.feb ...FAILED!
    FATAL ERROR: febio_spec tag was not found. This is not a valid input file.

    What can help to fix them?

    Regards,
    Nataliya

  4. #4
    Join Date
    Nov 2007
    Location
    Salt Lake City, UTAH
    Posts
    2,030

    Default

    Hi Nataliya,

    How are you calling the optimization problems? The correct syntax is as follows:
    Code:
    febio2 -i oi01.feb -s op01.feb
    Let me know if that fixed it.

    Cheers,

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

  5. #5
    Join Date
    Jan 2019
    Location
    Gold Coast, Australia
    Posts
    57

    Default

    Hi Steve,

    Thank you, yes, it is working

    Optimal parameters:

    fem.material[0].c1 = 0.01
    fem.material[0].c2 = 9.00609429617942


    N O R M A L T E R M I N A T I O N
    Cheers,
    Nataliya

  6. #6
    Join Date
    Jan 2019
    Location
    Gold Coast, Australia
    Posts
    57

    Default

    Fig5.png.zip

    Hi Steve,

    I so much appreciate for FEBio support. Cannot imagine what would I do without this great help.

    I want to fit true stress-strain experimental data up to yield strength (elastic region). When I use number of time steps 100 with time step 3.6/number of time steps and displacement -0.33 mm/s along x direction, the model fails with message 'Max nr of reformations reached' at 1 second. I use Ogden material model. I use rectangular lattice structure geometry sample. There are no contacts. What can cause 'max nr of reformations reached'?

    Cheers,
    Nataliya
    Last edited by NataCalc; 09-28-2019 at 06:04 PM.

  7. #7
    Join Date
    Jan 2019
    Location
    Gold Coast, Australia
    Posts
    57

    Default

    I have tried following FEA control settings:
    numTimeSteps=40; %Number of time steps desired to reach yield strength
    max_refs=200; %Max reforms
    max_ups=10;
    opt_iter=10; %Optimum number of iterations
    max_retries=10; %Maximum number of retires
    dtmin=(1/numTimeSteps)/100; %Minimum time step size
    dtmax=1/numTimeSteps; %Maximum time step size
    tStep=3.6/numTimeSteps;%s
    min_residual=1e-15;
    symmetric_stiffness=0;
    lstol=1e-10;
    qnmethod=0;

    Again at 1.065 s I received a warning but this time:
    ************************************************** ***********************
    * WARNING *
    * *
    * No force acting on the system. *
    ************************************************** ***********************

  8. #8
    Join Date
    Nov 2007
    Location
    Salt Lake City, UTAH
    Posts
    2,030

    Default

    Hi Nataliya,

    Regarding your previous question: The max_refs control setting sets the maximum nr of reformations you are allowing the newton solver to take. If your model reaches this number, you might have to increase it or dig a little deeper to find out what could be causing the convergence problems.

    Regarding your last question: This warning is issued when the residual norm drops below the min_residual control option. This is usually an indication that there is no load applied in the current time step. If you believe this is incorrect, you can either lower the min_residual (or turn it off by setting it to zero), or take a closer look at your model to make sure you didn't miss a boundary condition or something.

    Cheers,

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

  9. #9
    Join Date
    Jan 2019
    Location
    Gold Coast, Australia
    Posts
    57

    Default

    Hi Steve,

    I did not miss the boundary conditions. Why there is no load applied at time step over 1s time? When I lower min residual , the warning of max nr of reformations shows up with 200 max reformation. Where should I have a closer look at my model : mesh/ control parameters?

    Cheers
    Nataliya

  10. #10
    Join Date
    Nov 2007
    Location
    Salt Lake City, UTAH
    Posts
    2,030

    Default

    Perhaps your load curve ends at 1 sec, but your simulation time runs longer? If the load no longer changes, then there is no change in the residual, and you end up either getting the warning that there is no load on the system, or the time step will no longer converge.

    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
  •