【问题标题】:How can I calculate the Weber Number with PhysX data?如何使用 PhysX 数据计算韦伯数?
【发布时间】:2015-02-08 15:12:02
【问题描述】:

我正在开发一个使用 PhysX 作为底层物理解算器(使用它的 SPH 模拟)的非真实水渲染演示,并希望添加泡沫和水滴渲染以增强其视觉效果。

首先我使用相邻粒子的数量作为阈值将它们分成组(水、泡沫和液滴),并以不同的方式渲染每个组,但阅读一些研究论文我得出的结论是,使用更多基于物理的方法会更好,因此输入韦伯数。

以下参数用于获取韦伯数,都与某个粒子或整个流体有关:

  • 密度
  • 相对速度(相对于周围空气)
  • 特征长度
  • 表面张力

密度和相对速度由 PhysX 提供,我已经得到了。虽然密度是一个浮点值,但速度是一个包含 3 个浮点值的向量,一个用于 3D 空间的每个轴(x、y 和 z)。没有提供特征长度和表面张力,很难(或者如果提供了我不知道如何获得它们)。

所以,我的问题是:

  • 我相信韦伯数必须是一个浮点值,因此我可以将其用作将粒子分成组的阈值。这里的第一个问题是,要获得它,我需要使用 PhysX 提供的相对速度,它是一个具有 3 个浮点值的向量。如何获取该向量的单个浮点值,以便在给出韦伯数的方程式中使用它?
  • 阅读了一些研究论文(特别是this one,在第 3.2.1 节中),我决定对粒子特征长度和表面张力使用固定值。问题是,我应该使用哪些值,假设这些值有理想值,我怎样才能得到这些理想值?

【问题讨论】:

    标签: c++ physics game-physics physx


    【解决方案1】:

    在对您的应用了解不多的情况下,通常会使用 Weber 等无量纲数字将系统分类为低价值或高价值制度。对于这些应用程序,确切的值并不重要。关键是,高值表明情况与低值情况有质的不同。当然,当数字介于两者之间时,这会成为问题,即。围绕团结。 对系统进行分类的好处是,它允许您进行近似,这通常会简化所涉及的公式等事情。

    由于您似乎只使用韦伯的数字进行分类,我认为这也与您有关。

    因此,要从物理背景回答您的问题,特别是考虑到您在这里的目标不是现实主义,使用近似值对情况进行分类以简化计算似乎很好地利用了韦伯(可能还有其他)等无量纲数)。

    • 对于速度,您可以使用矢量的绝对值。
    • 对于特征长度,您可能应该使用液滴/泡沫大小,因为这似乎是模型中唯一的长度度量。

    特别是,我不会太担心“理想价值”。近似值对大/小值有效(取决于所需的精度/真实性,例如 >~10 和

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-23
      • 1970-01-01
      • 2023-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-29
      相关资源
      最近更新 更多