Author Topic: RVE material question  (Read 17513 times)

jezdagst

  • Jr. Member
  • **
  • Posts: 10
RVE material question
« on: March 21, 2019, 02:51:08 AM »
Dear Prof. Taylor,

I want to solve a problem in FE2, where the microstructure includes different materials at different inclusions then the averaged components per each material, as well, should be returned to the macrostructure at each Gauss point.
I'm not sure whether 'Hill' command should be used at all in my input file, and if not, how are the averages computed at the microstructure? Therefore, I'm adding here my input file for your check, please?

Best regards

Ghina
« Last Edit: March 21, 2019, 02:56:45 AM by jezdagst »

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2647
RVE material question
« Reply #1 on: March 21, 2019, 09:42:06 AM »
First, the hill, read command is for the serial version so will cause unknown results when used with FE2.

I am not clear on what you want to do.  The FE2 program will solve the same RVE you name at every Gauss point.  We do pass a parameter 'opar(3)' with the strains and it could be used to modify the constituents in some simple way, however, you would need to code what you want it to do.  In the past we have used it to orient a material for each RVE to account for layout in the macro-scale problem.

Currently, also the program only averages over the RVE as this is the data needed by the macro-scale problem. Can you explain in detail if you want something else too?
« Last Edit: March 21, 2019, 04:09:36 PM by FEAP_Admin »

FEAP_Admin

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 993
Re: RVE material question
« Reply #2 on: March 21, 2019, 04:12:21 PM »
Note it is possible to use multiple RVEs in a single computation.  To do so, define multiple materials in your macro problem, each with its own RVE Input file.

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2647
Re: RVE material question
« Reply #3 on: March 21, 2019, 06:06:44 PM »
Also be sure you use enough processors  np > no. different RVE's + 1 for the macro-scale problem

jezdagst

  • Jr. Member
  • **
  • Posts: 10
Re: RVE material question
« Reply #4 on: March 22, 2019, 12:17:08 AM »
Dears,

Many thanks for your replies, I have RVE with 3 different materials describing the microstructure and as long as averaging is needed for the materials and for the whole microstructure to return the values to the macrostructure I though Hill command is needed, but you made the idea clear that Hill doesn't fit here.
Then I don't have three different materials at the macrostructure but at each point of the macrostructure, I have a composite with three different materials at the microstructure. This is why I attach the revised input file and the IRVE file for your check, would the implementation run correctly this way or do I have errors, on the other hand, do the resulting macro stresses include material averaging (using the built-in function) or should I change anything to include it. Regarding the number of processors, I'm already using 'mpiexec -n 5'.
I already started testing the attached files and at the 17th time step the residual became suddenly too large and then the computations were interrupted, please advise?
I can't attach O file, it's too large, but here is the error:

 Energy convergence test
    Initial   =    2.215975269886001E-06 Current   =    3.525300453044647E-09
    Relative  =    1.590857308270414E-03 Tolerance =    1.000000000000000E-16
 *Command   8 * next                v:   2.00       7.00       2.00   
                                                           t=  4838.95     0.00
 *Command   7 * tang                v:   1.00       0.00       0.00   
                                                           t=  4838.95     0.00
>>>>> PARDISO for symmetric indefinite matrices activated.

          Compressed Storage =    65186                    t=  4838.95     0.00
     ERROR: RVE =  219 PROCESSOR =    2 POINT     874
            NUMBER =  1.0000E+00
     ERROR: RVE =  220 PROCESSOR =    2 POINT     878
            NUMBER =  1.0000E+00
     ERROR: RVE =  261 PROCESSOR =    3 POINT    1043
            NUMBER =  1.0000E+00
     ERROR: RVE =  262 PROCESSOR =    3 POINT    1047
            NUMBER =  1.0000E+00
     ERROR: RVE =  263 PROCESSOR =    3 POINT    1051
            NUMBER =  1.0000E+00
     ERROR: RVE =  264 PROCESSOR =    3 POINT    1055
            NUMBER =  1.0000E+00
     ERROR: RVE =  657 PROCESSOR =    4 POINT    2628
            NUMBER =  1.0000E+00
     ERROR: RVE =  658 PROCESSOR =    4 POINT    2632
            NUMBER =  1.0000E+00
     ERROR: RVE =  659 PROCESSOR =    3 POINT    2635
            NUMBER =  1.0000E+00
     ERROR: RVE =  659 PROCESSOR =    4 POINT    2636
            NUMBER =  1.0000E+00
     ERROR: RVE =  660 PROCESSOR =    3 POINT    2639
            NUMBER =  1.0000E+00
     ERROR: RVE =  660 PROCESSOR =    4 POINT    2640
            NUMBER =  1.0000E+00
   Residual norm =     1.5986429E+20    7.2675826E+21      t=  4951.71     0.00
   End USOLVE Solution Step                                t=  4951.72     0.00
   Energy convergence test
    Initial   =    2.215975269886001E-06 Current   =    3.091847750087867E+39
    Relative  =    1.395253725122539E+45 Tolerance =    1.000000000000000E-16
 *Command   8 * next                v:   3.00       7.00       3.00   
                                                           t=  4951.72     0.00
 *Command   7 * tang                v:   1.00       0.00       0.00   
                                                           t=  4951.72     0.00
