weitaolu 发表于 2007-4-29 14:53

请教一个问题,就是上面的程序:
子函数:
“% 四维G-S变换
function A = FourGS(V)% V 为4*4向量”
V是4*4向量,怎么在调用时的y0是3*3向量?
“ y0 = [y(4) y(7) y(10);
          y(5) y(8) y(11);
          y(6) y(9) y(12)];
    %正交化
    y0 = FourGS(y0); ”
谢谢!

gghhjj 发表于 2007-4-30 05:21

原帖由 weitaolu 于 2007-4-29 14:53 发表
请教一个问题,就是上面的程序:
子函数:
“% 四维G-S变换
function A = FourGS(V)% V 为4*4向量”
V是4*4向量,怎么在调用时的y0是3*3向量?
“ y0 = [y(4) y(7) y(10);
          y(5) y(8) y(11);
...

Gauss-Seidel迭代,楼主为了方便,直接拿4维的Gauss-Seidel迭代程序算三维的
实际上Gauss-Seidel迭代理论上可以任意维的,主要是计算量问题

上面这个Gauss-Seidel迭代程序最多只能算到4维的

xiangwei27 发表于 2008-3-20 23:27

楼主

运算您的程序后出现:
??? Attempted to access V(:,4); index out of bounds because size(V)=.

Error in ==> FourGS at 5
v4 = V(:,4);
请问如何解决?谢谢!

咕噜噜 发表于 2008-3-21 09:03

你用的那个程序,几楼的,7楼?

octopussheng 发表于 2008-3-22 10:03

本帖最后由 牛小贱 于 2015-3-16 11:39 编辑

你这个问题我还真没有遇到过,关于GS变换,我觉得之前写的程序也是有问题,这样等于多一次变化,就要多写一次的代码,所以将现在用的GS代码公布如下:(转载并非个人原创)
function A = GS(V)
% G-S正交化
% A = GS(V)
% V 为n*n向量
% A 为n*n正交向量
%
% Example:
%   A=GS()
%
% Author:yujunjie
% Author's email: ustb03-07@yahoo.com.cn
%
n=length(V);
for i=1:n
    k=0;
    for j=1:i-1   
      k=k+(A(:,j)'*V(:,i)/(A(:,j)'*A(:,j)))*A(:,j);
    end   
    A(:,i)=V(:,i)-k;
end


lihaitao123 发表于 2013-4-7 18:39

octopussheng 发表于 2008-3-22 10:03 static/image/common/back.gif
你这个问题我还真没有遇到过,关于GS变换,我觉得之前写的程序也是有问题,这样等于多一次变化,就要多写一 ...

我想画一条以一个参数变化的lyapunov指数图,如果想把最后的一个数值取出,再循环该如何编写!

lihaitao123 发表于 2013-4-7 21:09

本帖最后由 牛小贱 于 2015-3-16 11:39 编辑

lihaitao123 发表于 2013-4-7 18:39 static/image/common/back.gif
我想画一条以一个参数变化的lyapunov指数图,如果想把最后的一个数值取出,再循环该如何编写!
clear;clc
global R
gama=linspace(20,30,100);
for i=1:100;
R=gama(i);
=lyapunov(3,@lorenz_ext,@ode45,0,0.5,200,,10);
lam(i)=max(Res(end,:));
hold on
end
figure(1)
plot(gama,lam);
title('Dynamics of Lyapunov exponents');
xlabel('R'); ylabel('Lyapunov exponents');这么写倒是解决了!!可是郁闷的是每种方法都有其一定适应性!

lihaitao123 发表于 2013-4-8 09:38

lihaitao123 发表于 2013-4-7 21:09 static/image/common/back.gif
clear;clc
global R
gama=linspace(20,30,100);


如何使每一次计算都从同一个初值开始呢?

dcdbzd 发表于 2013-4-27 12:24

{:{39}:}{:{39}:}{:{39}:}

wystar 发表于 2015-3-16 10:30

如何使每一次计算都从同一个初值开始呢?每次的初值不都是=lyapunov(3,@lorenz_ext,@ode45,0,0.5,200,,10);中的吗
页: 1 [2]
查看完整版本: 关于lyapunov指数的问题