cache the jacobian matrix
This commit is contained in:
parent
898d3dc8cc
commit
29b218835c
1 changed files with 6 additions and 1 deletions
|
|
@ -456,6 +456,11 @@ class Equation:
|
|||
unknown = list(unknown)
|
||||
equations = list(equations)
|
||||
|
||||
J_template = np.empty((n, n), dtype=object)
|
||||
for i in range(n):
|
||||
for j in range(n):
|
||||
J_template[i][j] = equations[i].partial(unknown[j].name)
|
||||
|
||||
for t in tqdm([n * dt for n in range(int(tmax/dt))]):
|
||||
err = 1
|
||||
iterations = 0
|
||||
|
|
@ -470,7 +475,7 @@ class Equation:
|
|||
F[i] = equations[i].evaluate(dico)
|
||||
for j in range(n):
|
||||
# print(equations[0])
|
||||
J[i][j] = equations[i].partial(unknown[j].name).evaluate(dico)
|
||||
J[i][j] = J_template[i][j].evaluate(dico)
|
||||
|
||||
# print(J, F)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue