24小时热门版块排行榜    

查看: 2435  |  回复: 23

sunshine819

金虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★
z65668396: 金币+2, ★★★★★最佳答案 2013-10-19 18:33:12
臭水沟: 金币+2, 谢谢交流~ 2013-10-20 19:00:31
引用回帖:
9楼: Originally posted by z65668396 at 2013-10-19 16:35:19
嗯嗯   谢谢   
麻烦问下  如果用matlab function可以吗?
我的程序输出s 是 v 的函数
在matlab funtion 的设置里输入Ct
这样对吗?...

我一般不这样实现,会影响simulink的运行速度,你既然在外部算出了一组自变量和一组相应地函数值,直接用lookuptable是合理的选择,我看过几个example,mathworks自己一般都这样做,不过不知你具体仿真的什么对象,要依据自己的目的来选择,同样的功能有许多不同的实现方式的
日光之下皆覆辙 月光之下皆旧梦
11楼2013-10-19 16:45:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z65668396

金虫 (正式写手)

引用回帖:
10楼: Originally posted by sp_tried at 2013-10-19 16:35:32
感觉还是不太清楚你的情况.......
如果可以,你把v和计算s的程序给我,我来试试。...

输入v是风速 只要超过11.4就行 我拿正弦弄的  
根据风速  通过我帖子上面的程序  
可以求出s   然后输出就行了
我就是要这个s  我看有文献是用look up table做的
把look up table 换成matlab function   
在matlab function模块里把sin改成我帖子里的M函数 Ct
这样可以吗?
心有猛虎,细嗅蔷薇。
12楼2013-10-19 16:50:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z65668396

金虫 (正式写手)

引用回帖:
11楼: Originally posted by sunshine819 at 2013-10-19 16:45:27
我一般不这样实现,会影响simulink的运行速度,你既然在外部算出了一组自变量和一组相应地函数值,直接用lookuptable是合理的选择,我看过几个example,mathworks自己一般都这样做,不过不知你具体仿真的什么对象, ...

嗯嗯   我看文献里也是用的lookuptable
是不是我先在matlab里用for循环
通过改变v 输出一组对应的 s
然后再lookup table的input和output里 分别用v和s?
心有猛虎,细嗅蔷薇。
13楼2013-10-19 16:55:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sp_tried

铜虫 (初入文坛)

引用回帖:
13楼: Originally posted by z65668396 at 2013-10-19 16:55:40
嗯嗯   我看文献里也是用的lookuptable
是不是我先在matlab里用for循环
通过改变v 输出一组对应的 s
然后再lookup table的input和output里 分别用v和s?...

实际上你之前的问题没说清楚,问题不是lookup table怎么设置,而是对于不同的v怎么求解s。刚用你的程序试了一下,报错了
同意你的说法,用for循环试试。
另外,用function应该没法求解吧,你没有s关于v的函数式
oneforall,andallforone!
14楼2013-10-19 17:04:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sunshine819

金虫 (小有名气)

【答案】应助回帖


臭水沟: 金币+1, 谢谢交流~ 2013-10-20 19:02:02
引用回帖:
13楼: Originally posted by z65668396 at 2013-10-19 16:55:40
嗯嗯   我看文献里也是用的lookuptable
是不是我先在matlab里用for循环
通过改变v 输出一组对应的 s
然后再lookup table的input和output里 分别用v和s?...

大概的意思就是这样,不过你在simulink模型里最好加一个初始化文件,这个文件里面包含你计算出来的数据,这样就不用每次打开的时候都重新生成一遍这两个数据了
日光之下皆覆辙 月光之下皆旧梦
15楼2013-10-19 17:04:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z65668396

金虫 (正式写手)

引用回帖:
15楼: Originally posted by sunshine819 at 2013-10-19 17:04:47
大概的意思就是这样,不过你在simulink模型里最好加一个初始化文件,这个文件里面包含你计算出来的数据,这样就不用每次打开的时候都重新生成一遍这两个数据了...

嗯   好的
心有猛虎,细嗅蔷薇。
16楼2013-10-19 17:08:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z65668396

金虫 (正式写手)

引用回帖:
14楼: Originally posted by sp_tried at 2013-10-19 17:04:05
实际上你之前的问题没说清楚,问题不是lookup table怎么设置,而是对于不同的v怎么求解s。刚用你的程序试了一下,报错了
同意你的说法,用for循环试试。
另外,用function应该没法求解吧,你没有s关于v的 ...

可以啊  把程序保存成Ct
然后给一个风速   比如Ct(18)就行
我的程序是先求了一个含有v的方程  
未知数x有多解  判断了以后令a=x  然后s=4*a*(1-a)
心有猛虎,细嗅蔷薇。
17楼2013-10-19 17:17:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sp_tried

铜虫 (初入文坛)

引用回帖:
17楼: Originally posted by z65668396 at 2013-10-19 17:17:38
可以啊  把程序保存成Ct
然后给一个风速   比如Ct(18)就行
我的程序是先求了一个含有v的方程  
未知数x有多解  判断了以后令a=x  然后s=4*a*(1-a)...

我是直接给v赋值一个行向量,所以运行报错;
就用for循环吧,逐个解出v对应的s,然后查表,我以前用过lookup table,挺好用。
oneforall,andallforone!
18楼2013-10-19 18:02:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z65668396

金虫 (正式写手)

引用回帖:
18楼: Originally posted by sp_tried at 2013-10-19 18:02:27
我是直接给v赋值一个行向量,所以运行报错;
就用for循环吧,逐个解出v对应的s,然后查表,我以前用过lookup table,挺好用。...

