inverse fitting model

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • NataCalc
    Member
    • Jan 2019
    • 87

    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
  • maas
    Lead Code Developer
    • Nov 2007
    • 3400

    #2
    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

    Comment

    • NataCalc
      Member
      • Jan 2019
      • 87

      #3
      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

      Comment

      • maas
        Lead Code Developer
        • Nov 2007
        • 3400

        #4
        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

        Comment

        • NataCalc
          Member
          • Jan 2019
          • 87

          #5
          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

          Comment

          • NataCalc
            Member
            • Jan 2019
            • 87

            #6
            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, 06:04 PM.

            Comment

            • NataCalc
              Member
              • Jan 2019
              • 87

              #7
              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. *
              ************************************************** ***********************

              Comment

              • maas
                Lead Code Developer
                • Nov 2007
                • 3400

                #8
                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

                Comment

                • NataCalc
                  Member
                  • Jan 2019
                  • 87

                  #9
                  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

                  Comment

                  • maas
                    Lead Code Developer
                    • Nov 2007
                    • 3400

                    #10
                    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

                    Comment

                    • NataCalc
                      Member
                      • Jan 2019
                      • 87

                      #11
                      Hi Steve,

                      I have not prescribed properly the load curve indeed. Do you suggest to prescribe the displacement in the load curve [0 0; time_step displacement] where time=time_step * number of time steps? Or I can simply use [0 0;time displacement]?

                      Cheers,
                      Nataliya

                      Comment

                      • maas
                        Lead Code Developer
                        • Nov 2007
                        • 3400

                        #12
                        Hi Nataliya,

                        The loadcurve defines a function of time, it doesn't know anything about the time step size. So, you should use [0 0; time displacement]. Let me know if that worked.

                        Cheers,

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

                        Comment

                        • NataCalc
                          Member
                          • Jan 2019
                          • 87

                          #13
                          Hi Steve,

                          I determined the load curve [0 0; time and displacement] and its working. However, I still do have the question, the experimental displacement is -0.33 mm/s and time 3.6 s. With these settings the simulated stress vs strain curve goes only up to 1/3 of experimental curve stress vs strain. When I increase the displacement up to -0.59 mm/s, the simulated stress vs strain covers all domain of experimental curve. In inverse fitting how crucial is to use exact experimental settings?

                          Cheers,
                          Nataliya

                          Comment

                          • maas
                            Lead Code Developer
                            • Nov 2007
                            • 3400

                            #14
                            Hi Nataliya,

                            If your model does not match up to your experimental data, then the most likely culprit is the wrong material parameters. But if that is what you optimized for, I'm not sure why you would get such a large mismatch. This would suggest to me that the optimization has failed.

                            Perhaps you can send me this particular model, so I can take a closer look and maybe offer some suggestions.

                            Best,

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

                            Comment

                            • NataCalc
                              Member
                              • Jan 2019
                              • 87

                              #15
                              Hi Steve,

                              Thank you , I have sent feb file to you.

                              Cheers,
                              Nataliya
                              Last edited by NataCalc; 10-28-2019, 06:47 PM.

                              Comment

                              Working...
                              X
                              😀
                              😂
                              🥰
                              😘
                              🤢
                              😎
                              😞
                              😡
                              👍
                              👎