## You are here

# Notes on Implicit Update for Bergstrom-Boyce Network B

This post is in response to the imechanica request

node/5034

(a separate post, as I have to attach notes - it would be really nice to be able to attach documents to imechanica comments)

Attached are hand-written notes I have used to implement the Network B for the Bergstrom-Boyce model. They were written for my use only, so if it seems stream-of-consciousness at times, don't blame me. The details should all be there, though.

It is a formulation in principal stretches and takes care of the Jacobian in situations with eigenvalue coalescence (double coalescence in part III, triple coalescence in pdf of ppt).

Most of the notes are applicable to implementing a general nonlinear viscoelastoplastic material model where the plastic flow is coaxial with the elastic stretch tensor. Of course, for the implicit numerical implementation there is not much difference between the update for the rate-independent and rate-dependent material.

As for Bergstrom Boyce, you will still have to be careful in implementing the Newton loop for the stress update because the exact update formula for the material model has singularities (from what I recall; I did this ten years ago).

Hope this helps.

Attachment | Size |
---|---|

viscoplasticity.pdf | 177.73 KB |

BB_network_B_I.pdf | 631.77 KB |

BB_network_B_II.pdf | 415.93 KB |

BB_network_B_III.PDF | 1.1 MB |

- Amit Acharya's blog
- Log in or register to post comments
- 6438 reads

## Comments

## Dear Amit,I have a few

blank_page

Dear Amit,

I have a few question regarding your notes. If you could give me some

clarification that would be highly appreciated.

On page one of the section where you derive the formulation for Network B

(BB_network_B_I.pdf):

-----------------------------------------------------------------------------------------------------------------------------

you state the equation for the effective strain rate you have the term sigma'

(Frobenious norm) to the power of m. In the Bergstroem Boyce papers(the one you

probably used from 1998 and the newer one from 2001) there is also a material

constant sigma_base (tau_base) used:

gamma_dot=.......*(sigma'/sigma_base)^m

Are you using a different formulation or did you forget about sigma_base?

On the same page you define the well known flow rule as:

Fe*Fp_dot*Fp_inv*Fe_inv=(gamma_dot/sqrt(2)sigma')*Sum(sigma_A-(I1/3))*(ne^A

tensprod ne^A)

Then you define Fe*Ne^A=lambdae^A*ne^A

I do not understand this part and I could not find anything regarding this

equation in literature. What is the difference between the two eigenvectors ne

and Ne?

Using this you define:

Fp_dot*Fp_inv=(gamma_dot/sqrt(2)sigma')*Sum(sigma_A-(I1/3))*(1/(lambdae^A)^2)*(Ne^A

tensprod Ne^A)*Ce

where does Ce come from: is this the elastic part of the right Cauchy Green

tensor? However, C=F_tranp*F....so it can't be that. I am assuming it comes from

Fe*Ne^A=lambdae^A*ne^A and Fe*Fp_dot*Fp_inv*Fe_inv.

In the next step you state the equation for the time-derivative of Fp:

Fp_dot=[(gamma_dot/sqrt(2)sigma')*Sum(sigma_A-(I1/3))*(Ne^A tensprod

Ne^A)]*Fp

which makes sense, except for the fact that Ce and 1/(lambdae^A)^2 is

missing?!

On three of the section where you derive the formulation for Network B (BB_network_B_I.pdf):

-----------------------------------------------------------------------------------------------------------------------------

you introduce U*=sum(lambda*_A N*_A tensprod N*_A)

and subsequently

lambda*_A=lambdae_A*exp[(deltagamma/sqrt(2)sigma')*(sigma_A-(I1/3))]

where does this come from?

On page three you're mentioning 4 equations to be solved for:

lambdae={lambdae_1,lambdae_2,lambdae_2} and deltagamma.

I do not quite understand which four equations you mean. Isn't the goal to

calculate Fp_(n+1) using deltagamma and Fp_n? Also I am thoroughly confused with

the use of the eigenvectors. In the case of Fp_(n+1) on page 3, which ones do I

have to use. I guess the concept of writing tensors using eigenvectors (or base

vectors?) confuses me... I try to avoid it.

I hope my questions and concerns make somewhat sense. I hope you could shed

some light on my problems at hand :)

Thank you very much!

Andreas

## help on BB update

Andreas,

You will need to be familiar with working with the spectral decomposition.

Quick answers to your questions:

1. Are you using a different formulation or did you forget about sigma_base?

- Think of it as absorbed in the constant hat(C_1).

2. Then you define Fe*Ne^A=lambdae^A*ne^A

- If it helps, think of this as a definition of the ne^A

2a. I do not understand this part and I could not find anything regarding this

equation in literature. What is the difference between the two eigenvectors ne

and Ne?

This is basic continuum mechanics and you will find this in any decent book or course notes.

In this context, Ne^a is an eigenvector of the elastic Right Cauchy Green (Ce := Fe^tFe); ne^a is an eigenvector of elastic Left Cauchy Green tensor (Be := FeFe^t).

3. Fp_dot*Fp_inv=(gamma_dot/sqrt(2)sigma')*Sum(sigma_A-(I1/3))*(1/(lambdae^A)^2)*(Ne^A

tensprod Ne^A)*Ce

where does Ce come from: is this the elastic part of the right Cauchy Green

tensor? However, C=F_tranp*F....so it can't be that.

This is a direct manipulation of the flow rule and Ce is Fe^tFe.

4. In the next step you state the equation for the time-derivative of Fp:

Fp_dot=[(gamma_dot/sqrt(2)sigma')*Sum(sigma_A-(I1/3))*(Ne^A tensprod

Ne^A)]*Fp

which makes sense, except for the fact that Ce and 1/(lambdae^A)^2 is

missing?!

- this is not a surprise - write out Ce in spectral form, do the products and you will see.....

5. you introduce U*=sum(lambda*_A N*_A tensprod N*_A)

and subsequently

lambda*_A=lambdae_A*exp[(deltagamma/sqrt(2)sigma')*(sigma_A-(I1/3))]

where does this come from?

- substitute this def. of U* into the first eqn. on that page, note that the eigenvectors of Ue are Ne_A. Then use what I have written there - if two symmetric tensors A, B are equal, then their eigenvalues are also identical.

6. On page three you're mentioning 4 equations to be solved for:

lambdae={lambdae_1,lambdae_2,lambdae_2} and deltagamma.

I do not quite understand which four equations you mean.

- The 3 eqns. for lambda*A and the equation for delta gamma . Go ot the page marked 4, to see further use of this.

Isn't the goal to

calculate Fp_(n+1) using deltagamma and Fp_n?

- yes indeed, and the neat fact about the work of Weber and Anand and Simo is that this update, seemingly in 10 variables, has been reduced to an update in 4 variables - this is because the theory of the update shows that the principal directions of the elastic right CG tensor are the same as those of the elastic predictor which are known quantities for the material update.

7. Also I am thoroughly confused with

the use of the eigenvectors.

- on this I cannot help!

8. In the case of Fp_(n+1) on page 3, which ones do I

have to use.

- the theory shows that when all is said and done, as written in the notes, you use the evectors of the RGG tensor of the elastic predictor F*.

9. I guess the concept of writing tensors using eigenvectors (or base

vectors?) confuses me... I try to avoid it.

- cannot help on this. The spectral decomposition is extremely important here and gives the all important simplification of going from a 10 variable update to a 4 variable update. BTW, the formulation in the notes can be implemented in any arbitrary basis - even non-orthogonal. It is also not required to invoke any basis to understand it.

hope this helps.