>>>>> PARDISO for symmetric indefinite matrices activated.

          Compressed Storage =    65186                    t=  4951.72     0.00
     ERROR: RVE =    1 PROCESSOR =    1 POINT       1
            NUMBER =  1.0000E+00
     ERROR: RVE =    1 PROCESSOR =    2 POINT       2
            NUMBER =  1.0000E+00
     ERROR: RVE =    1 PROCESSOR =    3 POINT       3
            NUMBER =  1.0000E+00
     ERROR: RVE =    1 PROCESSOR =    4 POINT       4
            NUMBER =  1.0000E+00
     ERROR: RVE =    2 PROCESSOR =    1 POINT       5
            NUMBER =  1.0000E+00
     ERROR: RVE =    2 PROCESSOR =    2 POINT       6
            NUMBER =  1.0000E+00
     ERROR: RVE =    2 PROCESSOR =    3 POINT       7
            NUMBER =  1.0000E+00
     ERROR: RVE =    2 PROCESSOR =    4 POINT       8
            NUMBER =  1.0000E+00
     ERROR: RVE =    3 PROCESSOR =    1 POINT       9
            NUMBER =  1.0000E+00
     ERROR: RVE =    3 PROCESSOR =    2 POINT      10
            NUMBER =  1.0000E+00
     ERROR: RVE =    3 PROCESSOR =    3 POINT      11
            NUMBER =  1.0000E+00
     ERROR: RVE =    3 PROCESSOR =    4 POINT      12
            NUMBER =  1.0000E+00
     ERROR: RVE =    4 PROCESSOR =    1 POINT      13
            NUMBER =  1.0000E+00
     ERROR: RVE =    4 PROCESSOR =    2 POINT      14
            NUMBER =  1.0000E+00
     ERROR: RVE =    4 PROCESSOR =    3 POINT      15
            NUMBER =  1.0000E+00
     ERROR: RVE =    4 PROCESSOR =    4 POINT      16
            NUMBER =  1.0000E+00
     ERROR: RVE =    5 PROCESSOR =    1 POINT      17
            NUMBER =  1.0000E+00
     ERROR: RVE =    5 PROCESSOR =    2 POINT      18
            NUMBER =  1.0000E+00
     ERROR: RVE =    5 PROCESSOR =    3 POINT      19
            NUMBER =  1.0000E+00
     ERROR: RVE =    5 PROCESSOR =    4 POINT      20
            NUMBER =  1.0000E+00
     ERROR: RVE =    6 PROCESSOR =    1 POINT      21
            NUMBER =  1.0000E+00
     ERROR: RVE =    6 PROCESSOR =    2 POINT      22
            NUMBER =  1.0000E+00
     ERROR: RVE =    6 PROCESSOR =    3 POINT      23
            NUMBER =  1.0000E+00
     ERROR: RVE =    6 PROCESSOR =    4 POINT      24
            NUMBER =  1.0000E+00
     ERROR: RVE =    7 PROCESSOR =    1 POINT      25
            NUMBER =  1.0000E+00
     ERROR: RVE =    7 PROCESSOR =    2 POINT      26
            NUMBER =  1.0000E+00
     ERROR: RVE =    7 PROCESSOR =    3 POINT      27
            NUMBER =  1.0000E+00
     ERROR: RVE =    7 PROCESSOR =    4 POINT      28
            NUMBER =  1.0000E+00
     ERROR: RVE =    8 PROCESSOR =    1 POINT      29
            NUMBER =  1.0000E+00
     ERROR: RVE =    8 PROCESSOR =    2 POINT      30
            NUMBER =  1.0000E+00
     ERROR: RVE =    8 PROCESSOR =    3 POINT      31
            NUMBER =  1.0000E+00
     ERROR: RVE =    8 PROCESSOR =    4 POINT      32
            NUMBER =  1.0000E+00
     ERROR: RVE =    9 PROCESSOR =    1 POINT      33
            NUMBER =  1.0000E+00
     ERROR: RVE =    9 PROCESSOR =    2 POINT      34
            NUMBER =  1.0000E+00
     ERROR: RVE =    9 PROCESSOR =    3 POINT      35
            NUMBER =  1.0000E+00
     ERROR: RVE =    9 PROCESSOR =    4 POINT      36
            NUMBER =  1.0000E+00
     ERROR: RVE =   10 PROCESSOR =    1 POINT      37
            NUMBER =  1.0000E+00
     ERROR: RVE =   10 PROCESSOR =    2 POINT      38
            NUMBER =  1.0000E+00
     ERROR: RVE =   10 PROCESSOR =    3 POINT      39
            NUMBER =  1.0000E+00
     ERROR: RVE =   10 PROCESSOR =    4 POINT      40
            NUMBER =  1.0000E+00
     ERROR: RVE =   11 PROCESSOR =    1 POINT      41
            NUMBER =  1.0000E+00
     ERROR: RVE =   11 PROCESSOR =    2 POINT      42
            NUMBER =  1.0000E+00
     ERROR: RVE =   11 PROCESSOR =    3 POINT      43
            NUMBER =  1.0000E+00
     ERROR: RVE =   11 PROCESSOR =    4 POINT      44
            NUMBER =  1.0000E+00
     ERROR: RVE =   12 PROCESSOR =    1 POINT      45
            NUMBER =  1.0000E+00
     ERROR: RVE =   12 PROCESSOR =    2 POINT      46
            NUMBER =  1.0000E+00
     ERROR: RVE =   12 PROCESSOR =    3 POINT      47
            NUMBER =  1.0000E+00
     ERROR: RVE =   12 PROCESSOR =    4 POINT      48
            NUMBER =  1.0000E+00
     ERROR: RVE =   13 PROCESSOR =    1 POINT      49
            NUMBER =  1.0000E+00
     ERROR: RVE =   13 PROCESSOR =    2 POINT      50
            NUMBER =  1.0000E+00
     ERROR: RVE =   13 PROCESSOR =    3 POINT      51
            NUMBER =  1.0000E+00
     ERROR: RVE =   13 PROCESSOR =    4 POINT      52
            NUMBER =  1.0000E+00
     ERROR: RVE =   14 PROCESSOR =    1 POINT      53
            NUMBER =  1.0000E+00
     ERROR: RVE =   14 PROCESSOR =    2 POINT      54
            NUMBER =  1.0000E+00
     ERROR: RVE =   14 PROCESSOR =    3 POINT      55
            NUMBER =  1.0000E+00
     ERROR: RVE =   14 PROCESSOR =    4 POINT      56
            NUMBER =  1.0000E+00
     ERROR: RVE =   15 PROCESSOR =    1 POINT      57
            NUMBER =  1.0000E+00
     ERROR: RVE =   15 PROCESSOR =    2 POINT      58
            NUMBER =  1.0000E+00
     ERROR: RVE =   15 PROCESSOR =    3 POINT      59
            NUMBER =  1.0000E+00
     ERROR: RVE =   15 PROCESSOR =    4 POINT      60
            NUMBER =  1.0000E+00
     ERROR: RVE =   16 PROCESSOR =    1 POINT      61
            NUMBER =  1.0000E+00
     ERROR: RVE =   16 PROCESSOR =    2 POINT      62
            NUMBER =  1.0000E+00
     ERROR: RVE =   16 PROCESSOR =    3 POINT      63
            NUMBER =  1.0000E+00
     ERROR: RVE =   16 PROCESSOR =    4 POINT      64
            NUMBER =  1.0000E+00
     ERROR: RVE =   17 PROCESSOR =    1 POINT      65
            NUMBER =  1.0000E+00
     ERROR: RVE =   17 PROCESSOR =    2 POINT      66
            NUMBER =  1.0000E+00
     ERROR: RVE =   17 PROCESSOR =    3 POINT      67
            NUMBER =  1.0000E+00
     ERROR: RVE =   17 PROCESSOR =    4 POINT      68
            NUMBER =  1.0000E+00
     ERROR: RVE =   18 PROCESSOR =    1 POINT      69
            NUMBER =  1.0000E+00
     ERROR: RVE =   18 PROCESSOR =    2 POINT      70
            NUMBER =  1.0000E+00
     ERROR: RVE =   18 PROCESSOR =    3 POINT      71
            NUMBER =  1.0000E+00
     ERROR: RVE =   18 PROCESSOR =    4 POINT      72
            NUMBER =  1.0000E+00
     ERROR: RVE =   19 PROCESSOR =    1 POINT      73
            NUMBER =  1.0000E+00
     ERROR: RVE =   19 PROCESSOR =    2 POINT      74
            NUMBER =  1.0000E+00
     ERROR: RVE =   19 PROCESSOR =    3 POINT      75
            NUMBER =  1.0000E+00
     ERROR: RVE =   19 PROCESSOR =    4 POINT      76
            NUMBER =  1.0000E+00
     ERROR: RVE =   20 PROCESSOR =    1 POINT      77
            NUMBER =  1.0000E+00
     ERROR: RVE =   20 PROCESSOR =    2 POINT      78
            NUMBER =  1.0000E+00
     ERROR: RVE =   20 PROCESSOR =    3 POINT      79
            NUMBER =  1.0000E+00
     ERROR: RVE =   20 PROCESSOR =    4 POINT      80
            NUMBER =  1.0000E+00
     ERROR: RVE =   21 PROCESSOR =    1 POINT      81
            NUMBER =  1.0000E+00
     ERROR: RVE =   21 PROCESSOR =    2 POINT      82
            NUMBER =  1.0000E+00
     ERROR: RVE =   21 PROCESSOR =    3 POINT      83
            NUMBER =  1.0000E+00
     ERROR: RVE =   21 PROCESSOR =    4 POINT      84
            NUMBER =  1.0000E+00
     ERROR: RVE =   22 PROCESSOR =    1 POINT      85
            NUMBER =  1.0000E+00
     ERROR: RVE =   22 PROCESSOR =    2 POINT      86
            NUMBER =  1.0000E+00
     ERROR: RVE =   22 PROCESSOR =    3 POINT      87
            NUMBER =  1.0000E+00
     ERROR: RVE =   22 PROCESSOR =    4 POINT      88
            NUMBER =  1.0000E+00
     ERROR: RVE =   23 PROCESSOR =    1 POINT      89
            NUMBER =  1.0000E+00
