feat(thermal): certify shell geometry and local heat operators
This commit is contained in:
@@ -13,21 +13,25 @@ struct ThermalTimeFrame {
|
||||
double delta;
|
||||
};
|
||||
|
||||
/// @brief Stores an O(1) fixed-increment grid with exact input-cell endpoint tests.
|
||||
/// @brief Stores an O(1) fixed-increment grid with exact input-cell endpoint
|
||||
/// tests.
|
||||
class ThermalTimeGrid final {
|
||||
public:
|
||||
/// @brief Checks finite positive controls and the uint32 INC bound before use.
|
||||
/// @brief Checks finite positive controls and the uint32 INC bound before
|
||||
/// use.
|
||||
static Result<ThermalTimeGrid> Create(double period, double increment,
|
||||
std::uint32_t maximum = 100U);
|
||||
std::uint32_t maximum = 100U);
|
||||
/// @brief Returns the number of completed increments, excluding initial time.
|
||||
std::uint32_t Count() const noexcept;
|
||||
/// @brief Returns fl(index * nominal increment), or the exact final input time.
|
||||
/// @brief Returns fl(index * nominal increment), or the exact final input
|
||||
/// time.
|
||||
/// @pre index is in [0, Count()].
|
||||
double Time(std::uint32_t index) const noexcept;
|
||||
/// @brief Returns the actual coefficient, never a difference of stored times.
|
||||
/// @pre index is in [1, Count()].
|
||||
double Delta(std::uint32_t index) const noexcept;
|
||||
/// @brief Checks index, finite values and strict increase for one frame in O(1).
|
||||
/// @brief Checks index, finite values and strict increase for one frame in
|
||||
/// O(1).
|
||||
Result<ThermalTimeFrame> Frame(std::uint32_t index) const;
|
||||
|
||||
private:
|
||||
|
||||
Reference in New Issue
Block a user