热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[实验流体力学][Matlab]船模阻力实验

例1%C_total_modelR_total_model(12*rho_model*S_model*V_model^2)%式中:%C_total_model船

例1

% C_total_model = R_total_model/(1/2*rho_model*S_model*V_model^2)
% 式中:
% C_total_model 船模总阻力系数
% R_total_model 船模阻力 N
% rho_model 实验水池中的水的密度 kg*m^(-3)
% S_model 船模湿面积 m^2
% V_model 船模速度 m*s^(-1)% C_friction_model = 0.075/(lg(Re_model)-2)^2
% 式中:
% C_friction_model 船模摩擦阻力系数
% Re_model = V_model*L_model/mu_model 船模雷诺数
% L_model 船模水线长 m
% mu_model 实验水池中的水的运动粘性系数 可从水温表查得% C_rest_model = C_total_model-C_friction_model
% 式中:
% C_rm 船模的剩余阻力系数
% C_total_model 船模总阻力系数
% C_friction_model 船模摩擦阻力系数% Fr = V^2/(g*L) 佛鲁德数
% 根据相似定律 Fr_ruler = Fr_model/Fr_simulation
% => V_simulation = V_model*lambda^(1/2)
% 式中:
% lambda = L_simulation/L_model
% 根据相似定律 C_rest_simulation = C_rest_model% C_friction_simulation = 0.075/(lg(Re_simulation-2)^2)
% 式中:
% C_friction_simulation 实船摩擦阻力系数
% Re_simulation = V_simulation*L_simulation/mu_simulation 实船雷诺数
% L_simulation 实船水线长 m
% mu_simulation 实船的水的运动粘性系数 一般取 15℃ 时的值% 通常取实船粗糙度补贴 Delta_C_friction = 0.4*10^(-3)% C_total_simulation = C_rest_model + C_friction_simulation + Delta_C_friction
% 式中:
% C_total_simulation 实船总阻力系数% R_total_simulation =
% 1/2*rho_simulation*S_simulation*V_simulation^2*C_total_simulation N
% 式中:
% R_total_simulation 实船总阻力
% rho_simulation 实船的水的密度 kg*m^(-3) 一般取 15℃ 时的值
% S_simulation 实船湿面积 m^2% P_effective_simulation = P_total_simulation * V_simulation/1000
% 式中:
% P_effective_simulation 有效功率 kW
% P_total_simulation 总功率 W
% V_simulation 实船速度 m*s(-1)clear;% 设计数据% 尺度比
lambda = 50;% 实船水线长 m
L_simulation = 152;% 实船湿面积 m^2
S_simulation = 4075;% 实验数据% 船模速度 m*s^(-1)
V_model = [0.70.80.911.11.21.21.31.41.51.6];% 船模总阻力 N
R_total_model = [0.180420.225040.279630.353030.432090.506930.496870.62380.789141.150751.59732]/0.102;% 查表数据% 船模中水的密度 假设 15℃ kg*m^(-3)
rho_model = 0.9977730e3;% 船模中水的动力粘性系数 m^2*s^(-1)
mu_model = 0.963e-3*rho_model;% 实船中水的密度 假设 20℃ kg*m^(-3)
rho_simulation = 0.9982063e3;
mu_simulation = 1.101e-3*rho_simulation;% 约定的实船粗糙度补贴
Delta_C_friction_simulation = 0.4e-3;% 第一步 计算船模总阻力系数% 船模总阻力系数公式
C_tm_fun = @(R_tm,rho_m,S_m,V_m) R_tm./(1/2*rho_m.*S_m.*V_m.^2);% 缺少参数 S_m 因此计算船模湿面积
S_model = S_simulation/lambda^2;% 计算船模总阻力系数
C_total_model = C_tm_fun(R_total_model,rho_model,S_model,V_model);% 第二步 计算船模摩擦阻力系数% 船模摩擦阻力系数公式
C_fm_fun = @(Re_m) 0.075./(log10(Re_m)-2).^2;% 缺少参数 Re_m 因此由雷诺数公式计算船模雷诺数
Re_m_fun = @(V_m,L_m,mu_m) V_m.*L_m./mu_m;% 缺少参数 L_m 因此由比尺关系计算船模水线长
L_model = L_simulation./lambda;% 计算船模雷诺数
Re_model = Re_m_fun(V_model,L_model,mu_model);% 计算船模摩擦阻力系数
C_friction_model = C_fm_fun(Re_model);% 第三步 计算船模的剩余阻力系数% 船模的剩余阻力系数公式
C_rm_fun = @(C_tm,C_fm) C_tm-C_fm;% 计算船模的剩余阻力系数
C_rest_model = C_rm_fun(C_total_model,C_friction_model);% 第四步 计算实船的相对应速度及实船剩余阻力系数% 由比尺关系得实船速度
V_simulation = V_model.*lambda.^(1/2);% 由比尺关系得实船剩余阻力系数
C_rest_simulation = C_rest_model;% 第五步 计算实船摩擦阻力系数% 实船摩擦阻力系数公式
C_fs_fun = @(Re_s) 0.075./(log10(Re_s)-2).^2;% 缺少参数 Re_m 因此由雷诺数公式计算船模雷诺数
Re_s_fun = @(V_s,L_s,mu_s) V_s.*L_s./mu_s;% 计算船模雷诺数
Re_simulation = Re_s_fun(V_simulation,L_simulation,mu_simulation);% 计算实船摩擦阻力系数
C_friction_simulation = C_fs_fun(Re_simulation);% 第六步 计算实船总阻力系数% 计算实船总阻力系数
C_total_simulation = C_rest_simulation + C_friction_simulation + Delta_C_friction_simulation;% 第七步 计算实船总阻力% 实船总阻力公式
R_ts_fun = @(rho_s,S_s,V_s,C_ts) 1/2.*rho_s.*S_s.*V_s.^2.*C_ts;% 计算实船总阻力
R_total_simulation = R_ts_fun(rho_simulation,S_simulation,V_simulation,C_total_simulation);% 第八步 计算实船总阻力的有效功率% 计算实船总阻力的有效功率
P_effective_simulation = R_total_simulation.*V_simulation*1e-3;% 船模总阻力曲线图
subplot(3,1,1);
plot(V_model,R_total_model);
title("船模总阻力曲线图");
xlabel("V_m(m/s)");
ylabel("R_t_m(N)");% 实船总阻力曲线图
subplot(3,1,2);
plot(V_simulation,R_total_simulation);
title("实船总阻力曲线图");
xlabel("V_s(m/s)");
ylabel("R_t_s(N)");% 实船总阻力的有效功率曲线图
subplot(3,1,3);
plot(V_simulation,P_effective_simulation);
title("实船总阻力的有效功率曲线图");
xlabel("V_s(m/s)");
ylabel("P_e_s(kW)");

