Fluids —— Whitewater (SOP)

文章详细介绍了基于SOP的工作流程,如何通过WhitewaterSource、Whitewatersolver等节点生成、控制白水效果,包括粒子生成、老化、死亡机制,以及风、泡沫侵蚀、排斥粒子和后处理技术。

目录

 Whitewater Lifecycle

Workflow

Whitewater source

Deformation sources

Visualizing whitewater

Whitewater solver

Wind

Foam erosion

Repellants

Whitewater postprocess


        基于SOP的白水是对SOP FLIP工作流的增强;该系统与规模无关,无需考虑粒子数即可控制白水的物理量;可在低精度下控制好设置,在使用在高精度上;此系统支持foam, spray, 及bubbles的同步创建;

 Whitewater Lifecycle

        解算器负责生成新的白水粒子,使用由Whitewater Source生成的emit来确定发射量;粒子的老化与死亡也由解算器处理,根据当前条件,动态计算死亡;确定死亡几率时,会考虑以下因素:

  • age,更老的粒子更易死亡;
  • depth,深度的变化,死亡几率也会变化;
  • density,开启erosion,密度也会增加死亡几率;

高级用户可访问点属性deathchance

注,忽略其他因素,Lifespan是平均寿命;

Workflow

可使用Whitewater Configure,将创建4个节点以生成白水,可作为起点;

  • Whitewater Source,生成白水的emit场;
  • Whitewater Solver,白水设置且解算;
  • Whitewater Post-process,为渲染做准备;

FLIP Configure Beach Tank

Whitewater source

有多种不同方式来发生白水粒子

  • Curvature,使用粒子速度和表面法线间的角度,确保白水在浪尖;
  • Acceleration,基于流体速度的变化,可检测粒子重新加入流体的区域;
  • Vortcity,速度体积内的旋转强度,以确定流体的搅动区域(通常在表面更深的区域发生),如波浪崩开;
  • Pressure,基于压力梯度与surface梯度间的对齐,如两矢量方向相反则没有粒子发射;但一旦波浪冲击,方向将相同,则发射粒子;
  • Splash,直接作用于点并使用相对密度;
     

Deformation sources

另一方法是基于变形的发射,此方法用于识别流体表面的挤压Squish、拉伸Stretch、及缩放;

  • Squish,发射于表面被压缩的区域;
  • Stretch,发射于表面被扩展的区域;
  • Scale,基于在所有方向的压缩或扩展;

Visualizing whitewater

        Visualization标签可显示激活的不同发射类型,Curvature (red), Acceleration (green) 及 Deformation (blue);

Tips

  • 该节点默认会输出emitsurface, 及 vel,也可只emit以节省空间(关闭Output Fluid Fields);
  • 可开启Extra Sources,连入第四个端口,以将这些点转化为发射体积;
  • 如白水太少或太多,通常更好的方法是查看FLIP模拟;

Whitewater solver

有多种方式控制白水量,以下是一些最常用的方法;

  • Whitewater Scale,控制白水粒子间的间隔,降低参数会增加粒子量,如左600,000,右75,000;
     
  • Emission Amount, 发射白水量的简单倍增,如左600,000,右300,000;
     

Wind

         wind仅影响spray粒子,当粒子从表面升起时,将被wind影响,也有Wind Shadow使spray更加真实;其中Collider Shadow可使用碰撞体阻挡风影响,Water Shadow使用surface(如波浪)阻挡风影响;

如,spray黄,foam蓝,bubbles紫;

Foam erosion

        会在密度大的区域保留foam,在稀疏的区域侵蚀;这一功能是非常有用的,大量白水被发射时,开始是没有细节的大白块,增加侵蚀会使粒子更快的消失,并形成更多的洞;

 

注,可开启Visualization/Relative Density以查看;

Repellants

        创建并维持排斥粒子,将白水排斥开并形成蜂窝状泡沫结构,以下红色点表示;Repellant的半径和noise有许多变化,以使外观更有机;

Whitewater postprocess

为渲染做准备,可输出ParticlesFog Volume(沿速度场)、Mesh

  • Particles,默认输出,可获得大量细节,如海浪撞击岩石;
     
  • Fog Volume,对光穿过白水并被吸收有用;
     
  • Mesh,可在泡沫和没有泡沫间定义边有用;
     

Tips,如使用Domain/Flatten Outside Bounding Box选项,将白水粒子展平到水平面;对与整个海洋模拟融合时,很有用;可避免白水看起来像漂浮在surface上;

