24小时热门版块排行榜    

查看: 3606  |  回复: 14

wenqiang1938

铜虫 (小有名气)

[交流] 【求助】matlab 中,几个m文件调用 已有10人参与

matlab中,我编了几个m文件,单独运行没有问题,但是我想把几个m文件相互调用起来在一个m文件中运行,怎么样编写程序去调用这几个m文件。或者推荐哪些参考书?谢谢大家。(其中一个m文件输出是另一个m文件的输入)

[ Last edited by jjdg on 2011-4-19 at 00:21 ]
回复此楼

» 收录本帖的淘帖专辑推荐

matlab

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

一切皆有可能
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lhfx_313

至尊木虫 (文坛精英)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
微尘、梦想(金币+2): 谢谢回复…… 2011-04-12 15:05:34
应该分模块实现,一个主模块+几个子模块(每个子模块也就对应一个函数,也就是以 function开头)。
写一个main.m作为主模块,然后调用其他的各个子模块(调用各个子函数)就行了。
举个例子:实现两个数的相加和相减
main.m   %%主函数
c1=Add(a,b); %调用子函数
c2=Add(a,b);  %调用子函数

Add.m(如下)
function c1=Add(a,b)
c1=a+b;

Subtract.m(如下)
function c2=Subtract(a,b)
c2=a-b;

[ Last edited by lhfx_313 on 2011-4-11 at 20:42 ]
2楼2011-04-11 20:32:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

colbertli

禁虫 (著名写手)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
微尘、梦想(金币+2): 谢谢回复…… 2011-04-12 15:05:54
本帖内容被屏蔽

3楼2011-04-11 20:38:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fyzhu

木虫 (正式写手)

学习了
好好学习,天天向上
4楼2011-04-15 16:27:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cldky11

禁虫 (小有名气)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
微尘、梦想(金币+1): 谢谢回贴交流…… 2011-04-19 15:16:11
本帖内容被屏蔽

5楼2011-04-18 21:24:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
微尘、梦想(金币+1): 谢谢回复! 2011-04-19 15:16:40
互相调用2个办法:

==========
1.子函数
==========

都写在一个文件中,例如叫main.m

function main()
%主函数内容

subFunc1(); % 掉用子函数1

subFunc2(); % 掉用子函数2
end

function subFunc1()
% 子函数1内容
end

function subFunc2()
% 子函数2内容
end

======================
2.多个m文件放在同一个文件夹下
======================
把上面的3个函数分别写在3个m文件中,文件命名必须与function name相同,然后就可以互相调用了.
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
6楼2011-04-19 00:41:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

高明敏

铁杆木虫 (正式写手)


微尘、梦想(金币+1): 谢谢参与,欢迎常来! 2011-04-19 15:17:04
引用回帖:
Originally posted by wenqiang1938 at 2011-04-11 11:50:29:
matlab中,我编了几个m文件,单独运行没有问题,但是我想把几个m文件相互调用起来在一个m文件中运行,怎么样编写程序去调用这几个m文件。或者推荐哪些参考书?谢谢大家。(其中一个m文件输出是另一个m文件的输入) ...

matlab写的好的有东北大学的  薛定宇,权威书! 我看着挺好的!
你说的应该就是函数嵌套,每一个M文件都起一个名,里面的函数名跟文件名一样! 之后就直接调用函数名就行了!这是一种吧
7楼2011-04-19 13:21:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jswoo

铁杆木虫 (著名写手)

阿拉多梦


小木虫(金币+0.5):给个红包,谢谢回帖
微尘、梦想: 呵呵……希望能给楼主一些实质性的回答! 2011-04-19 15:18:02
这个很容易的~~~~
8楼2011-04-19 14:38:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jswoo

铁杆木虫 (著名写手)

阿拉多梦

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
微尘、梦想(金币+2): 谢谢回复…… 2011-04-20 16:26:22
引用回帖:
Originally posted by wenqiang1938 at 2011-04-11 11:50:29:
matlab中,我编了几个m文件,单独运行没有问题,但是我想把几个m文件相互调用起来在一个m文件中运行,怎么样编写程序去调用这几个m文件。或者推荐哪些参考书?谢谢大家。(其中一个m文件输出是另一个m文件的输入) ...

给你举个非常简单的例子:

M1文件:必须保存为文件名 exam.m(保存的文件名需和自定义函数名同名)

function []=exam(a,b)       % a  b 为输入参数;  [ ]为输出参数
r=a+b;   % r为计算结果,返回给[]输出的