在这里插入图片描述


例2

% C_total_model = R_total_model/(1/2*rho_model*S_model*V_model^2)
% 式中:
% C_total_model 船模总阻力系数
% R_total_model 船模阻力 N
% rho_model 实验水池中的水的密度 kg*m^(-3)
% S_model 船模湿面积 m^2
% V_model 船模速度 m*s^(-1)% C_friction_model = 0.075/(lg(Re_model)-2)^2
% 式中:
% C_friction_model 船模摩擦阻力系数
% Re_model = V_model*L_model/mu_model 船模雷诺数
% L_model 船模水线长 m
% mu_model 实验水池中的水的运动粘性系数 可从水温表查得% C_rest_model = C_total_model-C_friction_model
% 式中:
% C_rm 船模的剩余阻力系数
% C_total_model 船模总阻力系数
% C_friction_model 船模摩擦阻力系数% Fr = V^2/(g*L) 佛鲁德数
% 根据相似定律 Fr_ruler = Fr_model/Fr_simulation
% => V_simulation = V_model*lambda^(1/2)
% 式中:
% lambda = L_simulation/L_model
% 根据相似定律 C_rest_simulation = C_rest_model% C_friction_simulation = 0.075/(lg(Re_simulation-2)^2)
% 式中:
% C_friction_simulation 实船摩擦阻力系数
% Re_simulation = V_simulation*L_simulation/mu_simulation 实船雷诺数
% L_simulation 实船水线长 m
% mu_simulation 实船的水的运动粘性系数 一般取 15℃ 时的值% 通常取实船粗糙度补贴 Delta_C_friction = 0.4*10^(-3)% C_total_simulation = C_rest_model + C_friction_simulation + Delta_C_friction
% 式中:
% C_total_simulation 实船总阻力系数% R_total_simulation =
% 1/2*rho_simulation*S_simulation*V_simulation^2*C_total_simulation N
% 式中:
% R_total_simulation 实船总阻力
% rho_simulation 实船的水的密度 kg*m^(-3) 一般取 15℃ 时的值
% S_simulation 实船湿面积 m^2% P_effective_simulation = P_total_simulation * V_simulation/1000
% 式中:
% P_effective_simulation 有效功率 kW
% P_total_simulation 总功率 W
% V_simulation 实船速度 m*s(-1)clear;% -----------------新数据(本题的数据)-----------------% 尺度比
lambda = 50;% 实船水线长 m
L_simulation = 150;% 模型湿面积 m^2
S_model = 1.63;% 实验数据% 船模速度 m*s^(-1)
V_model = 1;% 船模总阻力 N
R_total_model = 3.462;% 查表数据% 船模中淡水的密度 假设 20℃ kg*m^(-3)
rho_model = 0.998e3;% 船模中淡水的运动粘性系数 m^2*s^(-1)
mu_model = 1e-6;% 实船中海水的密度 假设 15℃ kg*m^(-3)
rho_simulation = 1.03e3;% 船模中淡水的运动粘性系数 m^2*s^(-1)
mu_simulation = 1.12e-6;% 约定的实船粗糙度补贴
Delta_C_friction_simulation = 0.4e-3;% -----------------开始计算-----------------% 第一步 计算船模总阻力系数% 船模总阻力系数公式
C_tm_fun = @(R_tm,rho_m,S_m,V_m) R_tm./(1/2*rho_m.*S_m.*V_m.^2);% 如果缺少参数 S_model 使用比尺关系计算船模湿面积
if exist('S_model','var') == 0if exist('S_simulation','var') == 1S_model = S_simulation/lambda^2;elseerror('没有 S_simulation 用于计算 S_model');end
end% 计算船模总阻力系数
C_total_model = C_tm_fun(R_total_model,rho_model,S_model,V_model);% 第二步 计算船模摩擦阻力系数% 船模摩擦阻力系数公式
C_fm_fun = @(Re_m) 0.075./(log10(Re_m)-2).^2;% 缺少参数 Re_m 因此由雷诺数公式计算船模雷诺数
Re_m_fun = @(V_m,L_m,mu_m) rho_model*V_m.*L_m./mu_m;% 缺少参数 L_m 因此由比尺关系计算船模水线长
L_model = L_simulation./lambda;% 计算船模雷诺数
Re_model = Re_m_fun(V_model,L_model,mu_model);% 计算船模摩擦阻力系数
C_friction_model = C_fm_fun(Re_model);% 第三步 计算船模的剩余阻力系数% 船模的剩余阻力系数公式
C_rm_fun = @(C_tm,C_fm) C_tm-C_fm;% 计算船模的剩余阻力系数
C_rest_model = C_rm_fun(C_total_model,C_friction_model);% 第四步 计算实船的相对应速度及实船剩余阻力系数% 由比尺关系得实船速度
V_simulation = V_model.*lambda.^(1/2);% 由比尺关系得实船剩余阻力系数
C_rest_simulation = C_rest_model;% 第五步 计算实船摩擦阻力系数% 实船摩擦阻力系数公式
C_fs_fun = @(Re_s) 0.075./(log10(Re_s)-2).^2;% 缺少参数 Re_m 因此由雷诺数公式计算船模雷诺数
Re_s_fun = @(V_s,L_s,mu_s) rho_simulation*V_s.*L_s./mu_s;% 计算船模雷诺数
Re_simulation = Re_s_fun(V_simulation,L_simulation,mu_simulation);% 计算实船摩擦阻力系数
C_friction_simulation = C_fs_fun(Re_simulation);% 第六步 计算实船总阻力系数% 计算实船总阻力系数
C_total_simulation = C_rest_simulation + C_friction_simulation + Delta_C_friction_simulation;% 第七步 计算实船总阻力% 实船总阻力公式
R_ts_fun = @(rho_s,S_s,V_s,C_ts) 1/2.*rho_s.*S_s.*V_s.^2.*C_ts;% 如果缺少参数 S_model 使用比尺关系计算船模湿面积
if exist('S_simulation','var') == 0if exist('S_model','var') == 1S_simulation = S_model*lambda^2;elseerror('没有 S_model 用于计算 S_simulation');end
end% 计算实船总阻力
R_total_simulation = R_ts_fun(rho_simulation,S_simulation,V_simulation,C_total_simulation);% 第八步 计算实船总阻力的有效功率% 计算实船总阻力的有效功率
P_effective_simulation = R_total_simulation.*V_simulation*1e-3;disp(V_simulation);
disp(R_total_simulation);

