Various Problems with Post Processing Transient Data

Post processing utility for Elmer
Post Reply
Sven Hensel
Posts: 8
Joined: 22 Nov 2011, 13:06
Antispam: Yes

Various Problems with Post Processing Transient Data

Post by Sven Hensel »

Hallo,

I want to use Elmer FEM for the simulation of solidification processes in a foundry. I use the system for two month now and it seems to work fine for small problems.

Recently I tried a longer running simulation (25.000 Timesteps) and encountered serveral problems:

1.) I tried to log the timesteps in a file "zeit.dat"

Code: Select all

Solver 2
  Exec Solver = After Timestep
  Exec Interval = 1
  Equation = String SaveScalars
  Procedure = File "SaveData" "SaveScalars"
  Filename = File "zeit.dat"
  Variable 1 = String Time
End
I expected, this would give me an ASCII-File with the timesteps (Timestep Size 5 seconds, so I expected something like 5, 10, 15, ...). However, I got two files zeit.dat.0 and zeit.dat.1 (I used 2 processors), who look like this:

5.000000000000E+000
2.500000000000E+000
5.000000000000E+000
1.000000000000E+001
7.500000000000E+000
1.000000000000E+001
1.500000000000E+001
1.250000000000E+001
1.500000000000E+001
2.000000000000E+001
1.750000000000E+001
2.000000000000E+001
2.500000000000E+001
2.250000000000E+001
3.280000000000E+002
2.500000000000E+001
3.000000000000E+001
2.750000000000E+001
3.000000000000E+001
3.500000000000E+001
3.250000000000E+001
3.500000000000E+001

What did I do wrong?

2.) I tried to export the solution to vtk to post process it in ParaView.

Code: Select all

Solver 3
  Exec Solver = After Timestep
  Exec Interval = 1
  Equation = Result Output
  Output Format = Vtu
  Output File Name = ergebnis_export_vtk ! Name des exportieten Ergebnisfiles
  Procedure = "ResultOutputSolve" "ResultOutputSolver"
  Show Variables = Logical True ! Gibt eine Uebersicht, welche Exportvariablen moeglich sind
End
This works fine for small simulations, but I have 25.000 Timesteps so there seems to be a problem with the file names. The first 9999 result files are named ergebnis_export_vtk0001.vtu ... ergebnis_export_vtk9999.vtu. After that I get Filenames like ergebnis_export_vtk0001par0001.vtu and so on. The last filename is ergebnis_export_vtk****.pvtu.
I was not able to load them into ParaView correctly. All I got where the first 10000 steps.
Is it possible to use more numbers at the end of the file name?

3.) I tried to log temperature results during the simulation. I used a code snippet I found in this forum.

Code: Select all

Solver 4
  Exec Solver = After Timestep
  Equation = SaveScalars
  Procedure = "SaveData" "SaveScalars"
  Save Points = 7
  Variable 1 = Displacement
  Filename = "DiskData.dat"
End
I changed the lines here and there, but was not able to write out several displacement values at the same time. I try to achieve someting like this:

timestep 1, displacement at node nr 7, displacement at node nummer 8, ...
timestep 2, displacement at node nr 7, displacement at node nummer 8, ...
and so on.

Is this possible?

Thank you.
Have a nice weekend.
Sven Hensel
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Various Problems with Post Processing Transient Data

Post by raback »

Hi

1) Say "Parallel Reduce = Logical True". The times seems strange. What timestepping strategy are you using. Maybe you can post the simulation section.

2) Ok, I never thought one would need more than 10000 timesteps... There is a format definition 'I4' in the .src file that should be changed to 'I6', for example, or something more advanced. Probably somebody is going to have over 1000000 timesteps someday. One could perhaps use 'I0' also to remove the preceeding zeros, but I think they are generally nice because the files will then be listed in the correct order. Maybe you can test yourself these by making a local version of the ResultOutputSolver.

3) Use 'Save Points(2) = 7 8

-Peter
Sven Hensel
Posts: 8
Joined: 22 Nov 2011, 13:06
Antispam: Yes

Re: Various Problems with Post Processing Transient Data

Post by Sven Hensel »

Hallo,

thank you for your fast reply. Maybe it's because of monday morning - but I can't get your suggestions to work.

1.) O.K. - I take the last statement back. When I insert "Parallel Reduce = Logical True" I get the times right.

2.) What src-File do you mean?

I did a "locate" on my machine and recieved two ansers - both of them where in the Elmer-Test-Folder. These were:

elmer/tests/stress/shape_disp.src
and
elmer/tests/stress/true_disp.src

I looked at both of them, but could'nt find what you implied. Maybe I got this wrong - Are you saying, I should recompile Elmer?

3.) When I use Save Points(2) = 7 8, I actually get the temperatures at nodes.

But there are more data and they look like this:

5.000000000000E+000 7.297110032410E+002 3.062000000000E-018 1.000000000000E-001 1.000000000000E+000 7.400000000000E+002 0.000000000000E+000 0.000000000000E+000 6.000000000000E-001
1.000000000000E+001 7.249039133637E+002 3.062000000000E-018 1.000000000000E-001 1.000000000000E+000 7.400000000000E+002 0.000000000000E+000 0.000000000000E+000 6.000000000000E-001

If I get this right, this is:

time, temp at node 7, x-location of node 7, y-location of node 7, ...
time, temp at node 7, x-location of node 7, y-location of node 7, ...

Is this correct? If yes, I have a new problem - the locations are not correct. Is there a renumbering of the nodes when I start the solver?
I tried various node numberings (Is "numbering" an englisch therm? - But I don't know right word anyway.): There are three (completely) different numberings:

Mesher (ICEM CFD)
Elmer (the numbers I see, when I turn on node numbers)
ParaView

I tried all three node numberings and all get the locations wrong. During the ParaView test I added a 1 because of the C-Numbering method, but it didn't help. Is there a possiblility in Elmer to get the node number on a certain location?

I tried another approach by doing:

Code: Select all

Solver 2
  Procedure = "SaveData" "SaveScalars"
  Exec solver = after timestep
  FileName = "file.dat"
  Save Coordinates(1,2) = 0.05 0.035
  Exact Coordinates = True
  Variable 1 = Time
  Variable 2 = Temperature
End
This actually worked quite good - but I face the same problem as before: I am not able to export serveral points at the same time. So I tried to invoke the solver a second time:

Code: Select all

Solver 3
  Procedure = "SaveData" "SaveScalars"
  Exec solver = after timestep
  FileName = "file_2.dat"
  Save Coordinates(1,2) = 0.05 0.05
  Exact Coordinates = True
  Variable 1 = Time
  Variable 2 = Temperature
End
but unfortunately Elmer ignores this.

Thank You for Your help - I really appreciate this.
Sven Hensel

P.S.: Oh, I forgot. You wanted to see the simulation section. Here it is

Code: Select all

Simulation
  Max Output Level = 4
  Coordinate System = Cartesian
  Coordinate Mapping(3) = 1 2 3
  Simulation Type = Transient
  Steady State Max Iterations = 1
  Output Intervals = 1
  Timestepping Method = BDF
  BDF Order = 1
  Timestep intervals = 5000
  Timestep Sizes = 5
  Solver Input File = case.sif
  Post File = case.ep
End
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Various Problems with Post Processing Transient Data

Post by raback »

Hi

2) the source file of Elmer code i.e. ResultOutputSolve.src

3) You can use
Save Coordinates(2,2) = 0.0 0.0 1.0 1.0
For the description of the file look at the *.names file.

-Peter
Sven Hensel
Posts: 8
Joined: 22 Nov 2011, 13:06
Antispam: Yes

Re: Various Problems with Post Processing Transient Data

Post by Sven Hensel »

Hallo,

thanks again for your help.

Today I have other thing to do (some ANSYS and some CFX Models), but I will try this evening or tomorrow morning.

I will post when I'm done.

Regards
Sven Hensel
Sven Hensel
Posts: 8
Joined: 22 Nov 2011, 13:06
Antispam: Yes

Re: Various Problems with Post Processing Transient Data

Post by Sven Hensel »

Hallo,

the "Save Coordinates(2,2) = 0.0 0.0 1.0 1.0" did exactly what I wanted. Thank you.

I downloaded the latest Elmer-Version from the cvs, edited the ResultOutputSolve.src-File. Afterwards I couldn't compile the program, I got an error:

checking for eio_init_ in -leiof... no
configure: error: libeiof wasn't found, make sure it is in the prefix, or CFLAGS and LIBS are correct if they are somewhere else.
make: *** Keine Targets angegeben und keine »make«-Steuerdatei gefunden. Schluss.
make: *** Keine Regel, um »install« zu erstellen. Schluss.

There seems to be an mismatch with my Fortran-Compiler, but I can't examine this further at the moment. I installed Elmer from the Ubuntu packages again, and continue to work with this. Maybe I can rename the files using krename or something.

Regards
Sven Hensel
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Various Problems with Post Processing Transient Data

Post by raback »

Hi

Did you try with

Code: Select all

cp ResultOutputSolve.src ResultOutputSolve.f90
elmerf90 ResultOutputSolver.src -o ResultOutputSolve.so
when this is in your case directory set in .sif file to use the local version:

Code: Select all

Procedure = "./ResultOutputSolve" "ResultOutputSolver"
-Peter
Sven Hensel
Posts: 8
Joined: 22 Nov 2011, 13:06
Antispam: Yes

Re: Various Problems with Post Processing Transient Data

Post by Sven Hensel »

Hallo,

I will try this, and post the results.

Thank you
Sven Hensel
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Various Problems with Post Processing Transient Data

Post by raback »

Hi, If you're using the Windows version then the most recent update from last week addresses these issues. -Peter
Post Reply