diff --git a/src/stdlib_math_is_close.fypp b/src/stdlib_math_is_close.fypp index b97134802..c93719d1f 100644 --- a/src/stdlib_math_is_close.fypp +++ b/src/stdlib_math_is_close.fypp @@ -23,7 +23,7 @@ contains equal_nan_ = optval(equal_nan, .false.) if (ieee_is_nan(a) .or. ieee_is_nan(b)) then - close = merge(.true., .false., equal_nan_ .and. ieee_is_nan(a) .and. ieee_is_nan(b)) + close = equal_nan_ .and. ieee_is_nan(a) .and. ieee_is_nan(b) else close = abs(a - b) <= max( abs(optval(rel_tol, sqrt_eps_${k1}$)*max(abs(a), abs(b))), & abs(optval(abs_tol, 0.0_${k1}$)) ) diff --git a/src/stdlib_stats_corr.fypp b/src/stdlib_stats_corr.fypp index bea4b802a..9e20dfd4a 100644 --- a/src/stdlib_stats_corr.fypp +++ b/src/stdlib_stats_corr.fypp @@ -202,7 +202,7 @@ contains case(1) do i = 1, size(res, 2) do j = 1, size(res, 1) - mask_ = merge(.true., .false., mask(:, i) .and. mask(:, j)) + mask_ = mask(:, i) .and. mask(:, j) centeri_ = merge( x(:, i) - mean(x(:, i), mask = mask_),& #:if t1[0] == 'r' 0._${k1}$,& @@ -227,7 +227,7 @@ contains case(2) do i = 1, size(res, 2) do j = 1, size(res, 1) - mask_ = merge(.true., .false., mask(i, :) .and. mask(j, :)) + mask_ = mask(i, :) .and. mask(j, :) centeri_ = merge( x(i, :) - mean(x(i, :), mask = mask_),& #:if t1[0] == 'r' 0._${k1}$,& @@ -274,11 +274,9 @@ contains case(1) do i = 1, size(res, 2) do j = 1, size(res, 1) - mask_ = merge(.true., .false., mask(:, i) .and. mask(:, j)) - centeri_ = merge( x(:, i) - mean(x(:, i), mask = mask_),& - 0._dp, mask_) - centerj_ = merge( x(:, j) - mean(x(:, j), mask = mask_),& - 0._dp, mask_) + mask_ = mask(:, i) .and. mask(:, j) + centeri_ = merge( x(:, i) - mean(x(:, i), mask = mask_),0._dp, mask_) + centerj_ = merge( x(:, j) - mean(x(:, j), mask = mask_),0._dp, mask_) res(j, i) = dot_product( centerj_, centeri_)& /sqrt(dot_product( centeri_, centeri_)*& @@ -289,11 +287,9 @@ contains case(2) do i = 1, size(res, 2) do j = 1, size(res, 1) - mask_ = merge(.true., .false., mask(i, :) .and. mask(j, :)) - centeri_ = merge( x(i, :) - mean(x(i, :), mask = mask_),& - 0._dp, mask_) - centerj_ = merge( x(j, :) - mean(x(j, :), mask = mask_),& - 0._dp, mask_) + mask_ = mask(i, :) .and. mask(j, :) + centeri_ = merge( x(i, :) - mean(x(i, :), mask = mask_),0._dp, mask_) + centerj_ = merge( x(j, :) - mean(x(j, :), mask = mask_),0._dp, mask_) res(j, i) = dot_product( centeri_, centerj_)& /sqrt(dot_product( centeri_, centeri_)*& diff --git a/src/stdlib_stats_cov.fypp b/src/stdlib_stats_cov.fypp index a4c473a11..20f4b3bfa 100644 --- a/src/stdlib_stats_cov.fypp +++ b/src/stdlib_stats_cov.fypp @@ -186,7 +186,7 @@ contains case(1) do i = 1, size(res, 2) do j = 1, size(res, 1) - mask_ = merge(.true., .false., mask(:, i) .and. mask(:, j)) + mask_ = mask(:, i) .and. mask(:, j) centeri_ = merge( x(:, i) - mean(x(:, i), mask = mask_),& #:if t1[0] == 'r' 0._${k1}$,& @@ -211,7 +211,7 @@ contains case(2) do i = 1, size(res, 2) do j = 1, size(res, 1) - mask_ = merge(.true., .false., mask(i, :) .and. mask(j, :)) + mask_ = mask(i, :) .and. mask(j, :) centeri_ = merge( x(i, :) - mean(x(i, :), mask = mask_),& #:if t1[0] == 'r' 0._${k1}$,& @@ -260,11 +260,9 @@ contains case(1) do i = 1, size(res, 2) do j = 1, size(res, 1) - mask_ = merge(.true., .false., mask(:, i) .and. mask(:, j)) - centeri_ = merge( x(:, i) - mean(x(:, i), mask = mask_),& - 0._dp, mask_) - centerj_ = merge( x(:, j) - mean(x(:, j), mask = mask_),& - 0._dp, mask_) + mask_ = mask(:, i) .and. mask(:, j) + centeri_ = merge( x(:, i) - mean(x(:, i), mask = mask_),0._dp, mask_) + centerj_ = merge( x(:, j) - mean(x(:, j), mask = mask_),0._dp, mask_) n = count(mask_) res(j, i) = dot_product( centerj_, centeri_)& @@ -275,11 +273,9 @@ contains case(2) do i = 1, size(res, 2) do j = 1, size(res, 1) - mask_ = merge(.true., .false., mask(i, :) .and. mask(j, :)) - centeri_ = merge( x(i, :) - mean(x(i, :), mask = mask_),& - 0._dp, mask_) - centerj_ = merge( x(j, :) - mean(x(j, :), mask = mask_),& - 0._dp, mask_) + mask_ = mask(i, :) .and. mask(j, :) + centeri_ = merge( x(i, :) - mean(x(i, :), mask = mask_),0._dp, mask_) + centerj_ = merge( x(j, :) - mean(x(j, :), mask = mask_),0._dp, mask_) n = count(mask_) res(j, i) = dot_product( centeri_, centerj_)&