« Last Edit: March 22, 2019, 06:14:17 AM by jezdagst »

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2647
Re: RVE material question
« Reply #5 on: March 22, 2019, 09:47:13 AM »
It appears that you have set up the problem correctly, however, the error message is telling you that the RVE solution is not converged.  Since you have plasticity with no hardening it is probable that the limit load has been reached.  I would suggest adding some hardening to see if the problem behaves better.   

The only error in the original input file was the "hill read"  -- also increasing the solution tolerance could cause the program to fail by not achieving such a low tolerance.

 

jezdagst

  • Jr. Member
  • **
  • Posts: 10
Re: RVE material question
« Reply #6 on: March 22, 2019, 10:22:45 AM »
Many thanks for your check Prof. Taylor,

I also tried to test the problem using the same inputs used previously at macro and micro structures but with only one single material, which is the first material, and everything went fine without interruption. And if we consider that this material has the least yield limit so it will be the first one to yield in the case of the composite, but still for single material didn't cause any error. Do you still thing that adding hardening would solve the problem, or even reducing the load.

Regards
Ghina

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2647
Re: RVE material question
« Reply #7 on: March 23, 2019, 08:06:19 AM »
Yes, because the stress will be higher for same strains

jezdagst

  • Jr. Member
  • **
  • Posts: 10
Re: RVE material question
« Reply #8 on: March 25, 2019, 12:02:12 AM »
Many thanks Prof. Taylor,
I'll test it.

Regards

jezdagst

  • Jr. Member
  • **
  • Posts: 10
Re: RVE material question
« Reply #9 on: April 03, 2019, 03:49:14 AM »
Dear prof. Taylor,

Now the model is working adequately after I added hardening according to your suggestion, but the question now, I'm trying to write the plastic strains for specific elements using 'tplot' command, as shown in the input file attached. According to the manual for a general case, number 4 refers to the first component of the plastic strains, isn't it? I'm not sure whether I'm writing this correctly, I doubt it! As in the history data attached, the values of the plastic strains started to appear from the first time step and are not equal to zero although the first couple of steps are elastic ones, additionally, I'm giving two element numbers which are 551 & 110, where I want to check the values of the plastic strain, and they turned out to be the same, I don't think this is correct. The computations are still running, this is why the history file is not completed.

Best Regards

Ghina
« Last Edit: April 03, 2019, 04:21:39 AM by jezdagst »

Prof. R.L. Taylor

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 2647
Re: RVE material question
« Reply #10 on: April 05, 2019, 09:27:59 AM »
When you use an RVE for the constitution all you get back is the stress and the tangent moduii -- there are no internal variable (e.g., plastic strain) history variables associated to the RVE.  In an RVE simulation we store the stresses as "history" type variables, thus if you ask for one all you really get is one of the stress components.

jezdagst

  • Jr. Member
  • **
  • Posts: 10
Re: RVE material question
« Reply #11 on: April 07, 2019, 11:25:32 PM »
Many thanks. It's good to know.