Help with testing - part 6

About the development of the FEM module/workbench.

Moderator: bernd

User avatar
PrzemoF
Veteran
Posts: 3520
Joined: Fri Jul 25, 2014 4:52 pm
Contact:

Re: Help with testing - part 6

Post by PrzemoF »

I can't nail down the problem, but I changed some deformation handling code and added some debug code. Please test.

https://github.com/PrzemoF/FreeCAD_sf_m ... ee/fem_v13
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: Help with testing - part 6

Post by sgrogan »

PrzemoF wrote:Please test.
Will do. The purge button is a good idea.
Win Builds if anyone else wants to testhttps://www.dropbox.com/sh/hgnddrzm88n8 ... 8z4ta?dl=0
"fight the good fight"
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Help with testing - part 6

Post by bernd »

PrzemoF wrote: ... Also on recalculation the mesh is no longer inverted. It's strange.. I found out that DisplacementVector in the results in your file is huge:
x,y,z 5.313510, -27.092500, -5.313510
but after recalculation it's
x,y,z -0.053135, 0.270925, 0.053135
so potentially we have a problem with CalculiX producing rubbish or an error ccxFrdReader.
for me too after recalculation displacements are by factor 100 lower and no exploded mesh. I'm on debian jessie and used self compiled calculix. I have windows at work. I'm gone try the build of sgrogan and the bconverged calculix on monday or turesday on windows.

As far as I can tell the mesh explodes if factor * deformation is longer than the shape length. I may check ...

BTW. I really like that purge butten :D very much.
fandaL
Posts: 440
Joined: Thu Jul 24, 2014 8:29 am

Re: Help with testing - part 6

Post by fandaL »

Thanks to sgrogan's win builds I tried to test it.

Frozen values of min, max U1 displacement:
When I run analysis first time, it is correct.
first_analysis_run.png
first_analysis_run.png (71.22 KiB) Viewed 2144 times
After that I use button to pure results and change load, for example reverse pressure load. After running new analysis I get right value of max U1 displacement, but wrong value of min U1 displacement (it is remembered from last analysis). If I change loading back, it again remember one incorrect value in U1 displacement.
second_analysis_with_reversed_pressure.png
second_analysis_with_reversed_pressure.png (74.63 KiB) Viewed 2144 times
Maybe value (min or max) which should be 0 is taken from last analysis results and only non 0 values are rewritten.

OS: Windows 7
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.16.5037 (Git)
Build type: Release
Branch: fem_v13
Hash: aacffd6446cbeaa42ba560f6d13c912b4dec8010
Python version: 2.7.8
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
User avatar
sgrogan
Veteran
Posts: 6499
Joined: Wed Oct 22, 2014 5:02 pm

Re: Help with testing - part 6

Post by sgrogan »

In addition to fandaL's observations, which I can repeat. When results are purged if colors or displacement are displayed in the 3-D view they are not purged. With a new analysis the results are unchanged, they can be manually reset by opening up the results and manually resetting to none colors or zero displacement.
bernd wrote:As far as I can tell the mesh explodes if factor * deformation is longer than the shape length. I may check ...
I think you are on to something. For the materials we are working with now by the time you get to 100% elongation we are past the yield strength (and probably the ultimate strength) of the material and the results don't mean anything anyway. If we had yield strength in the material card, maybe a check of stress*factor<Yield and limit factor to this number?

As for the material cards I would like to help here. I don't think this would require programming, so maybe I could contribute more than observations. Of course we would need to settle on a format that is consistent across FreeCAD. I think we could use yield strength and density now but it needs to be extendable.
"fight the good fight"
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Help with testing - part 6

Post by bernd »

I can confirm wrong results for

OS: Windows 7
Word size of OS: 64-bit
Word size of FreeCAD: 32-bit
Version: 0.16.4976 (Git)
Build type: Release
Branch: master
Hash: 84d579186c65fb5e2325adbf999aa93f2d8594ce
Python version: 2.7.8
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17

and

CalculiX version 2.8p2, Copyright(C) 1998-2015 Guido Dhondt
CalculiX comes with ABSOLUTELY NO WARRANTY. This is free
software, and you are welcome to redistribute it under
certain conditions, see gpl.htm
************************************************************
Built for 64 bit Windows by Convergent Mechanical
For the latest version go to: bConverged.com
************************************************************
You are using an executable made on Fri May 1 09:38:01 PDT 2015


