Distinguishing matrices in for loops

조회 수: 1 (최근 30일)
Oddur Bjarnason
Oddur Bjarnason 2017년 7월 11일
편집: Oddur Bjarnason 2017년 7월 12일
I want to distinguish matrices in a for loop.
The following does not work:
T=[0,1,-0.1,0.8,0;0,0,0,1,0;-0.2,-1,0,-0.2,0;0,0,0,0,0;0.2,0.5,-0.5,-0.2,0]
S0=[1,1,1,1,1]
n=0
for n=1:5
S{n}=S0*T
S{n}=(1./(1 + exp(1).^(-1*S{n})))
S{n+1}=S{n}*T
end
Can somebody help me?
  댓글 수: 3
KSSV
KSSV 2017년 7월 12일
You can proceed like this:
T=[0,1,-0.1,0.8,0;0,0,0,1,0;-0.2,-1,0,-0.2,0;0,0,0,0,0;0.2,0.5,-0.5,-0.2,0] ;
S0=[1,1,1,1,1] ;
S = zeros(5,length(T)) ;
for n=1:5
S(n,:)=(1./(1 + exp(1).^(-1*S0*T)))*T ;
end
What you think is not working?
David Goodmanson
David Goodmanson 2017년 7월 12일
Again, this gives identical values for all rows of S, and I think an iterative process may be intended.

댓글을 달려면 로그인하십시오.

채택된 답변

Oddur Bjarnason
Oddur Bjarnason 2017년 7월 12일
편집: Oddur Bjarnason 2017년 7월 12일
Combining the suggestions of David and KSSV I believe that I have found a solution to my problem. I have been trying to write a simple script for computing a Fuzzy-Logic Cognitive Map. The script is as follows:
T=[0,1,-0.1,0.8,0;0,0,0,1,0;-0.2,-1,0,-0.2,0;0,0,0,0,0;0.2,0.5,-0.5,-0.2,0] ;
S0=[1,1,1,1,1] ;
n=0;
S1=zeros(5,length(T)) ;
S2=zeros(5,length(T)) ;
for n=1:5
S1(n,:)=S0*T^n
S2(n,:)=(1./(1 + exp(1).^(-1*S1(n,:))))
end
Thank you both..

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by