如何在提升单位中定义从另一个派生维度的派生维度

How to define a derived dimension from another derived dimension in Boost Units?

本文关键字:派生 另一个 定义 单位      更新时间:2023-10-16

在我的业务领域,我的值表示为 W.mˆ-2.Kˆ-1。

从"基本尺寸"的角度来看,这些值表示为 kg.sˆ-3.Kˆ-1 (W = kg.mˆ2.sˆ-3)

如何使用升压单元实现此维度和此单元?

我找到的唯一例子,包括官方文档,是关于从基本维度派生维度,但我想从"功率"维度推导出来,它本身就是一个派生维度。

另外,我不知道我是否必须从幂维度派生,或者我是否必须从基本维度派生我的维度设置我的维度单位,例如以 W.mˆ-2.Kˆ-1 表示。我预见到后者会更难操纵(考虑到我的"基础推导"尺寸约为千克和秒,获得瓦数,给定面积和温度并非易事......

谢谢。

您可以使用单位运算符来操作更高级别的维度,然后将它们 typedef 转换为有用的内容。 这些单位运算符在<boost/units/operators.hpp>头文件中可用。

文档中提供了示例,它们用于为此处的物理常数创建高级维度[<boost/units/systems/si/codata/typedefs.hpp>][1]

typedef divide_typeof_helper<frequency,electric_potential>::type frequency_over_electric_potential;
typedef divide_typeof_helper<electric_charge,mass>::type electric_charge_over_mass;
typedef divide_typeof_helper<mass,amount>::type mass_over_amount;

对于您的具体情况:

typedef divide_typeof_helper< power , area >::type power_over_area;
typedef divide_typeof_helper< power_over_area, temperature >::type heat_transfer_coeff;
相关文章: