楼主: wangzt
4717 16

Matlab的一些小问题,有金币送(不断更新) [推广有奖]

11
wangzt 发表于 2008-1-6 11:22:00 |只看作者 |坛友微信交流群

呵呵,不过我的问题很很菜哦!见笑了,不过你们的回答让我受益不少。一个人想也想不明白,书上也不可能写这个细或是我根本不知道看什么书。[em07]

 

关于子程序的问题我的目的是想:将一些参数的定义保存为一个m文件,然后在其他很多的m文件中调用它,这样会很方便!我不知道该怎么做。

又比如一个模快,在一个程序中要运行多次。

我以前用的软件只需要在当前的程序中加入 include "file name" 就可以调用了,就像是原文件中运行一样。

在matlab里可以吗?我想不通过函数的形式。

[此贴子已经被作者于2008-1-7 11:08:14编辑过]

使用道具

12
Xaero 发表于 2008-1-7 23:02:00 |只看作者 |坛友微信交流群

======Problem 7 Updated=======

h=[20,3,2008];a='我的'; b='生日'; x=0:0.01:3; y=x.^2; xx=[1,2] ;
hFig=figure('Name',[a,b,'是',num2str(h(3)),'年',num2str(h(2)),'月',num2str(h(3)),'日']);
set(get(hFig,'Children'),'YTicklabel',[1,2],'XTicklabel',[1,4])
hold on;
%画出辅助线:用实线画:(0,y(x=xx(1)))-(1,y(x=xx(1)))-(1,0) , 用虚线画:(0,y(x=xx(2)))-(2,y(x=xx(2)))-(2,0) 
plot([0,1,1],[y(x==xx(1)),y(x==xx(1)),0],'-',[0,2,2],[y(x==xx(2)),y(x==xx(2)),0],'--'),
plot([1,y(x==xx(1))],[1,y(x==xx(2))],'.','Markersize',5)
%标注点:(y(x==xx(1)),y(x==xx(2)))和(2,y(x=2))
set(get(hFig,'Children'),'XTick',[1,2],'YTick',[y(x==xx(1)),y(x==xx(2))])

[此贴子已经被作者于2008-1-7 23:13:10编辑过]

十年一觉扬州梦。
智不足以Academy,才尚不够Industry,情无力于Life。

使用道具

13
wangzt 发表于 2008-1-8 21:38:00 |只看作者 |坛友微信交流群
问题已更新!

使用道具

14
confch 发表于 2008-1-19 20:43:00 |只看作者 |坛友微信交流群
9、一些矩阵元素的操作。(15金币)
(1)去除集合中所以小于0的元素,构成所以大于0的集合。比如A=[1,-3,2,-6],去除小于0的元素后生成集合A1=[1,2]
(2)在已知集合中加入某一元素。并指定加入的位置。首先加在最前面,然后加在最后面。
(3)如何让一集合中的元素从小到大排列?

so1:可以用Matlab命令find实现:

       >> A = [1,-3,2,-6];

      >> [rows,cols] = find(A>0);

          %rows,cols表示矩阵A中大于0的元素对应的行和列,其中row=[1 1], cols=[1 3]

      >> A = A(cols);   %提取向量A中大于0的元素

    so2: 若要向一矩阵或向量加入元素,只要知道要加入的位置,即可.

           >> A = [A(1:5} B A(6:end)]  % 将B插入A中第5列后

           >> A = [B A]                        %将B加到A前面

           >> A = [A B]                        %将B加到A后面

     PS:不知道这是不是你要问的哈。

    so3: Matlab中向量、矩阵中元素的排序可以用sort命令实现。一般语法:Y = SORT(X,DIM,MODE)

          >> A = sort(A)  %向量A中元素递增排序 或用A = sort(A,'ascend')

          >> A = sort(A,'descend') %向量A中元素递减排序

         如果A是矩阵就需要指出是按行或按列排序,DIM取1为按列排序,DIM取2为按行排序,都默认为递增排序。

       

使用道具

15
yuliying121 发表于 2012-4-20 16:33:40 |只看作者 |坛友微信交流群
有点难

使用道具

16
妄眠、 发表于 2013-11-24 22:02:13 |只看作者 |坛友微信交流群
太强了楼上的各位,我不会解,纯路过
经管人必须去的网站:人大经济论坛
https://bbs.pinggu.org/?from^^uid=4641784

使用道具

17
cxqing 发表于 2013-11-25 17:07:59 |只看作者 |坛友微信交流群
问题8,楼主可以把解方程组的问题化为最小二乘问题,
min ||y(x) - y0||

然后用matlab函数 lsqnonlin,  具体可以在matlab下 运行 doc  lsqnonlin

对你这个问题

fun = @(x) y(x) - y0;
x = lsqnonlin(fun,x0);

即可,其中x0为初始点

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-22 20:07