推荐阅读
  • 本文详细介绍了Java中org.neo4j.helpers.collection.Iterators.single()方法的功能、使用场景及代码示例,帮助开发者更好地理解和应用该方法。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文介绍了如何使用JQuery实现省市二级联动和表单验证。首先,通过change事件监听用户选择的省份,并动态加载对应的城市列表。其次,详细讲解了使用Validation插件进行表单验证的方法,包括内置规则、自定义规则及实时验证功能。 ... [详细]
  • 本文详细介绍了Java中org.eclipse.ui.forms.widgets.ExpandableComposite类的addExpansionListener()方法,并提供了多个实际代码示例,帮助开发者更好地理解和使用该方法。这些示例来源于多个知名开源项目,具有很高的参考价值。 ... [详细]
  • 解决Element UI中Select组件创建条目为空时报错的问题
    本文介绍如何在Element UI的Select组件中使用allow-create属性创建新条目,并处理创建条目为空时出现的错误。我们将详细说明filterable属性的必要性,以及default-first-option属性的作用。 ... [详细]
  • 基因组浏览器中的Wig格式解析
    本文详细介绍了Wiggle(Wig)格式及其在基因组浏览器中的应用,涵盖variableStep和fixedStep两种主要格式的特点、适用场景及具体使用方法。同时,还提供了关于数据值和自定义参数的补充信息。 ... [详细]
  • 本文介绍了如何通过扩展 UnityGUI 创建自定义和复合控件,以满足特定的用户界面需求。内容涵盖简单和静态复合控件的实现,并展示了如何创建复杂的 RGB 滑块。 ... [详细]
  • 本文详细介绍了中央电视台电影频道的节目预告,并通过专业工具分析了其加载方式,确保用户能够获取最准确的电视节目信息。 ... [详细]
  • 毕业设计:基于机器学习与深度学习的垃圾邮件(短信)分类算法实现
    本文详细介绍了如何使用机器学习和深度学习技术对垃圾邮件和短信进行分类。内容涵盖从数据集介绍、预处理、特征提取到模型训练与评估的完整流程,并提供了具体的代码示例和实验结果。 ... [详细]
  • 本文详细介绍如何在VSCode中配置自定义代码片段,使其具备与IDEA相似的代码生成快捷键功能。通过具体的Java和HTML代码片段示例,展示配置步骤及效果。 ... [详细]
  • 本题要求将由小写字母组成的字符串划分为多个片段,确保每个字母只出现在一个片段中。目标是生成尽可能多的片段,并返回每个片段的长度列表。本文将详细解释问题描述、解题思路及代码实现。 ... [详细]
  • 本文将深入探讨如何在不依赖第三方库的情况下,使用 React 处理表单输入和验证。我们将介绍一种高效且灵活的方法,涵盖表单提交、输入验证及错误处理等关键功能。 ... [详细]
  • 探讨如何从数据库中按分组获取最大N条记录的方法,并分享新年祝福。本文提供多种解决方案,适用于不同数据库系统,如MySQL、Oracle等。 ... [详细]
  • 本文详细介绍如何在Vue项目中通过Element UI组件库实现对输入框占位符(placeholder)值的获取,以及数据绑定和查询的基本方法。文章将涵盖v-model双向绑定、el-form表单配置等核心内容。 ... [详细]
  • 本文介绍了如何使用 Python 的 Matplotlib 和 Pandas 库进行数据可视化。通过示例代码展示了折线图、柱状图和水平柱状图的创建方法,并解释了图表参数设置的具体细节。 ... [详细]
author-avatar
香港冫耐思得
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有