Skip to content

Commit eaecc60

Browse files
committed
add messages for fallbacks
1 parent 7e13ae7 commit eaecc60

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

src/default.jl

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -517,7 +517,8 @@ end
517517
newex = quote
518518
sol = SciMLBase.solve!(cache, $(algchoice_to_alg(alg)), args...; kwargs...)
519519
if sol.retcode === ReturnCode.Failure && alg.safetyfallback
520-
## TODO: Add verbosity logging here about using the fallback
520+
@SciMLMessage("LU factorization failed, falling back to QR factorization. `A` is potentially rank-deficient.",
521+
cache.verbose, :default_lu_fallback, :error_control)
521522
sol = SciMLBase.solve!(
522523
cache, QRFactorization(ColumnNorm()), args...; kwargs...)
523524
SciMLBase.build_linear_solution(alg, sol.u, sol.resid, sol.cache;
@@ -537,7 +538,8 @@ end
537538

538539
sol = SciMLBase.solve!(cache, $(algchoice_to_alg(alg)), args...; kwargs...)
539540
if sol.retcode === ReturnCode.Failure && alg.safetyfallback
540-
## TODO: Add verbosity logging here about using the fallback
541+
@SciMLMessage("LU factorization failed, falling back to QR factorization. `A` is potentially rank-deficient.",
542+
cache.verbose, :default_lu_fallback, :error_control)
541543
sol = SciMLBase.solve!(
542544
cache, QRFactorization(ColumnNorm()), args...; kwargs...)
543545
SciMLBase.build_linear_solution(alg, sol.u, sol.resid, sol.cache;
@@ -557,7 +559,8 @@ end
557559

558560
sol = SciMLBase.solve!(cache, $(algchoice_to_alg(alg)), args...; kwargs...)
559561
if sol.retcode === ReturnCode.Failure && alg.safetyfallback
560-
## TODO: Add verbosity logging here about using the fallback
562+
@SciMLMessage("LU factorization failed, falling back to QR factorization. `A` is potentially rank-deficient.",
563+
cache.verbose, :default_lu_fallback, :error_control)
561564
sol = SciMLBase.solve!(
562565
cache, QRFactorization(ColumnNorm()), args...; kwargs...)
563566
SciMLBase.build_linear_solution(alg, sol.u, sol.resid, sol.cache;
@@ -577,7 +580,8 @@ end
577580

578581
sol = SciMLBase.solve!(cache, $(algchoice_to_alg(alg)), args...; kwargs...)
579582
if sol.retcode === ReturnCode.Failure && alg.safetyfallback
580-
## TODO: Add verbosity logging here about using the fallback
583+
@SciMLMessage("LU factorization failed, falling back to QR factorization. `A` is potentially rank-deficient.",
584+
cache.verbose, :default_lu_fallback, :error_control)
581585
sol = SciMLBase.solve!(
582586
cache, QRFactorization(ColumnNorm()), args...; kwargs...)
583587
SciMLBase.build_linear_solution(alg, sol.u, sol.resid, sol.cache;
@@ -597,7 +601,8 @@ end
597601

598602
sol = SciMLBase.solve!(cache, $(algchoice_to_alg(alg)), args...; kwargs...)
599603
if sol.retcode === ReturnCode.Failure && alg.safetyfallback
600-
## TODO: Add verbosity logging here about using the fallback
604+
@SciMLMessage("LU factorization failed, falling back to QR factorization. `A` is potentially rank-deficient.",
605+
cache.verbose, :default_lu_fallback, :error_control)
601606
sol = SciMLBase.solve!(
602607
cache, QRFactorization(ColumnNorm()), args...; kwargs...)
603608
SciMLBase.build_linear_solution(alg, sol.u, sol.resid, sol.cache;

0 commit comments

Comments
 (0)