24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 4674  |  回复: 4

深渊明宇

新虫 (小有名气)

[求助] 求助matlab程序计算速度过慢的原因

程序代码如下
function [length]=contactlength(x0)
if x0>50||x0<-50
    'error:数据超出尺寸范围'
else
    syms x
    R=300;%非球面顶点曲率半径
    c=1/R;
    delta=0.1;
    k=-3.3;%非球面参数
    rb=27;%半径
    y=(-1*c*x.^2)./(1+sqrt(1-(1+k)*(c^2)*x.^2));
    dy=diff(y);
    dy2=diff(y,2);
    dyx0=subs(dy,x0);
    dy2x0=subs(dy2,x0);
    r0=(1+dyx0^2)^(3/2)/(abs(dy2x0))%曲率半径
    y0=(-1*c*x0^2)./(1+sqrt(1-(1+k)*(c^2)*x0^2));%非球面接触点y坐标
   if x0==0
      xb=x0;
      yb=y0+rb-delta;
      ob=[xb,yb]%圆心二维坐标
   else
      xb=x0+(rb-delta)/sqrt(1+1/dyx0^2);
      yb=y0+(-1/dyx0)*(rb-delta)/sqrt(1+1/dyx0^2);
      ob=[xb,yb]%圆心二维坐标
   end
    syms x2 y2
    ezplot((x2-xb)^2+(y2-yb)^2==rb^2,[-50 50 -10 70])
    axis equal;
    hold on;
    ezplot(y2==(-1*c*x2^2)/(1+sqrt(1-(1+k)*(c^2)*x2^2)),[-50 50 -10 70])
    s=solve(y2==(-1*c*x2^2)./(1+sqrt(1-(1+k)*(c^2)*x2^2)),...
            (x2-xb)^2+(y2-yb)^2==rb^2,x2,y2);
    X=double(s.x2);
    Y=double(s.y2);
    X=X(~logical(imag(X)));
    length=max(X)-min(X)
end
在实际运算过程中,要100多秒才能算出结果,请问是哪里有问题呢?我该怎么改程序?
本人新手,接触matlab不久,希望大神们多多指导
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

深渊明宇

新虫 (小有名气)

2楼2018-01-23 19:17:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hechunlei

至尊木虫 (知名作家)

胡萝卜青椒

胡萝卜青椒
3楼2018-02-16 10:25:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

w136851258

铁杆木虫 (正式写手)

可以考虑使用tic toc,查看具体哪一段代码耗时过长,针对性优化

发自小木虫Android客户端
4楼2018-02-16 15:01:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
5楼2018-04-16 11:37:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 深渊明宇 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 311求调剂 +4 冬十三 2026-03-24 4/200 2026-03-28 13:17 by 唐沐儿
[考研] 求调剂 +6 芦lty 2026-03-25 7/350 2026-03-28 13:13 by 唐沐儿
[考研] 0703一志愿9,初试成绩:338,四六级已过,有科研经历,求调剂! +4 Zuhui0306 2026-03-25 4/200 2026-03-28 13:07 by 唐沐儿
[考研] 265求调剂 +8 小木虫085600 2026-03-27 8/400 2026-03-27 22:16 by 无际的草原
[考研] 322求调剂 +4 我真的很想学习 2026-03-23 4/200 2026-03-27 13:51 by 杨杨杨紫
[考研] 324求调剂 +5 hanamiko 2026-03-26 5/250 2026-03-27 10:33 by wangjy2002
[考研] 材料调剂 +8 匹克i 2026-03-23 8/400 2026-03-27 08:11 by hypershenger
[考研] 081200-11408-276学硕求调剂 +3 崔wj 2026-03-26 3/150 2026-03-27 07:58 by chemisry
[考研] 325求调剂 +5 李嘉图·S·路 2026-03-23 5/250 2026-03-27 00:42 by wxiongid
[考研] 336材料求调剂 +7 陈滢莹 2026-03-26 9/450 2026-03-27 00:20 by wxiongid
[考研] 071000生物学求调剂,初试成绩343 +6 小小甜面团 2026-03-25 6/300 2026-03-26 23:01 by 不吃魚的貓
[考研] 349求调剂 +4 李木子啊哈哈 2026-03-25 4/200 2026-03-26 22:49 by fmesaito
[考研] 求调剂 +8 Auroracx 2026-03-22 8/400 2026-03-26 19:55 by 不吃魚的貓
[考研] 材料考研求调剂 +3 Dendel 2026-03-23 6/300 2026-03-26 17:51 by fmesaito
[考研] 【2026考研调剂】制药工程 284分 求相关专业调剂名额 +4 袁奂奂 2026-03-25 8/400 2026-03-25 14:32 by lbsjt
[考研] 285求调剂 +3 AZMK 2026-03-24 3/150 2026-03-25 12:23 by userper
[有机交流] 有机合成求助 20+3 FENGSHUJEI 2026-03-23 5/250 2026-03-24 19:31 by 88817753
[考博] 26申博自荐 +3 whh869393 2026-03-24 3/150 2026-03-24 09:55 by 21018060
[论文投稿] 急发核心期刊论文 +3 贤达问津 2026-03-23 5/250 2026-03-23 17:13 by 妹子不好惹
[考研] 293求调剂 +3 涛涛Wjt 2026-03-22 5/250 2026-03-22 22:21 by jiangpengfei
信息提示
请填处理意见