TarletonGroup / CrystalPlasticity

CP UMAT and CZM UEL for Abaqus
138 stars 64 forks source link

NEPER2Abaqus-C3D4 element- SEGMENTATION FAULT #20

Closed a3490489 closed 1 year ago

a3490489 commented 1 year ago

Dear Eralp

Thank you very much for sharing the CrystalPlasticity codes; it is beneficial. When I followed your Video Tutorials, everything went well except the C3D4 model. It went well when I simulated the C3D8 models from DREAM3D and NEPER. When running the C3D4 model, I did change the element number and element type in the userinputs.f file. The msg file shows the following error. Would you happen to know where the problem should be? All the comments and suggestions are a tremendous help to me.

Sincerely, Ta-Te

   Abaqus 2022                                  Date 10-8-2023   Time 10:31:09
   For use by TOKAI under license from Dassault Systemes or its subsidiary.

 STEP    1     INCREMENT     1     STEP TIME    0.00    

                        S T E P       1     S T A T I C   A N A L Y S I S

     AUTOMATIC TIME CONTROL WITH -
          A SUGGESTED INITIAL TIME INCREMENT OF                1.000E-02
          AND A TOTAL TIME PERIOD OF                            100.    
          THE MINIMUM TIME INCREMENT ALLOWED IS                1.000E-05
          THE MAXIMUM TIME INCREMENT ALLOWED IS                 1.00    

     LINEAR EQUATION SOLVER TYPE         DIRECT SPARSE

 CONVERGENCE TOLERANCE PARAMETERS FOR FORCE    
     CRITERION FOR RESIDUAL FORCE     FOR A NONLINEAR PROBLEM          5.000E-03
     CRITERION FOR DISP.    CORRECTION IN A NONLINEAR PROBLEM          1.000E-02
     INITIAL VALUE OF TIME AVERAGE FORCE                               1.000E-02
     AVERAGE FORCE     IS TIME AVERAGE FORCE    
     ALTERNATE CRIT. FOR RESIDUAL FORCE     FOR A NONLINEAR PROBLEM    2.000E-02
     CRITERION FOR ZERO FORCE     RELATIVE TO TIME AVRG. FORCE         1.000E-05
     CRITERION FOR RESIDUAL FORCE     WHEN THERE IS ZERO FLUX          1.000E-05
     CRITERION FOR DISP.    CORRECTION WHEN THERE IS ZERO FLUX         1.000E-03
     CRITERION FOR RESIDUAL FORCE     FOR A LINEAR INCREMENT           1.000E-08
     FIELD CONVERSION RATIO                                             1.00    
     CRITERION FOR ZERO FORCE     REL. TO TIME AVRG. MAX. FORCE        1.000E-05
     CRITERION FOR ZERO DISP.    RELATIVE TO CHARACTERISTIC LENGTH     1.000E-08

     VOLUMETRIC STRAIN COMPATIBILITY TOLERANCE FOR HYBRID SOLIDS       1.000E-05
     AXIAL STRAIN COMPATIBILITY TOLERANCE FOR HYBRID BEAMS             1.000E-05
     TRANS. SHEAR STRAIN COMPATIBILITY TOLERANCE FOR HYBRID BEAMS      1.000E-05
     SOFT CONTACT CONSTRAINT COMPATIBILITY TOLERANCE FOR P>P0          5.000E-03
     SOFT CONTACT CONSTRAINT COMPATIBILITY TOLERANCE FOR P=0.0         0.100    
     CONTACT FORCE ERROR TOLERANCE FOR CONVERT SDI=YES                 1.00    
     DISPLACEMENT COMPATIBILITY TOLERANCE FOR DCOUP ELEMENTS           1.000E-05
     ROTATION COMPATIBILITY TOLERANCE FOR DCOUP ELEMENTS               1.000E-05

 EQUILIBRIUM WILL BE CHECKED FOR SEVERE DISCONTINUITY ITERATIONS

 TIME INCREMENTATION CONTROL PARAMETERS:
     FIRST EQUILIBRIUM ITERATION FOR CONSECUTIVE DIVERGENCE CHECK              4
     EQUILIBRIUM ITERATION AT WHICH LOG. CONVERGENCE RATE CHECK BEGINS         8
     EQUILIBRIUM ITERATION AFTER WHICH ALTERNATE RESIDUAL IS USED              9
     MAXIMUM EQUILIBRIUM ITERATIONS ALLOWED                                   16
     EQUILIBRIUM ITERATION COUNT FOR CUT-BACK IN NEXT INCREMENT               10
     MAXIMUM EQUILIB. ITERS IN TWO INCREMENTS FOR TIME INCREMENT INCREASE      4
     MAXIMUM ITERATIONS FOR SEVERE DISCONTINUITIES                            50
     MAXIMUM ATTEMPTS ALLOWED IN AN INCREMENT                                  5
     MAXIMUM DISCON. ITERS IN TWO INCREMENTS FOR TIME INCREMENT INCREASE      50
     MAXIMUM CONTACT AUGMENTATIONS FOR *SURFACE BEHAVIOR,AUGMENTED LAGRANGE   50
     CUT-BACK FACTOR AFTER DIVERGENCE                                 0.2500    
     CUT-BACK FACTOR FOR TOO SLOW CONVERGENCE                         0.5000    
     CUT-BACK FACTOR AFTER TOO MANY EQUILIBRIUM ITERATIONS            0.7500    
     CUT-BACK FACTOR AFTER TOO MANY SEVERE DISCONTINUITY ITERATIONS   0.2500    
     CUT-BACK FACTOR AFTER PROBLEMS IN ELEMENT ASSEMBLY               0.2500    
     INCREASE FACTOR AFTER TWO INCREMENTS THAT CONVERGE QUICKLY        1.500    
     MAX. TIME INCREMENT INCREASE FACTOR ALLOWED                       1.500    
     MAX. TIME INCREMENT INCREASE FACTOR ALLOWED (DYNAMICS)            1.250    
     MAX. TIME INCREMENT INCREASE FACTOR ALLOWED (DIFFUSION)           2.000    
     MINIMUM TIME INCREMENT RATIO FOR EXTRAPOLATION TO OCCUR          0.1000    
     MAX. RATIO OF TIME INCREMENT TO STABILITY LIMIT                   1.000    
     FRACTION OF STABILITY LIMIT FOR NEW TIME INCREMENT               0.9500    
     TIME INCREMENT INCREASE FACTOR BEFORE A TIME POINT                1.000    
     GLOBAL STABILIZATION CONTROL IS NOT USED

          PRINT OF INCREMENT NUMBER, TIME, ETC., EVERY    1  INCREMENTS

     THE MAXIMUM NUMBER OF INCREMENTS IN THIS STEP IS                   10000

          LARGE DISPLACEMENT THEORY WILL BE USED

     LINEAR EXTRAPOLATION WILL BE USED

     CHARACTERISTIC ELEMENT LENGTH     0.189    

     DETAILS REGARDING ACTUAL SOLUTION WAVEFRONT REQUESTED

     DETAILED OUTPUT OF DIAGNOSTICS TO DATABASE REQUESTED

     PRINT OF INCREMENT NUMBER, TIME, ETC., TO THE MESSAGE FILE EVERY     1  INCREMENTS

     COLLECTING MODEL CONSTRAINT INFORMATION FOR OVERCONSTRAINT CHECKS

     COLLECTING STEP CONSTRAINT INFORMATION FOR OVERCONSTRAINT CHECKS

  INCREMENT     1 STARTS. ATTEMPT NUMBER  1, TIME INCREMENT  1.000E-02

    SYMMETRIC DIRECT SPARSE SOLVER RUNNING ON
    1 HOST:        1 MPI RANK  x 1 THREAD
    NUMBER OF EQUATIONS:     2649
    NUMBER OF RHS:           1
    NUMBER OF FLOPS:         7.698e+07

     CHECK POINT   START OF SOLVER    

     CHECK POINT  END OF SOLVER       

       ELAPSED USER TIME (SEC)      =   0.0000    
       ELAPSED SYSTEM TIME (SEC)    =  0.10000    
       ELAPSED TOTAL CPU TIME (SEC) =  0.10000    
       ELAPSED WALLCLOCK TIME (SEC) =          0

               CONVERGENCE CHECKS FOR EQUILIBRIUM ITERATION     1

 AVERAGE FORCE                      7.999E-05   TIME AVG. FORCE       7.999E-05
 LARGEST RESIDUAL FORCE             6.741E-09   AT NODE        344   DOF  3
   INSTANCE: NEPER-1                                                                         
 LARGEST INCREMENT OF DISP.         1.000E-06   AT NODE         38   DOF  1
   INSTANCE: NEPER-1                                                                         
 LARGEST CORRECTION TO DISP.        1.000E-06   AT NODE         38   DOF  1
   INSTANCE: NEPER-1                                                                         
          DISP.    CORRECTION TOO LARGE COMPARED TO DISP.    INCREMENT

    SYMMETRIC DIRECT SPARSE SOLVER RUNNING ON
    1 HOST:        1 MPI RANK  x 1 THREAD
    NUMBER OF EQUATIONS:     2649
    NUMBER OF RHS:           1
    NUMBER OF FLOPS:         7.698e+07

     CHECK POINT   START OF SOLVER    

     CHECK POINT  END OF SOLVER       

       ELAPSED USER TIME (SEC)      =   0.0000    
       ELAPSED SYSTEM TIME (SEC)    =   0.0000    
       ELAPSED TOTAL CPU TIME (SEC) =   0.0000    
       ELAPSED WALLCLOCK TIME (SEC) =          0

               CONVERGENCE CHECKS FOR EQUILIBRIUM ITERATION     2

 AVERAGE FORCE                      7.999E-05   TIME AVG. FORCE       7.999E-05
 LARGEST RESIDUAL FORCE             8.755E-13   AT NODE        857   DOF  1
   INSTANCE: NEPER-1                                                                         
 LARGEST INCREMENT OF DISP.         1.000E-06   AT NODE         38   DOF  1
   INSTANCE: NEPER-1                                                                         
 LARGEST CORRECTION TO DISP.        8.147E-13   AT NODE          1   DOF  2
   INSTANCE: NEPER-1                                                                         
          THE FORCE     EQUILIBRIUM EQUATIONS HAVE CONVERGED

