Error in `ElmerSolver': free(): invalid next size

Numerical methods and mathematical models of Elmer
maike151
Posts: 41
Joined: 10 May 2019, 10:00
Antispam: Yes
Location: Cologne, Germany

Error in `ElmerSolver': free(): invalid next size

Post by maike151 »

Hello everyone,

I keep on getting this Error: *** Error in `ElmerSolver': free(): invalid next size (fast): 0x0000000003ed8970 ***

I remeshed my geometry with different parameters about twenty times now and it keeps on failing in the second elasticity iteration. I did the exact same simulation on the same geometry just with a coarser mesh and it worked without any problems. Now I want to refine my mesh for validation reasons and it does not work anymore.

Here you can find my mesh and my sif: https://www.dropbox.com/s/881jio48cjbke ... m.zip?dl=0
The Mesh was made with Salome. The Simulation is the tensile test of a woven structure out of metal wires including contact between the wires.

I would appreciate any help.

Sincerely
Maike
kevinarden
Posts: 669
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: Error in `ElmerSolver': free(): invalid next size

Post by kevinarden »

My guess is you ran out of RAM, mesh is too big. I tried it and ran out of RAM. I have 6 GB, and 6 GB swap. I have a 32 Gb machine at work I can try it on tomorrow.
maike151
Posts: 41
Joined: 10 May 2019, 10:00
Antispam: Yes
Location: Cologne, Germany

Re: Error in `ElmerSolver': free(): invalid next size

Post by maike151 »

I checked that via the "top" command in a terminal. I did not run out of RAM. I have a 80 GB machine with 20 GB Swap and the Swap wasn't even used. I already ran bigger simulations with more nodes.
maike151
Posts: 41
Joined: 10 May 2019, 10:00
Antispam: Yes
Location: Cologne, Germany

Re: Error in `ElmerSolver': free(): invalid next size

Post by maike151 »

It has something to do with a pointer error. I think the Solver wants to free something it didn't allocate. This is not an error thrown by ElmerSolver, but by the system itself.
maike151
Posts: 41
Joined: 10 May 2019, 10:00
Antispam: Yes
Location: Cologne, Germany

Re: Error in `ElmerSolver': free(): invalid next size

Post by maike151 »

It's also not always the same error. Sometimes I also get

*** Error in `ElmerSolver': corrupted size vs. prev_size: 0x0000000002893b10 ***

This is also pointer related.
maike151
Posts: 41
Joined: 10 May 2019, 10:00
Antispam: Yes
Location: Cologne, Germany

Re: Error in `ElmerSolver': free(): invalid next size

Post by maike151 »

After remeshing a thousand times it acutally ran through until Elasticity iteration 10 and almost made it through the first timestep. But then again crashed, this time with the error:

*** Error in `ElmerSolver': double free or corruption (!prev): 0x00000000034d9a00 ***
raback
Site Admin
Posts: 3780
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Error in `ElmerSolver': free(): invalid next size

Post by raback »

Hi Maike

I had a quick look. Your case looks just wonderful!

Unfortunately, the contact mechanics features of Elmer have not been fully generic. We started the work actually first creating projection matrices for rotating boundaries and periodic systems. For these the assumption was that the surfaces may be mapped using some coordinate transformation to two planar or cylindrical meshes. Hence the contact mechanics between arbitrary boundaries have not really been supported. The "Level Projector" keyword means that the we map the system to xy-plane. This can't be done for your case.

Now, there are also some other projects that would require generation of projector matrices in a more generic case. So I took a go yesterday and wrote a new routine for generating projection matrices. This one takes each slave element and uses local normal-tangential coordinate system when finding the mapping. A rough search is used to narrow down the candidate elements, and for each candidate we use the same local coordinate system to perform the integration. Seems to work nicely but it didn't work out of the box for your case.

This new developments may be found in "NormalProjector" branch.

So we may be getting there but it is definite that you cannot solve the problem without a more generic projector. You might put additional effort to create contact pairs that are mappable to a plane, but I would not try to take that route.

-Peter
maike151
Posts: 41
Joined: 10 May 2019, 10:00
Antispam: Yes
Location: Cologne, Germany

Re: Error in `ElmerSolver': free(): invalid next size

Post by maike151 »

Hello Peter,

thank you for your answer and effort.

I am a little confused now, because the exact same case works using this mesh for example: https://www.dropbox.com/s/8inxaiv10bgkh20/mesh.zip?dl=0
This is the same geometry just with a coarser mesh. It actually delivers pretty good results close to the values that were measured in the lab. I was just refining the mesh to see if the error could get even smaller.
I also already tried it with a bigger cutting of the weave with nine contact pairs and it worked too. Now I am afraid these were only coincidences.

Sincerely,
Maike
raback
Site Admin
Posts: 3780
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Error in `ElmerSolver': free(): invalid next size

Post by raback »

Hi Maike,

Ok, that's good if it works. I guess this just happens to also work with the "Plane Projector" even though it looks to me like it would not. I think it creates at least redundant projections between the "wrong" sides but they are probably eliminated later due to the larger distance.

I may get back to contact mechanics later in the week and might look at this as well. It is much easier to compare a working and non-working case than to look just at a non-working case.

-Peter
maike151
Posts: 41
Joined: 10 May 2019, 10:00
Antispam: Yes
Location: Cologne, Germany

Re: Error in `ElmerSolver': free(): invalid next size

Post by maike151 »

Hi Peter,

i would be very thankful if you could inform me about any new developments in the contact mechanics area, especially concerning projectors that would be more suitable for my problem.

Sincerely,
Maike
Post Reply