Dear fipy users and developers !
I'm solving with fipy3.0 a 2 components non-linear diffusive problem.
Her'es my problem:
The initialization step (i.e. before the time time integration loop, see
below) is quite slow (about 1 min on my laptop, 2.4GHz, 3Go RAM) with
respect to the integration process. Using pycallgraph, it looks like most
time is spent within a fipy function:
fipy.variables.binaryOperatorVariable.binOp.unit
Am I misusing fipy objects ? Could any one advise or has seen this behavior
before? I can send you the plot returned by pycallgraph, send the code or
give you any other useful information.
Thanks a lot for your help !
Bruno Huet, a fipy fan !
The code main structure:
pycallgraph.start_trace()
# initlaization
C1 = Cellvariable(...)
C2 = Cellvariable(...)
diff_11 = f_11(C1, C2)
diff_12 = f_12(C1, C2)
diff_21 = f_21(C1, C2)
diff_22 = f_22(C1, C2)
eq1 = TransientTerm(C1) == DiffusionTerm(diff_11 , var=C1)+
DiffusionTerm(diff_12 , var=C2)
eq2 = TransientTerm(C2) == DiffusionTerm(diff_21 , var=C1)+
DiffusionTerm(diff_22 , var=C2)
eq = eq1 & eq2
pycallgraph.make_dot_graph('result.png')
# integration:
while (myTime < maxTime):
etc
_______________________________________________
fipy mailing list
[email protected]
http://www.ctcms.nist.gov/fipy
[ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]