---------- RUNTIME EXCEPTION HAS OCCURRED ----------
*** ERROR: ABAQUS/standard rank 0 encountered a SEGMENTATION FAULT
vikramroybarc commented 1 year ago

Hi, The error is related to incorrect assignment of any of these variables (in file userinputs.f) related to array size assignment - maxnloop, maxnslip, maxnmaterial check your user inputs

EralpDemir commented 1 year ago

Another possible issue could be that, these elements behave stiffer than the others which might lead to high stresses. You may try using smaller time steps initially and a conservative time step increase ("paste_front=1.1" in userinputs.f)

Make sure to not to use the GND models.

I will double check this issue and let you know once I'm back in the office.

a3490489 commented 1 year ago

Dear Vikramroybarc and Eralp,

Thank you very much for the kind reply. I tried to check the userinputs.f and used a smaller initial time steps (0.0001s) with "paste_front"=1.25, 1.1, and 0. But it still shows a similar error. I checked the GND model is not activated, and the material property of ID 2 (Copper?) in the user materials.f was used. The default values of maxnloop(3), maxnslip(12), maxnmaterial(10) in userinput.f were used. The C3D8 model with all the same settings works well, although C3D4 are not. I still don't know where the problem is. Please tell me if there is any possible reason; thanks a lot.