M2文件:假如这个为主函数(保存的文件名需和自定义函数名同名)

function main :必须保存为文件名 main.m
a=2;
b=1;
exam(a,b)  % 调用M1函数

-----------------------
在运行窗口输入:
main

输出结果为:
3
=================

就这样啊~~~~
9楼2011-04-20 10:47:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小新爱小白

金虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
569112楼: Originally posted by wenqiang1938 at 2011-04-11 11:50:29
matlab中,我编了几个m文件,单独运行没有问题,但是我想把几个m文件相互调用起来在一个m文件中运行,怎么样编写程序去调用这几个m文件。或者推荐哪些参考书?谢谢大家。(其中一个m文件输出是另一个m文件的输入)
...

Function [eval]=targetalloc (chrom)
[m,n]=size(chrom);
p=[87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;62 87 70 22 80 42 43 90 13 95 18 19 12 61 35;48 20 42 16 43 58 69 03 34 72 15 24 29 30 75];
w=[47 97 76 62 48 77 33 74 54 65 43 35 63 66 57];
for i=1:m
for j=1:15
chrom(i,j)=p(chrom(i,j),j);
end;
end
eval=chrom*w';
这个程序有什么问题,怎么总是提示错误,也运行不了呢?或者请指教怎么在Matlab 7.7.0(R2008b)里边具体步骤。
谢谢……
天天开心,事事顺利
10楼2012-08-11 20:05:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wenqiang1938 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[文学芳草园] 伙伴们,祝我生日快乐吧 +15 myrtle 2026-03-10 24/1200 2026-03-15 21:16 by 苏州_逗号
[考研] 一志愿985,本科211,0817化学工程与技术319求调剂 +3 Liwangman 2026-03-15 3/150 2026-03-15 18:16 by JourneyLucky
[考研] 274求调剂 +4 时间点 2026-03-13 4/200 2026-03-15 15:29 by Rambo13
[基金申请] 现在如何回避去年的某一个专家,不知道名字 +3 zk200107 2026-03-12 6/300 2026-03-14 17:13 by zk200107
[考研] 255求调剂 +3 李嘉慧, 2026-03-12 4/200 2026-03-14 16:58 by 有只狸奴
[考研] 297求调剂 +4 学海漂泊 2026-03-13 4/200 2026-03-14 11:51 by 热情沙漠
[考研] 【0703化学调剂】-一志愿华中师范大学-六级475 +5 Becho359 2026-03-11 5/250 2026-03-14 11:35 by 哦哦123
[考研] 331求调剂(0703有机化学 +5 ZY-05 2026-03-13 6/300 2026-03-14 10:51 by Jy?
[考研] 一志愿天大化工(085600)调剂总分338 +6 蔡大美女 2026-03-09 6/300 2026-03-14 02:46 by JourneyLucky
[考研] 0703求调剂 +7 jtyq001 2026-03-10 7/350 2026-03-14 01:06 by JourneyLucky
[考研] 307求调剂 +7 超级伊昂大王 2026-03-10 7/350 2026-03-14 00:49 by JourneyLucky
[考研] 泣血叩求调剂恩,愿以丹心报师恩 +6 Iuruoh 2026-03-11 6/300 2026-03-13 22:06 by JourneyLucky
[考研] 290求调剂 +9 ADT 2026-03-11 9/450 2026-03-13 21:55 by JourneyLucky
[考研] 301求调剂 +6 Liyouyumairs 2026-03-11 6/300 2026-03-13 20:11 by JourneyLucky
[考研] 085600材料与化工 309分请求调剂 +7 dtdxzxx 2026-03-12 8/400 2026-03-13 14:43 by jxchenghu
[考研] 一志愿山大07化学 332分 四六级已过 本科山东双非 求调剂! +3 不想理你 2026-03-12 3/150 2026-03-13 14:18 by JourneyLucky
[考博] 福州大学杨黄浩课题组招收2026年专业学位博士研究生,2026.03.20截止 +3 Xiangyu_ou 2026-03-12 3/150 2026-03-13 09:36 by duanwu655
[考研] 341求调剂 +4 捣蛋猪猪 2026-03-11 4/200 2026-03-12 14:47 by ruiyingmiao
[考研] 研究生招生 +3 徐海涛11 2026-03-10 7/350 2026-03-12 14:26 by 徐海涛11
[考研] 0703化学调剂 +3 三dd. 2026-03-10 3/150 2026-03-10 15:45 by peike
信息提示
请填处理意见