• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

maurergroup / dfttoolkit / 15077298886

16 May 2025 08:57PM UTC coverage: 28.848% (+7.1%) from 21.747%
15077298886

Pull #59

github

b0d5e4
web-flow
Merge 473bfe91e into e895278a4
Pull Request #59: Vibrations refactor

1162 of 4028 relevant lines covered (28.85%)

0.29 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
dfttoolkit/benchmarking.py
1

2
import numpy as np
×
3
import numpy.typing as npt
×
4

5
from dfttoolkit.output import AimsOutput
×
6

7

8
class BenchmarkAims(AimsOutput):
×
9
    """
10
    Calculate benchmarking metrics for FHI-aims calculations.
11

12
    ...
13

14
    Attributes
15
    ----------
16
    benchmark_dirs : List[str]
17
        The paths to the aims.out files.
18
    """
19

20
    def __init__(self, benchmark_dirs: list[str]):
×
21
        self.benchmarks = []
×
22

23
        # Get the aims.out files from the provided directories
24
        for aims_out in benchmark_dirs:
×
25
            ao = AimsOutput(aims_out=aims_out)
×
26
            self.benchmarks.append(ao)
×
27

28
    def get_timings_per_benchmark(self) -> list[npt.NDArray[np.float64]]:
×
29
        """
30
        Calculate the average time taken per SCF iteration for each benchmark.
31

32
        Returns
33
        -------
34
        List[np.ndarray]
35
            The average time taken per SCF iteration for each benchmark.
36
        """
37
        benchmark_timings = []
×
38

39
        for aims_out in self.benchmarks:
×
40
            scf_iter_times = aims_out.get_time_per_scf()
×
41
            benchmark_timings.append(scf_iter_times)
×
42

43
        return benchmark_timings
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc