Try [1], please. The time_field_dependent.py example seems to be working. With oxygen_difusion.py I no longer get the exception, but NaNs are in the solution
- this might be unrelated to the issue, though.
r.
[1] https://github.com/sfepy/sfepy/pull/369
On 03/13/2017 11:23 AM, Jan Heczko wrote:
Yes, that's probably the reason, why I added if ts.step == 0: state = problem.create_state() state.apply_ic() problem.equations.variables.set_data(state()) to
get_reaction_coefs
. But even with that piece of code, the solution fails in the second step. The error message saysstep 0
, but it is actually the second time-step.I was hoping to only get some clues to fix things myself, but you doing the work is ok as well :-) J.
On Monday, 13 March 2017 09:49:18 UTC+1, Robert Cimrman wrote:
Hi Jan,
the problem is, that the material update is called before the initial time step, and the initial conditions (i.e., the values of DOFs in variables) are not set yet. I will make a PR fixing that soon.
r.
Hi Jan,
SimpleTimeSteppingSolver just calls Problem.solve(), so it should update
materials as usual (= also in QP). I will check it when I get to it.
r.
On 03/08/2017 03:59 PM, Jan Heczko wrote:
Update: There was a mistake in naming the materials. With things corrected, however, the problem remains. I attach the file (oxygen_diffusion.py). Running it results in ValueError: data of variable are not set! (q, step 0)
When the material parameters are set to constants, the computation runs. The same happens when using the config-file with
ts
time-stepper, e.g. changing [2] to time-dependent problem (time_field_dependent.py).J.
On Monday, 6 March 2017 15:01:05 UTC+1, Jan Heczko wrote:
Hi,
I tried to use this approach ([1]) to solve a diffusion problem with a field-dependent material as in [2], but I got: ValueError: material data not set! (call time_update())
By adding some print-calls to the material-defining function, I found
out
that the function gets called, but with mode='special' instead of 'qp'. As a result None is returned instead of the values that correspond to
initial conditions.
My question(s):
- Is the SimpleTimeSteppingSolver usable for such problem? Is there an example?
- Should I use/implement a different time-stepper?
Thanks, Jan
[2]
http://sfepy.org/doc-devel/examples/diffusion/poisson_field_dependent_materi...
On Wednesday, 18 March 2015 13:10:50 UTC+1, Robert Cimrman wrote:
Hi,
I have just updated the time stepping solvers in sfepy for
interactive
use, as demonstrated in the new example [1]. For basic use, ignore the
On 03/12/2017 12:46 AM, Robert Cimrman wrote: the the probing
code - the time stepper can be used as simply as:
tss = SimpleTimeSteppingSolver({'t0' : 0.0, 't1' : 100.0, 'n_step' : 11}, problem=problem) tss.init_time() for step, time, state in tss(): pass
r.
[1]
http://sfepy.org/doc-devel/examples/diffusion/time_poisson_interactive.html