Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. OpenFOAM
  3. 请问OF7中如何得到拉格朗日粒子轨迹

请问OF7中如何得到拉格朗日粒子轨迹

已定时 已固定 已锁定 已移动 OpenFOAM
15 帖子 4 发布者 12.1k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 疏影横斜水清浅疏 离线
    疏影横斜水清浅疏 离线
    疏影横斜水清浅
    写于 最后由 编辑
    #1

    6c2b68df-8e4d-4751-9566-8dfc3a7c9105-image.png
    请问各位大佬,在of7中,拉格朗日场的粒子位置信息输出是这种,其中括号里的不是笛卡尔坐标系的位置坐标,那应该怎么得到粒子的位置坐标呢,使用什么函数或者怎么去编写代码?

    T 1 条回复 最后回复
  • T 离线
    T 离线
    Tens 神
    在 中回复了 疏影横斜水清浅 最后由 编辑
    #2

    @疏影横斜水清浅 参考下面帖子
    拉格朗日一个bug
    可以用这个后处理程序改成笛卡尔坐标
    https://github.com/blueCFD/lagrangianExtraFunctionObjects/tree/OF5x

    T 1 条回复 最后回复
  • T 离线
    T 离线
    Tens 神
    在 中回复了 Tens 最后由 编辑
    #3

    @Tens 或者用foamToEnsight -ascii转化格式,这样也能得到笛卡尔坐标系下的坐标

    李东岳李 1 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    在 中回复了 Tens 最后由 编辑
    #4

    @Tens

    foamToEnsight -ascii

    厉害啊,这个就是单纯的转化为笛卡尔的坐标么?其他的文件有无影响

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    T 1 条回复 最后回复
  • T 离线
    T 离线
    Tens 神
    在 中回复了 李东岳 最后由 编辑
    #5

    @李东岳
    这个就是把数据转化成Ensight格式,其他文件应该没有影响的,只不过其中恰好有个文件是存储颗粒笛卡尔坐标的,比如我用sprayCloud就是这样,有点取巧了
    adac3b68-8ee7-4bef-a83b-7a87e3e28f9a-image.png
    6d4c589d-5a18-409a-96ad-c732521ddf29-image.png

    李东岳李 D 2 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    在 中回复了 Tens 最后由 编辑
    #6

    @Tens 厉害啊。感谢分享!!!:146: :146: :146:

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    1 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    写于 最后由 编辑
    #7

    我看了一下ensightParticlePositions.C的源代码,里面有const vector& p = elmnt().position();,是不是目前position()就是粒子矢量了?我暂时没空细看了,先出去玩了,复活节。回头看看 @Tens 大佬感兴趣可以看看

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    T 1 条回复 最后回复
  • T 离线
    T 离线
    Tens 神
    在 中回复了 李东岳 最后由 编辑
    #8

    @李东岳 我刚测试了下,看着好像是这样的
    在sprayFoam里添加:

    Info<<"coordinate:"<<endl;
    forAllIter(typename basicSprayCloud::sprayCloudType,parcels,pIter)
    {
        Info<<pIter().position()<<endl;
    }
    

    输出的结果就有
    e5a48552-78c8-4d17-9772-2d8a84647433-image.png

    然后我看上面那个后处理程序好像也是这样调用的

    if (os.format() == IOstream::ASCII)
        {
            forAllConstIter(typename CloudType, cloud_, iter)
            {
                os  << iter().position() << " " << iter().cell()
                    << nl;
            }
        }
    
    疏影横斜水清浅疏 2 条回复 最后回复
  • 疏影横斜水清浅疏 离线
    疏影横斜水清浅疏 离线
    疏影横斜水清浅
    在 中回复了 Tens 最后由 编辑
    #9

    @Tens 好的,谢谢老师们,position()函数还存在,就是颗粒的位置坐标(笛卡尔坐标),我也是暂时通过这个输出的,其他的办法暂时没找到呢

    1 条回复 最后回复
  • 疏影横斜水清浅疏 离线
    疏影横斜水清浅疏 离线
    疏影横斜水清浅
    在 中回复了 Tens 最后由 编辑
    #10

    @李东岳 @Tens 69373d29-4d11-4ebc-a5ad-5f62e2c39a51-ff17d232d3d0d591e22da52c9e37957.png
    在log文件中把位置信息提取出来,画图

    1 条回复 最后回复
  • T Tens 被引用 于这个主题
  • D 离线
    D 离线
    dxl
    在 中回复了 Tens 最后由 编辑
    #11

    @Tens 请问这一步转换之后怎么在paraview中显示呢

    T 1 条回复 最后回复
  • T 离线
    T 离线
    Tens 神
    在 中回复了 dxl 最后由 编辑
    #12

    @dxl 在paraview里打开Ensight文件夹中的case文件

    D 1 条回复 最后回复
  • D 离线
    D 离线
    dxl
    在 中回复了 Tens 最后由 编辑
    #13

    @Tens 了解了谢谢您,还有个问题我看这个格式导进去之后不能对显示了哪些面和网格进行选择,这样一个内部旋转面就会一直显示有点影响效果,请问这个有办法解决吗

    T 1 条回复 最后回复
  • T 离线
    T 离线
    Tens 神
    在 中回复了 dxl 最后由 编辑
    #14

    @dxl Extract Block 提取出想显示的面就可以了

    D 1 条回复 最后回复
  • D 离线
    D 离线
    dxl
    在 中回复了 Tens 最后由 编辑
    #15

    @Tens 好的!谢谢您!

    1 条回复 最后回复
  • 李东岳李 李东岳 被引用 于这个主题

  • 登录

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]