声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2153|回复: 4

[编程技巧] 怎样调用function函数中的一部分

[复制链接]
发表于 2008-11-21 11:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
我需要用一个function函数的一部分,不会调用,大家帮忙看看,具体情况如下
主程序中有这样一个函数[lmd_m,idx,min_d,idx1,min_d1]=lyapunov(m,data,i-1,P)
我觉得可以用这样一个function   [lmd_m,idx,min_d,idx1,min_d1]=lyapunov(m,data,N,P)函数来完成
其中个参数已设定,但是主函数中只想实现i=N-m:N这部分功能
因为调用的部分需要完整的数据进行其它功能的实现,所以不能直接取i那一部分的值,只能是从完整的N中取
该怎么办呢?谢谢
回复
分享到:

使用道具 举报

发表于 2008-11-21 15:23 | 显示全部楼层
文字表述太繁琐,举个简单的例子
 楼主| 发表于 2008-11-21 16:13 | 显示全部楼层
function [idx,min_d,idx1,min_d1]=nearest_point(m,whlsj,whlsl,P)
%参数说明:
%输入:m - 嵌入维数, whlsj - 待分析数据, whlsl - 待分析的数据个数, P - 平均循环周期
%      idx - 最后一个相点的最近相点的位置, min_d - 最后一个相点与其最近相点间的距离 (考虑相角)
%      idx1 - 最后一个相点的最近相点的位置, min_d1 - 最后一个相点与其最近相点间的距离 (不考虑相角)
% *可调参数
% P = 5  ; %  &&选择演化相点距当前点的位置差,即若当前相点为I,则演化相点只能在|I-J|<P的相点中搜寻
min_point=5  ; %&&要求最少搜索到的点数
MAX_CISHU=5 ;  %&&最大增加搜索范围次数
global lmd;

% 相空间重构
LAST_POINT = whlsl-m+1;  %相点个数
for j=1:LAST_POINT            
    for k=1:m
        Y(k,j)=whlsj(k+j-1);
    end
end

% 求最大、最小和平均相点距离
max_d = 0.;
min_d = 1.0e+100;
avg_d = 0.;
for i = 1 : LAST_POINT-1
    avg_dd = 0.;
    for j = i+1 : LAST_POINT
        d = 0.;
        for k = 1 : m
            d = d + (Y(k,i)-Y(k,j))*(Y(k,i)-Y(k,j));
        end
        d = sqrt(d);
        if max_d < d
           max_d = d;
        end
        if min_d > d
           min_d = d;
        end
        avg_dd = avg_dd + d;
    end
    avg_dd = avg_dd/(LAST_POINT-i-1+1);
    avg_d = avg_d + avg_dd;
end
avg_d = avg_d/(LAST_POINT-1);
  
dlt_eps = (avg_d - min_d) * 0.08 ;         % 若在min_eps~max_eps中找不到演化相点时,对max_eps的宽大增幅
min_eps = min_d + dlt_eps / 8 ;            % 演化相点与当前相点距离的最小限
max_eps = min_d + 2 * dlt_eps  ;           % 演化相点与当前相点距离的最大限
这是我想调用的那个程序的一部分,它完成的事全部数据的功能,在主程序中,我只想循环一部分数据,但是要用这个方法来实现,也不知道表达明白没
发表于 2008-11-21 21:58 | 显示全部楼层
对不住! 我真的不了解楼主的问题!
发表于 2008-11-22 19:52 | 显示全部楼层
函数重构?
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-17 17:34 , Processed in 0.073041 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表