基于数据驱动的 Koopman 算子的递归神经网络模型线性化,用于纳米定位系统的预测控制研究(Matlab代码实现)内容概要:本文围绕“基于数据驱动的Koopman算子的递归神经网络模型线性化”展开,旨在研究纳米定位系统的预测控制问题,并提供完整的Matlab代码实现。文章结合数据驱动方法与Koopman算子理论,利用递归神经网络(RNN)对非线性系统进行建模与线性化处理,从而提升纳米级定位系统的精度与动态响应性能。该方法通过提取系统隐含动态特征,构建近似线性模型,便于后续模型预测控制(MPC)的设计与优化,适用于高精度自动化控制场景。文中还展示了相关实验验证与仿真结果,证明了该方法的有效性和先进性。; 适合人群:具备一定控制理论基础和Matlab编程能力,从事精密控制、智能制造、自动化或相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于纳米级精密定位系统(如原子力显微镜、半导体制造设备)中的高性能控制设计;②为非线性系统建模与线性化提供一种结合深度学习与现代控制理论的新思路;③帮助读者掌握Koopman算子、RNN建模与模型预测控制的综合应用。; 阅读建议:建议读者结合提供的Matlab代码逐段理解算法实现流程,重点关注数据预处理、RNN结构设计、Koopman观测矩阵构建及MPC控制器集成等关键环节,并可通过更换实际系统数据进行迁移验证,深化对方法泛化能力的理解。
内容概要:本文介绍了福建亘川科技有限公司及其研发的“亘川管网降雨量智能监测系统”。该公司专注于智慧水务领域,融合物联网、大数据、云计算和人工智能技术,打造了覆盖“水库、水厂、管网、泵站、排口、河湖”的“六位一体”智慧水务监测运维系统。该降雨量监测系统采用高精度传感器,支持总降雨量、瞬时降雨量和24小时累积雨量的实时监测,具备多维度数据采集、联动预警、太阳能绿色供电和4G稳定通信等功能,广泛应用于城市内涝、山洪、水库及边坡等灾害预警场景。系统依托“亘川智慧云”平台,实现远程数据监控、历史数据查询、多设备接入和自动报警,提升城市排水管理智能化水平。; 适合人群:从事智慧水务、城市防汛、环境监测等相关领域的技术人员、市政管理人员及系统集成商;具备一定物联网或水务行业背景的专业人员。; 使用场景及目标:①用于城市合流管网区域的降雨实时监测,评估排水能力,预防内涝;②在山洪、水库、边坡等场景中实现灾害早期预警;③通过云端平台实现多设备统一管理与数据可视化分析,提升运维效率。; 阅读建议:本资料侧重系统功能与应用场景介绍,建议结合实际项目需求,进一步了解设备参数、平台接口及定制化服务能力,以便更好地应用于智慧城市建设与应急管理中。
### Simscape Fluids 使用教程及相关文档 Simscape Fluids 是 MATLAB Simulink 中的一个工具包,用于建模和仿真流体动力学系统。其前身是 SimHydraulics[^3],现在已扩展支持更广泛的流体应用领域。 #### 1. 官方资源与入门指南 MathWorks 提供了详细的官方文档来帮助用户快速上手 Simscape Fluids。以下是几个重要的参考资料: - **产品页面**: 可通过链接访问 Simscape Fluids 的概述、功能列表及其与其他 Simscape 工具的关系。 - **Getting Started Guide**: 这是一个面向初学者的指导手册,涵盖了安装、基本操作以及如何构建简单的液压模型[^1]。 #### 2. 模块库结构 Simscape Fluids 的模块主要分布在 SIMULINK 浏览器中的 `Simscape_Foundation` 和 `Simscape_Fluids` 文件夹下。具体来说: - **Legacy Isothermal Library**: 包含传统的等温流动元件,例如阀门、泵和管道[^2]。 - **Thermal Liquid Library**: 支持热效应分析,适用于需要考虑温度变化的应用场景。 #### 3. 阀门控制实例解析 以三位置阀为例,该组件的行为可以通过输入信号动态调整。当输入信号超过设定阈值(通常为标称信号的50%),推杆会经历一系列预定义阶段完成伸展动作[^4]。这些阶段包括延迟期 (`tde`)、加速期 (`tae`) 和匀速运动期 (`tve`)。同样地,在收回过程中也会重复类似的逻辑,只是方向相反。 #### 4. 单作用气缸案例研究 另一个典型例子涉及带三通阀的单作用气缸设计。此设置利用两个阀门执行器配合一个三通换向阀实现精确的方向切换。初始状态下,气体通道 A 被导向至储液罐;一旦接收到高于临界值 (如12单位) 的外部指令后,内部核心件位移重新分配各端口连通关系从而推动负载前进[^5]。 ```matlab % 创建一个新的Simulink模型并加载必要的库 new_system('MyFluidModel'); add_block('simscape/Fluids/Foundation Hydraulics','MyFluidModel/Hydraulic Components'); % 添加特定部件比如Pressure Source, Chamber etc. add_block('simscape/Fluids/Legacy Isothermal Library/Pumps and Motors/Constant Pressure Source',... 'MyFluidModel/PressureSource'); ``` 上述脚本展示了如何程序化创建包含基础液压组件的新项目框架。 #### 5. 性能优化建议 为了提高仿真的效率和准确性,请注意以下几点: - 合理选择求解算法,默认推荐使用变步长ODE solver。 - 对复杂网络适当简化或者分层处理减少计算负担。 - 利用参数估计工具校准实际物理特性匹配理论假设条件下的表现差异。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值