GCC Code Coverage Report


Directory: ./
File: src/eps/impls/davidson/dvdtestconv.c
Date: 2025-10-03 04:28:47
Exec Total Coverage
Lines: 10 10 100.0%
Functions: 2 2 100.0%
Branches: 25 44 56.8%

Line Branch Exec Source
1 /*
2 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
3 SLEPc - Scalable Library for Eigenvalue Problem Computations
4 Copyright (c) 2002-, Universitat Politecnica de Valencia, Spain
5
6 This file is part of SLEPc.
7 SLEPc is distributed under a 2-clause BSD license (see LICENSE).
8 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
9 */
10 /*
11 SLEPc eigensolver: "davidson"
12
13 Step: test for convergence
14 */
15
16 #include "davidson.h"
17
18 98790 static PetscBool dvd_testconv_slepc_0(dvdDashboard *d,PetscScalar eigvr,PetscScalar eigvi,PetscReal r,PetscReal *err)
19 {
20
1/2
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
98790 PetscFunctionBegin;
21
4/6
✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
98790 PetscCallAbort(PetscObjectComm((PetscObject)d->eps),(*d->eps->converged)(d->eps,eigvr,eigvi,r,err,d->eps->convergedctx));
22
6/12
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 2 times.
✓ Branch 4 taken 2 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 2 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 2 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 2 times.
98790 PetscFunctionReturn(PetscNot(*err>=d->eps->tol));
23 }
24
25 2940 PetscErrorCode dvd_testconv_slepc(dvdDashboard *d, dvdBlackboard *b)
26 {
27
1/2
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
2940 PetscFunctionBegin;
28 /* Setup the step */
29
2/2
✓ Branch 0 taken 10 times.
✓ Branch 1 taken 10 times.
2940 if (b->state >= DVD_STATE_CONF) {
30
5/8
✓ Branch 0 taken 10 times.
✗ Branch 1 not taken.
✓ Branch 2 taken 2 times.
✓ Branch 3 taken 8 times.
✓ Branch 4 taken 2 times.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✓ Branch 7 taken 2 times.
980 PetscCall(PetscFree(d->testConv_data));
31 980 d->testConv = dvd_testconv_slepc_0;
32 }
33
6/12
✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 2 times.
✓ Branch 4 taken 2 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 2 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 2 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 2 times.
576 PetscFunctionReturn(PETSC_SUCCESS);
34 }
35