嗯 好的  非常感谢
心有猛虎,细嗅蔷薇。
19楼2013-10-19 18:32:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z65668396

金虫 (正式写手)

引用回帖:
15楼: Originally posted by sunshine819 at 2013-10-19 17:04:47
大概的意思就是这样,不过你在simulink模型里最好加一个初始化文件,这个文件里面包含你计算出来的数据,这样就不用每次打开的时候都重新生成一遍这两个数据了...

您好  有个关于Lookup table的问题还得向您请教
程序是这个
CODE:
ZF=320-70;
w=698.094;
L=902.2;
EA=384243000;
CB=1;   %静摩擦系数
x=[4.9144e5,5.4374e5];   %fsolve所用初值 (XF=828.67   ZF=250)  
XF=853.87-5.2-20:0.1:853.87-5.2+20;
n=length(XF);
for i=1:n  %for循环 改变方程中XF的值
    if L-x(2)/w>0    %有躺底
    f1=@(x)([L-x(2)/w+(x(1)/w)*log(x(2)/x(1)+sqrt(1+(x(2)/x(1))^2))+x(1)*L/EA+CB*w*(-(L-x(2)/w)^2+(L-x(2)/w-x(1)/(CB*w))*max(L-x(2)/w-x(1)/(CB*w),0))/(2*EA)-XF(i);
        (x(1)/w)*(sqrt(1+(x(2)/x(1))^2)-1)+x(2)^2/(2*w*EA)-ZF]);
    z=fsolve(f1,x,optimset('Display','off'));
    HF(i)=z(1);
    VF(i)=z(2);
    XF(i)
    x=z     %将方程的解作为下一步fsolve初值
else   %无躺底
    f2=@(x)([(x(1)/w)*(log(x(2)/x(1)+sqrt(1+(x(2)/x(1))^2))-log((x(2)-w*L)/x(1)+sqrt(1+((x(2)-w*L)/x(1))^2)))+x(1)*L/EA-XF(i);
        (x(1)/w)*(sqrt(1+(x(2)/x(1))^2)-sqrt(1+((x(2)-w*L)/x(1))^2))+(x(2)*L-w*L^2/2)/EA-ZF]);
    z=fsolve(f2,x,optimset('Display','off'));
    HF(i)=z(1);
    VF(i)=z(2);
    XF(i)
    x=z     %将方程的解作为下一步fsolve初值
    end
end

输入是XF ZF 其中ZF是常数 XF变化    输出是HF VF
中间是求解非线性方程组
我在用Lookup table设置的时候报错  
Look up table问题求教
意思貌似是输入要单调递增   可是我的输入XF在matlab计算的时候确实是单调递增的
您能看看哪里有问题吗?  我在网上没找到相关的解决办法  
谢谢
心有猛虎,细嗅蔷薇。
20楼2013-10-19 20:13:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 z65668396 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 如果此刻你正在为国基感到焦虑,不妨来听听这首《基金之外》 +3 scalable 2026-08-24 3/150 2026-08-24 15:02 by arzu_hma
[基金申请] 能否退出参与的面上项目解除限项 +15 koalala 2026-08-24 17/850 2026-08-24 14:16 by hhs666
[基金申请] 估计是周四 +4 archvillain 2026-08-18 4/200 2026-08-24 13:53 by zzuzxg
[基金申请] 我面上完蛋了 +8 且听虎啸 2026-08-20 9/450 2026-08-24 13:52 by zzuzxg
[基金申请] 建议基金发布提前给出明确的时间点 +12 kulium 2026-08-21 15/750 2026-08-24 12:02 by iaeyuan
[基金申请] 放榜前的不淡定 20+4 snowwithsea 2026-08-19 17/850 2026-08-24 10:20 by echo8914667
[基金申请] 2026年的国家社科基金项目通讯评审的新规则与新动向、新挑战 +4 process2012 2026-08-23 5/250 2026-08-23 19:58 by jurkat.1640
[基金申请] 今天放榜吗? +15 布布和一二 2026-08-19 16/800 2026-08-23 09:55 by 张春生
[基金申请] 93BebMhtakh前后11位开头都是大写 +7 且听虎啸 2026-08-17 8/400 2026-08-22 21:55 by 医学老男孩
[基金申请] 只有每年这种时候来逛逛小木虫 +24 yaoyewhu2008 2026-08-20 26/1300 2026-08-22 17:43 by kammury
[基金申请] filecode,4个jtjc了 +13 ziyangfang 2026-08-19 16/800 2026-08-22 17:08 by WH3796
[基金申请] 人气不行了 +8 fansofjerry 2026-08-21 8/400 2026-08-22 16:30 by zyqchem
[基金申请] 今天基金会出结果吗?20260819 +16 kkkl_v 2026-08-19 17/850 2026-08-22 16:12 by 阿布Abu
[基金申请] 看来今天不会放榜了? +8 chengyan1220 2026-08-21 11/550 2026-08-21 17:52 by dcqxinyang
[基金申请] 应该是下周三26日公布了吧? +4 哈哈蛤? 2026-08-21 4/200 2026-08-21 10:58 by Vivilian
[论文投稿] 投稿咨询 +5 wwm09 2026-08-17 7/350 2026-08-21 10:11 by 期刊论文帮手
[基金申请] 今天放榜没戏了吧 +9 yuleib84 2026-08-19 11/550 2026-08-21 10:06 by gltch
[基金申请] 基金啊基金 +4 longfie172 2026-08-20 4/200 2026-08-21 08:58 by mark mao
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] 明天放榜? +5 Shxjjxjkx 2026-08-18 5/250 2026-08-18 18:14 by -大大大大大-
信息提示
请填处理意见