File tree Expand file tree Collapse file tree 2 files changed +15
-1
lines changed
Expand file tree Collapse file tree 2 files changed +15
-1
lines changed Original file line number Diff line number Diff line change @@ -493,7 +493,7 @@ function check_positive_definite(op :: AbstractLinearOperator{T}; semi=false) wh
493493 return semi ? (vw ≥ 0 ) : (vw > 0 )
494494end
495495
496- check_positive_definite (M :: AbstractMatrix ) = check_positive_definite (LinearOperator (M))
496+ check_positive_definite (M :: AbstractMatrix ; kwargs ... ) = check_positive_definite (LinearOperator (M); kwargs ... )
497497
498498# Special linear operators.
499499
Original file line number Diff line number Diff line change @@ -278,6 +278,20 @@ function test_linop()
278278 @test (norm (A' * u - D' * u) <= ϵ * norm (u));
279279 end
280280
281+ @testset " posdef" begin
282+ v = simple_vector (ComplexF64, nrow)
283+ H = opHouseholder (v)
284+ Λ = collect (eltype (v), 1 : nrow)
285+ op = H * opDiagonal (Λ) * H'
286+ @test check_positive_definite (op)
287+ @test check_positive_definite (op, semi= true )
288+ Λ = collect (eltype (v), 0 : nrow- 1 )
289+ op = H * opDiagonal (Λ) * H'
290+ @test check_positive_definite (op, semi= true )
291+ A = Matrix (op)
292+ @test check_positive_definite (A, semi= true )
293+ end
294+
281295 @testset " Hermitian" begin
282296 A = simple_matrix (ComplexF64, nrow, nrow)
283297 d = real .(diag (A)); A = tril (A, - 1 );
You can’t perform that action at this time.
0 commit comments