[Dune] Help requested for my first test case in non linear mechanics

Oliver Sander oliver.sander at tu-dresden.de
Thu Apr 16 11:09:35 CEST 2020


Hi Thomas,

AFAICT, your method apply_boundary_conditions contains a classic mistake:
You are not setting the matrix diagonals correctly.  See Chapter 7.3.2.1
in my book for details.

Best,
Oliver

On 16.04.20 09:39, HELFER Thomas 202608 wrote:
> Hi Oliver,
> 
> thanks for this feedback. I will compare my stiffness matrix to the one get with another code,
> that probably the best way to go. But I felt rather confident...
> 
> But it does seems like something nasty is happening in my code.
> 
> Something is itching me about the linear solver: the defect becomes very high but the solver
> converges to the given criterion (a reduction to 1.e-5). However, my Dirichlet boundary
> conditions are not met.
> 
> So either my handling of the Dirichlet boundaryd condtions is wrong, or my usage of the linear solver is
> (or both).
> 
> Is there an example of how to replace the linear solver by a direct solver ?
> 
> Regards,
> 
> Thomas
> ________________________________________
> De : Oliver Sander [oliver.sander at tu-dresden.de]
> Envoyé : jeudi 16 avril 2020 09:07
> À : dune at lists.dune-project.org; HELFER Thomas 202608
> Objet : Re: [Dune] Help requested for my first test case in non linear mechanics
> 
> Hi Thomas,
> 
>> It almost works. I can simulate a tensile test for an elastic behaviour and a plastic behaviour.
>> I probably can use any smal strain behaviour generated by MFront. The non-linearity is treated
>> very crudely as we use an Newton algorithm with a fixed number of iterations.
> 
> that sounds pretty good already.
> 
>> The trouble is that it only works if the grid contains only a single element. This probably means
>> that I made a mistake in the assembly of the stiffness matrix or the assembly of the inner
>> forces. I reread my code several times without finding the trouble.
> 
> Did you check whether the matrix and forces are assembled correctly?
> What I would do is choose a very small grid (say, 2x2), assemble everything,
> and write the matrix and forces to a file (or print them to the screen).
> Then compare with one of your working implementations.  This will allow you
> to narrow down the cause of your problem.
> 
> Helpers for writing/printing vectors and sparse matrices can be found in dune/istl/io.hh.
> 
> Bonne chance,
> Oliver
> 
> 
> 
>>
>> Please find enclosed my project, modified to drop the dependency to the MGIS library and
>> only integrate an isotropic elastic behaviour. The relevant file is
>> dune-mgis/src/dune-mgis-tensile-test.cc.
>>
>> The purpose of my request is twofold:
>>
>> - I would be grateful if anyone could find what I have done wrong.
>> - I would be grateful if anyone could review the code to tell me what could be improved.
>>
>> With kind regards,
>>
>> Thomas Helfer
>>
>>
>> _______________________________________________
>> Dune mailing list
>> Dune at lists.dune-project.org
>> https://lists.dune-project.org/mailman/listinfo/dune
>>
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5198 bytes
Desc: S/MIME Cryptographic Signature
URL: <https://lists.dune-project.org/pipermail/dune/attachments/20200416/9d4ece80/attachment.bin>


More information about the Dune mailing list