Since I did not use the brunch of przemo it means the wrong results are not related to the current development of Przemo. Further investigation is needed.

Attached the famous CalculiX cantilever. Deformation in force direction should be around 88 mm.
Attachments
calculix-sample01-cantilever.FCStd
(81.9 KiB) Downloaded 44 times
User avatar
PrzemoF
Veteran
Posts: 3520
Joined: Fri Jul 25, 2014 4:52 pm
Contact:

Re: Help with testing - part 6

Post by PrzemoF »

sgrogan wrote:[..]As for the material cards I would like to help here. I don't think this would require programming, so maybe I could contribute more than observations. Of course we would need to settle on a format that is consistent across FreeCAD. I think we could use yield strength and density now but it needs to be extendable.
I started cleaning of the Material files, but it's not ready yet for release. I wanted to remove excess of comments from all real material files and create a template file containing very detailed description of each field. Some suggestions:
1. Add whatever data you think will be useful, but do it in a consistent manner. Same key words, same spelling, same units.
2. Don't use Sections - they are not used by FreeCAD anymore
3. If you're planning any internationalisation, I think that some of the existing keys use Alpha-2 code from ISO-3166-1 added to the key word. (I mean add PL for a Polish name or DE for a German name :) )

With exisiting data and with those 3 points we should be able to do some automatic cleaning/formatting whenever we agree what is the perfect format of a material file. My work-in-progress branch is here [2], but you have to assess yourself if you want to use it of start from the master branch. It's rebased on top of the latest master, so only last 3 commits are important.

[1] https://en.wikipedia.org/wiki/ISO_3166-1
[2] https://github.com/PrzemoF/FreeCAD_sf_m ... terials_v1
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: Help with testing - part 6

Post by bernd »

Again regarding wrong results on window.

Checked with different CalculiX binary and FreeCAD 0.16.4976 (Git) Windows 7. They all give wrong results with the cantilever for the first run. Checked FreeCAD Version: 0.15.4671 (Git) Branch: releases/FreeCAD-0-15. This one gives correct results for the cantilever at first run. Again more investigation is needed. It seams the problem slipped in during FreeCAD 016 development ...

BTW: This is totally not related to the thread?! Prezemo does not have Windows! Open a new one thread for this?!
User avatar
PrzemoF
Veteran
Posts: 3520
Joined: Fri Jul 25, 2014 4:52 pm
Contact:

Re: Help with testing - part 6

Post by PrzemoF »

I have access to windows 7 (typing on in right now), but I don't want to do any development on windows.

Back to the problem: can you try to run git bisect (a fast PC makes it easier)? I can help you with the details, but it's very easy anyway.
User avatar
PrzemoF
Veteran
Posts: 3520
Joined: Fri Jul 25, 2014 4:52 pm
Contact:

Re: Help with testing - part 6

Post by PrzemoF »

[quote="bernd"[..]Attached the famous CalculiX cantilever. Deformation in force direction should be around 88 mm.[/quote]

Test on the latest master.

OS: Linux
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.16.5046 (Git)
Build type: Unknown
Branch: master
Hash: b27e5128281c086fe5cc68c16c9e71fe81d77ad7
Python version: 2.7.8
Qt version: 4.8.6
Coin version: 3.1.3
OCC version: 6.7.1.oce-0.16

Code: Select all

[przemo@localhost bin]$ ./ccx_2.8p2 -v
This is version version 2.8p2
Maximum absolute displacement is 87.5816 mm. So, is it windows-only bug?? :shock:

There only section of code that is different for windows is in mechanicalAnalysis.py as far as I know:

Code: Select all

        if ccx_binary:
            self.CalculixBinary = ccx_binary
            print "Using ccx binary path from FEM preferences: {}".format(ccx_binary)
        else:
            from platform import system
            if system() == 'Linux':
                self.CalculixBinary = 'ccx'
            elif system() == 'Windows':
                self.CalculixBinary = FreeCAD.getHomePath() + 'bin/ccx.exe'
            else:
                self.CalculixBinary = 'ccx'
Post Reply