24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 4675  |  回复: 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的回帖

w136851258

铁杆木虫 (正式写手)

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

发自小木虫Android客户端
4楼2018-02-16 15:01:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

深渊明宇

新虫 (小有名气)

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

hechunlei

至尊木虫 (知名作家)

胡萝卜青椒

胡萝卜青椒
3楼2018-02-16 10:25:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
5楼2018-04-16 11:37:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿北京工业大学,324分求调剂 +4 零八# 2026-03-28 4/200 2026-03-28 15:01 by 17865157980
[考研] 求调剂 +3 QiMing7 2026-03-25 4/200 2026-03-28 14:30 by QiMing7
[考研] 349求调剂 +6 杰斯塔里斯 2026-03-21 6/300 2026-03-28 13:12 by 唐沐儿
[考研] 材料求调剂一志愿哈工大324 +7 闫旭东 2026-03-28 9/450 2026-03-28 08:51 by Xu de nuo
[考研] 311求调剂 +3 希望上岸阿小杨 2026-03-23 3/150 2026-03-28 07:57 by 热情沙漠
[考研] 291求调剂 +7 孅華 2026-03-22 7/350 2026-03-28 04:02 by fmesaito
[考研] 269专硕求调剂 +10 金恩贝 2026-03-21 10/500 2026-03-27 15:10 by caszguilin
[考研] 复试调剂,一志愿南农083200食品科学与工程 +5 XQTJZ 2026-03-26 5/250 2026-03-27 14:49 by 狂炫麦当当
[考研] 315调剂 +4 0860求调剂 2026-03-26 5/250 2026-03-27 11:23 by wangjy2002
[考研] 一志愿吉大071010,316分求调剂 +3 xgbiknn 2026-03-27 3/150 2026-03-27 10:36 by guoweigw
[考研] 求调剂323材料与化工 +7 1124361 2026-03-24 7/350 2026-03-27 10:22 by wangjy2002
[考研] 284求调剂 +11 junqihahaha 2026-03-26 12/600 2026-03-27 04:37 by wxiongid
[考研] 325求调剂 +5 李嘉图·S·路 2026-03-23 5/250 2026-03-27 00:42 by wxiongid
[考研] 【双一流院校新能源、环境材料,材料加工与模拟招收大量调剂】 +4 Higraduate 2026-03-22 8/400 2026-03-26 20:34 by Higraduate
[考研] 材料与化工304求B区调剂 +3 邱gl 2026-03-26 6/300 2026-03-26 18:03 by 邱gl
[考研] 材料科学与工程 317求调剂 +4 JKSOIID 2026-03-26 4/200 2026-03-26 15:58 by 不吃魚的貓
[考研] 282求调剂 +3 wcq131415 2026-03-24 3/150 2026-03-25 12:16 by userper
[考研] 293求调剂 +7 加一一九 2026-03-24 7/350 2026-03-25 12:02 by userper
[考研] 一志愿山东大学药学学硕求调剂 +3 开开心心没烦恼 2026-03-23 4/200 2026-03-24 00:06 by 开开心心没烦恼
[考研] 384求调剂 +3 子系博 2026-03-22 6/300 2026-03-23 21:45 by 子系博
信息提示
请填处理意见