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

Open-Sn / opensn / 18300593117

06 Oct 2025 10:47PM UTC coverage: 74.862% (-0.2%) from 75.031%
18300593117

push

github

web-flow
Merge pull request #759 from wdhawkins/performance

Sweep performance optimizations

294 of 302 new or added lines in 15 files covered. (97.35%)

334 existing lines in 80 files now uncovered.

17788 of 23761 relevant lines covered (74.86%)

61852783.95 hits per line

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

0.0
/framework/math/functions/function_dimA_to_dimB.h
1
// SPDX-FileCopyrightText: 2024 The OpenSn Authors <https://open-sn.github.io/opensn/>
2
// SPDX-License-Identifier: MIT
3

4
#pragma once
5

6
#include "framework/parameters/input_parameters.h"
7
#include <functional>
8

9
namespace opensn
10
{
11

12
using ScalarScalarFunction = std::function<double(double)>;
13
using ScalarXYZTFunction = std::function<double(double, double, double, double)>;
14

15
class FunctionDimAToDimB
16
{
17
private:
18
  const size_t input_dimension_;
19
  const size_t output_dimension_;
20

21
public:
22
  static InputParameters GetInputParameters();
23
  explicit FunctionDimAToDimB(const InputParameters& params);
24
  virtual ~FunctionDimAToDimB() = default;
25

26
  size_t GetInputDimension() const { return input_dimension_; }
27
  size_t GetOutputDimension() const { return output_dimension_; }
28

29
  virtual bool HasSlope() const = 0;
30
  virtual bool HasCurvature() const = 0;
31

32
  virtual double GetScalarFunction1Parameter(double x) const;
33
  virtual double GetScalarFunctionSlope1Parameter(double x) const;
34
  virtual double GetScalarFunctionCurvature1Parameter(double x) const;
35

36
  virtual double GetScalarFunction4Parameters(double /* unused */,
37
                                              double /* unused */,
38
                                              double /* unused */,
39
                                              double /* unused */) const;
40
  virtual double GetScalarFunctionSlope4Parameters(double /* unused */,
41
                                                   double /* unused */,
42
                                                   double /* unused */,
43
                                                   double /* unused */) const;
44
  virtual double GetScalarFunctionCurvature4Parameters(double /* unused */,
45
                                                       double /* unused */,
46
                                                       double /* unused */,
47
                                                       double /* unused */) const;
48

49
  virtual std::vector<double> Evaluate(const std::vector<double>& vals) const = 0;
UNCOV
50
  virtual std::vector<double> EvaluateSlope(const std::vector<double>& vals) const { return {0.0}; }
×
UNCOV
51
};
×
52

53
} // namespace opensn
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