Sincerely, Ta-Te

EralpDemir commented 1 year ago

Hi, They all seem correct. In the "usernputs.f" the element type and total number of elements in the mesh need to be defined. have you checked that?

Thanks, Eralp

a3490489 commented 1 year ago

Dear Eralp,

Thank you for your reply. Yes, I changed the element number(3862) and element type(C3D4) following the youtube videos. By the way, I also tried to set the element type as C3D8, although the element in the model is actually C3D4, and it works. I am not sure why.

Sincerely, Ta-Te

EralpDemir commented 1 year ago

Ok, thanks.

Could you convert the element type to C3D10 (quadratic tets) in userinputs.f and use that as the element type. Make sure to check you real element type, they might be set to quadratic during Neper generator.

C3D4 is available within the mesh library. C3D8 has 8 integration points so it can still work since the other 7 is not accessed unless GNDs are turned on.

Let me know if this helps, Eralp

a3490489 commented 1 year ago

Dear Eralp,

Thank you for your reply. I tried to change the element type to C3D10 in userinputs.f, and the element type in the Abaqus model remains C3D4. It works, and the stress distribution is the same when the element type is set as C3D8 in userinputs.f. I also tried to change the real element type to C3D10 in Abaqus, but the stress distribution became weird. I don't know if it is correct. Please see the attached figs.

Sincerely, Ta-Te

C3D4-S C3D10-S

EralpDemir commented 1 year ago

Thanks for your feedback. I will check C3D4 element in more convenient time. Apparently, having one integration point causing an allocatable array issue.

For C3D10, make sure your BCs are defined for the mid nodes on the surfaces as well.

a3490489 commented 1 year ago

Dear Eralp,

Thank you very much for the kind help. For C3D10, yes, it is the BCs problem.

Sincerely, Ta-Te