psim  1.0
Generalized 2D phonon transport using a Monte Carlo method
sensorInterpreter.h
Go to the documentation of this file.
1 #ifndef PSIM_SENSORINTERPRETER_H
2 #define PSIM_SENSORINTERPRETER_H
3 
4 #include "sensor.h"// for SensorMeasurements
5 #include <cstddef>// for size_t
6 #include <vector>// for vector
7 
8 
10 public:
11  SensorInterpreter() = default;
12 
13  // The temperature bounds and t_eq / eff_energy parameters cannot be set in the constructor
14  // as they are contingent on other aspects of the model and cannot be set until the model is ready
15  // to start the simulation
16  void setBounds(double lb, double ub) noexcept {// NOLINT
17  lb_ = lb;
18  ub_ = ub;
19  }
20  void setParams(double t_eq, double eff_energy) noexcept;
21  [[nodiscard]] SensorMeasurements scaleHeatParams(const Sensor& sensor) const noexcept;
22  [[nodiscard]] double getFinalTemp(const Sensor& sensor, std::size_t start_step) const noexcept;
23  [[nodiscard]] std::vector<double> getFinalTemps(const Sensor& sensor) const noexcept;// For transient simulations
24 
25 private:
26  double ub_;// Adjusted in the Model class based on the emitting max emitting surface temperature
27  double lb_;// Same here but min emitting surface temperature
28  double t_eq_;// Adjusted in the Model class
29  double eff_energy_;// Adjusted in the Model class once the effective energy is calculated
30 
31  [[nodiscard]] std::vector<double> findTemperature(const Sensor& sensor, std::size_t start_step = 0) const noexcept;
32 };
33 
34 
35 #endif// PSIM_SENSORINTERPRETER_H
Definition: sensorInterpreter.h:9
void setBounds(double lb, double ub) noexcept
Definition: sensorInterpreter.h:16
SensorMeasurements scaleHeatParams(const Sensor &sensor) const noexcept
Definition: sensorInterpreter.cpp:25
SensorInterpreter()=default
double getFinalTemp(const Sensor &sensor, std::size_t start_step) const noexcept
Definition: sensorInterpreter.cpp:80
std::vector< double > getFinalTemps(const Sensor &sensor) const noexcept
Definition: sensorInterpreter.cpp:88
void setParams(double t_eq, double eff_energy) noexcept
Definition: sensorInterpreter.cpp:20
Definition: sensor.h:14
Definition: sensor.h:81