hi team,
i have a questions about the savedata solver for my HeatSolve_NavierStoke problem.
i tried to save the number of nonlinear system iterations (after the coupled system iteration) for each timestep, to get an analyses of the convergence behaviour.
here is my code:
Solver 3
Exec Solver = After timestep
Equation = SaveScalars
Procedure = "SaveData" "SaveScalars"
Filename = "iterationsteps.dat"
Save Variable 1 = Iteration step
End
after solving my case i got an empty file, so here is my question: what is the right name of the variable to save the iteration steps?
thx martin
SaveData
-
- Site Admin
- Posts: 4832
- Joined: 22 Aug 2009, 11:57
- Antispam: Yes
- Location: Espoo, Finland
- Contact:
Re: SaveData
Try with
Code: Select all
Variable 1 = coupled iter
Re: SaveData
thanx for the fast reply, but again an empty file!
-
- Site Admin
- Posts: 4832
- Joined: 22 Aug 2009, 11:57
- Antispam: Yes
- Location: Espoo, Finland
- Contact:
Re: SaveData
What version is your ElmerSolver? This feature is not many months of age.
Re: SaveData
my version is -> Elmer-svn4304-2010-01-14
-
- Site Admin
- Posts: 4832
- Joined: 22 Aug 2009, 11:57
- Antispam: Yes
- Location: Espoo, Finland
- Contact:
Re: SaveData
Strange. Did you change the "Save Variable 1" also to "Variable 1"? Maybe you could attach the output log for further details.
Re: SaveData
sry my fault, I didn't changed from "Save Variable 1" to "Variable 1"!!!!!!!
now it works fine.
thx for helping
now it works fine.
thx for helping
Re: SaveData
hi again,
the variable "coupled iter" saves only the number of the coupled system iteration and not the number of nonlinear system iterations (NS+Heat or only NS)!
for example i have 20 max non linear iterations (in NS) and i change the tolerance from 10e-8 to 10e-6:
question 1: how many of the iterations are used to reach convergence for each timestep?
question 2: what is the benefit (in the number of iterations) between the two tolerances when the result is the same?
question 3: are 2 non linear system iterations enough or is it better to use more (20 or more)?
there must be a variable like this but I don´t find it!
thx martin
the variable "coupled iter" saves only the number of the coupled system iteration and not the number of nonlinear system iterations (NS+Heat or only NS)!
for example i have 20 max non linear iterations (in NS) and i change the tolerance from 10e-8 to 10e-6:
question 1: how many of the iterations are used to reach convergence for each timestep?
question 2: what is the benefit (in the number of iterations) between the two tolerances when the result is the same?
question 3: are 2 non linear system iterations enough or is it better to use more (20 or more)?
there must be a variable like this but I don´t find it!
thx martin
-
- Site Admin
- Posts: 4832
- Joined: 22 Aug 2009, 11:57
- Antispam: Yes
- Location: Espoo, Finland
- Contact:
Re: SaveData
There is a variable called 'nonlin iter'. Unfortunately its reset each time to zero when a new solver is startéd and added by one each time a linear system is solved. The intended use is to have a parameter (relaxation factor, for example) to be dependent on iteration step. So normally it would reset itself to zero when SaveScalars is started. There is however, a workaround. Say for SaveScalars "Auxiliary Solver = Logical True" and this wont be reset. Still there is no way to get this for two different solvers. It might be a good idea to attach a counter to the Solver type itself rather than to have just a global counter....
-Peter
-Peter
Re: SaveData
Hi
If you really need this, I could write python script to automate reading iterations for all times. It is very simple. It would work that way:
You run computations with:
some_file will get all informations about computations (you will need to set Max Output Level = 3)
then my script:
will search for any time point and count iterations and write them to file in forms read by gnuplot or similiar program:
#time #iterations
1 20
2 10
....
What do you think, is it good for you?
If you want that script let me know
Regards
Daniel Kucharski
If you really need this, I could write python script to automate reading iterations for all times. It is very simple. It would work that way:
You run computations with:
Code: Select all
ElmerSolver > some_file
then my script:
Code: Select all
Elmer_Search_iter.py some_file
#time #iterations
1 20
2 10
....
What do you think, is it good for you?
If you want that script let me know
Regards
Daniel Kucharski