|
52 | 52 | linres = dolinsolve(integrator, cache.linsolve; A = repeat_step ? nothing : W, b = _vec(linsolve_tmp))
|
53 | 53 | veck₁ = _vec(k₁)
|
54 | 54 |
|
55 |
| - @.. veck₁ = vecu * neginvdtγ |
| 55 | + @.. veck₁ = linres.u * neginvdtγ |
56 | 56 | integrator.stats.nsolve += 1
|
57 | 57 |
|
58 | 58 | @.. u=uprev + dto2 * k₁
|
|
69 | 69 | @.. linsolve_tmp = f₁ - tmp
|
70 | 70 |
|
71 | 71 | linres = dolinsolve(integrator, linres.cache; b = _vec(linsolve_tmp))
|
72 |
| - vecu = _vec(linres.u) |
73 | 72 | veck₂ = _vec(k₂)
|
74 | 73 |
|
75 |
| - @.. veck₂ = vecu * neginvdtγ + veck₁ |
| 74 | + @.. veck₂ = linres.u * neginvdtγ + veck₁ |
76 | 75 | integrator.stats.nsolve += 1
|
77 | 76 |
|
78 | 77 | @.. u = uprev + dt * k₂
|
|
95 | 94 |
|
96 | 95 | linres = dolinsolve(integrator, linres.cache; b = _vec(linsolve_tmp))
|
97 | 96 | veck3 = _vec(k₃)
|
98 |
| - @.. veck3 = vecu * neginvdtγ |
| 97 | + @.. veck3 = linres.u * neginvdtγ |
99 | 98 |
|
100 | 99 | integrator.stats.nsolve += 1
|
101 | 100 |
|
|
150 | 149 | integrator.opts.internalnorm, t)
|
151 | 150 |
|
152 | 151 | linres = dolinsolve(integrator, cache.linsolve; A = repeat_step ? nothing : W, b = _vec(linsolve_tmp))
|
153 |
| - |
154 | 152 | veck₁ = _vec(k₁)
|
155 |
| - @.. veck₁ = vecu * neginvdtγ |
| 153 | + @.. veck₁ = linres.u * neginvdtγ |
156 | 154 | integrator.stats.nsolve += 1
|
157 | 155 |
|
158 | 156 | @.. broadcast=false u=uprev + dto2 * k₁
|
|
169 | 167 | @.. broadcast=false linsolve_tmp=f₁ - tmp
|
170 | 168 |
|
171 | 169 | linres = dolinsolve(integrator, linres.cache; b = _vec(linsolve_tmp))
|
172 |
| - vecu = _vec(linres.u) |
173 | 170 | veck₂ = _vec(k₂)
|
174 |
| - @.. veck₂ = vecu * neginvdtγ + veck₁ |
| 171 | + @.. veck₂ = linres.u * neginvdtγ + veck₁ |
175 | 172 | integrator.stats.nsolve += 1
|
176 | 173 |
|
177 | 174 | @.. tmp = uprev + dt * k₂
|
|
191 | 188 | linres = dolinsolve(integrator, linres.cache; b = _vec(linsolve_tmp))
|
192 | 189 | veck3 = _vec(k₃)
|
193 | 190 |
|
194 |
| - @.. veck3 = vecu * neginvdtγ |
| 191 | + @.. veck3 = linres.u * neginvdtγ |
195 | 192 | integrator.stats.nsolve += 1
|
196 | 193 |
|
197 | 194 | @.. broadcast=false u=uprev + dto6 * (k₁ + 4k₂ + k₃)
|
|
0 commit comments