问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

请问怎么用MATLAB推导浮力公式?

发布网友 发布时间:2024-04-09 22:34

我来回答

1个回答

热心网友 时间:2024-11-30 18:07

参考代码(公式推导过程也以注释的形式写在代码中了):

% 1)导出h和r、s之间的关系式;
% 设浮球半径为r,浸入水中的深度h,则水面处的浮球截面半径为
%    R = sqrt( r^2 - (r-h)^2 ) = sqrt( 2*r*h - h^2 )
% 则浸入水中那部分浮球的体积为
%    V = int(pi*R^2, h, 0, h) = PI * h^2 * (r-h/3)
% 整个球的体积为
%    V1 = int(pi*R^2, h, 0, 2*r) = 4/3 * PI * r^3
% 所以方程为
%    h^3 / 3 - r*h^2 + 4/3 * r^3 * s = 0
% 推导完毕。下面是推导公式时用到的代码:
syms r h real;
R=sqrt(2*r*h-h^2);
V = int(pi*R^2, h, 0, h)
V1 = int(pi*R^2, h, 0, 2*r)

% 2)程序要求能处理0<s<1范围内的所有值,按照防错程序设计机制,
%    程序要测试输入值s<0和s>0的情况,在程序中要解一个关于h三
%    次多项式方程,要求所编的函数能识别出正确的根;
prompt = {'浮球半径 r', '比重 s'};
a = inputdlg(prompt, '输入参数', 1, {'10' '0.6'});
if ~isempty(a)
    r = str2num(a{1});
    s = str2num(a{2});
    if s<0 || s>1 || r<=0
        msg = '输入超出合理范围(比重应在0-1之间,半径应为正)';
        errordlg(msg, '输入有误');
    else
        % 解方程,并去除不合理根(复数、负数或超出浮球直径)
        h = roots([1/3 -r 0 4/3*r^3*s]);
        h = h( imag(h) <= eps );
        h = h( h>0 & h<2*r );
        % 输出结果
        info = sprintf('浮球浸入水中的深度 h = %.4g', h);
        msgbox( info, '结果');
    end
end

% 3)画出h~s的函数关系图。
% 方程两端同除以r^3,则可改写为
%    1/3 * (h/R)^3 - (h/R)^2 + 4/3 * s = 0
% 以s为横坐标,h/r为纵坐标,则可以使用ezplot函数绘图:
ezplot('1/3*y^3-y^2+4/3*x',[0 1],[0 2])
xlabel('比重s')
ylabel('入水深度与浮球半径之比 h/R')
title('1/3 (h/R)^3 - (h/R)^2 + 4/3 s = 0')

 

 h~s的函数关系图:

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
RDL是什么意思 报税软件是什么意思 某公司的财务报表管理软件属于 报表系统指的是什么? 怎么玩真三最好?我是新手选什么英雄最好? 真三新手玩什么英雄好? 最近玩魔兽真三,想请问一下高手,初期用什么英雄最好,新手攻略 新手玩真三选什么英雄好啊 ...离泡还有一段距离的地方好几片红,红的地方又疼又痒的,怎么办... 眼角出了好多小水疱.医生说是疱疹.怎么办 如何辨别硬质煤和软质煤?在相同分量下,他们哪种燃烧时间长? 秸秆煤炭和普通煤炭燃烧时间谁更长一些? 什么样的煤耐练?能燃烧的久 精益生产管理升级为企业能带来哪些收益? 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信... ...号在最近24小时内已绑定过3个,已达到限制? 改了后悔了怎么改回来? win10双击psd文件不能打开是怎么回事? 为什么双击无法打开文件夹 如何解决Win10系统鼠标双击打不开文件问题? ...号在最近24小时内绑定过三个,已达到限制,...24小时后可以再次... 我用一个手机号登录了两个现在只能登一个哪个登不上怎么办? 改错了未满一年怎么改回来 同一个手机号注册了两个微信,第一登不上了怎么办? 改错了怎么改回来? 不小心修改了该怎么改回来? 同一个手机号注册了两个微信,第一登不上了怎么办? 学习喷绘后期制作! 广告设计和影楼后期制做哪个更有前途 ...号在最近24小时内绑定过三个,已达到限制,...24小时后可以再次... 在matlab中如何实现简单的公式推导? 可不可以用matlab推导数学公式 富可视的打印机能用的住吗? 电信卡欠费产出带纳金可以跨省营业厅交吗 ...在异地营业厅缴费么,或者是买充值卡充值(手机欠费发不出信该怎么用... 苹果勇者大冒险怎么进不去 勇者大冒险忘记登录密码和用户名怎么办 怎么办?勇者大冒险进不去 已经更新了,但是一登录就一直显示这个 重新... 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信... 四百一十几分能上广西师范大学漓江学院汉语言文学专业 怎样才能把全民K歌搬到抖音直播间里? 怎么让洗衣机放水呢? JVC GR-D73的DV怎么把磁带的视频传到电脑啊 走失的歌词是什么? ...百万”、8个“千”和8个“十”组成,这个数写作___,约是___万... 鼠标速度怎么调? 开机显示终止代码CRITICAL- PROCESS- DIED怎么办? 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信... 外出旅游乘飞机时需要注意什么? 宠物可以托运吗,需要注意什么?