Page 1 of 2
J-Integral
Posted: 28 Jun 2013, 10:26
by DePurpereWolf
Hello,
To understand fracture mechanics, a j-integral can be used which would eliminate the need to make a very fine mesh near a crack initiation site.
Does anyone have any experience in implementing the J-integral in Elmer?
If you have any advice. It is much appreciated if you could tell us how you implemented it.
Re: J-Integral
Posted: 10 Sep 2014, 12:03
by saxonfahrer
I'm also very interessted on fatigue prediction (and so on J-integral implementation in Elmer).
Is there any Progress or new tipps/hints on this topic how to solve in elmer (with programmers beginner Level)?
Re: J-Integral
Posted: 10 Sep 2014, 12:51
by raback
Hi
Don't know anything about the J-integral but I found this in my repository. Probably based on some earlier question where I did some minor coding. Maybe you can make some sense on it.
-Pete
Re: J-Integral
Posted: 12 Sep 2014, 18:04
by DePurpereWolf
I've tried out the code but it's giving me a segmentation fault.
The code runs and even outputs something interesting. I've included the elmer output.
I doesn't give me any hint whay might be wrong except for: Program received signal SIGSEGV: Segmentation fault - invalid memory reference.
Regards,
Re: J-Integral
Posted: 15 Sep 2014, 17:45
by raback
Hi
Sorry, cannot replicate your problem. For me the last few lines are:
Code: Select all
Jintegral: Jintegral: 4.872E+01
Jintegral: Line length: 2.800E+00
ElmerSolver: *** Elmer Solver: ALL DONE ***
ElmerSolver: The end
SOLVER TOTAL TIME(CPU,REAL): 0.30 0.36
ELMER SOLVER FINISHED AT: 2014/09/15 17:43:35
and the case is run by
Code: Select all
>elmerf90 -o Jintegral.so Jintegral.f90
>ElmerSolver
-Peter
Re: J-Integral
Posted: 16 Sep 2014, 09:49
by DePurpereWolf
I think this is related to the fact that I'm running Elmer on Ubuntu 14.04
When I run
elmerf90 -o Jintegral.so Jintegral.f90
I get:
Code: Select all
gfortran -I/build/buildd/elmerfem-6.1.0.svn.5396.dfsg2/debian/tmp/usr/include -fPIC -m64 -fPIC -fPIC -I. -Ibinio -I/usr/include/mpi -I/usr/include -m64 -fPIC -I/usr/share/elmersolver/include -shared -o Jintegral.so Jintegral.f90
Warning: Nonexistent include directory "/build/buildd/elmerfem-6.1.0.svn.5396.dfsg2/debian/tmp/usr/include"
Warning: Nonexistent include directory "binio"
Any input on this?
Re: J-Integral
Posted: 16 Sep 2014, 09:58
by mzenker
Hi,
just an observation: Your Elmer seems rather old. Maybe an update would improve things...
Matthias
Re: J-Integral
Posted: 16 Sep 2014, 13:37
by DePurpereWolf
The simulation works on a 13.10 machine I have in the office. So it seems to be specific to my ubuntu 14.04 install.
I'm a little apprehensive of building Elmer 7 on ubuntu 14.04 I have seen a lot of issues with it here on this forum.
viewtopic.php?f=3&t=3585&p=12184&hilit=compile+elmer
Anyway, thanks for the J-Integral code, it is very insightful. We may look into this in the future to expand it to 3 dimensions. Currently we don't have the resources for that. But it looks vey interesting.
Re: J-Integral
Posted: 16 Sep 2014, 17:08
by raback
Hi
Generalization into 3D should be pretty straight-forward. Few minutes of coding if you know what to do - and of course indefinite time if coding with Elmer is new
-Peter
Re: J-Integral
Posted: 11 Nov 2014, 17:30
by saxonfahrer
Hi Peter, Hi DePupereWolf,
thank you for the f90 code. I'm using Windows and i tried to make it useable with ElmerGUI also.
First i compiled the Jintegral.f90 files to dll.
Additionally (for the GUI): I tried to edit a xml-file to the J-Integral. In principle it works, but i struggle with the "logical true" checkbox in the Boundary Condition Section. It only become "true" in the SIF at the end.
What do i have to do to make it from "true" to "logical true"? If this would work, it is very cheap but it would work in ElmerGUI also.
Code: Select all
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE edf>
<edf version="1.0" >
<PDE Name="J Integral" >
<Name>J-Integral</Name>
<Solver>
<Parameter Widget="Edit" >
<Name> Procedure </Name>
<DefaultValue> "Jintegral" "Jintegral" </DefaultValue>
</Parameter>
</Solver>
<Equation>
</Equation>
<InitialCondition>
</InitialCondition>
<BodyForce>
</BodyForce>
<Material>
</Material>
<BoundaryCondition>
<Parameter Widget="CheckBox">
<Name> J Integral </Name>
<Type> Logical </Type>
<Whatis> If checked then J-Integral will be calculated </Whatis>
</Parameter>
</BoundaryCondition>
</PDE>
</edf>