Skip to content

Commit fe7cec0

Browse files
space optimized in compute_tau_explicit
1 parent 7a7232a commit fe7cec0

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/simple_regular_solve.jl

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -100,18 +100,18 @@ end
100100

101101
function compute_tau_explicit(u, rate_cache, nu, hor, p, t, epsilon, rate, dtmin)
102102
rate(rate_cache, u, p, t)
103-
mu = zeros(length(u))
104-
sigma2 = zeros(length(u))
105103
tau = Inf
106104
for i in 1:length(u)
105+
mu = zero(eltype(u))
106+
sigma2 = zero(eltype(u))
107107
for j in 1:size(nu, 2)
108-
mu[i] += nu[i, j] * rate_cache[j]
109-
sigma2[i] += nu[i, j]^2 * rate_cache[j]
108+
mu += nu[i, j] * rate_cache[j]
109+
sigma2 += nu[i, j]^2 * rate_cache[j]
110110
end
111111
gi = compute_gi(u, nu, hor, i)
112112
bound = max(epsilon * u[i] / gi, 1.0)
113-
mu_term = abs(mu[i]) > 0 ? bound / abs(mu[i]) : Inf
114-
sigma_term = sigma2[i] > 0 ? bound^2 / sigma2[i] : Inf
113+
mu_term = abs(mu) > 0 ? bound / abs(mu) : Inf
114+
sigma_term = sigma2 > 0 ? bound^2 / sigma2 : Inf
115115
tau = min(tau, mu_term, sigma_term)
116116
end
117117
return max(tau, dtmin)

0 commit comments

Comments
 (0)