Distinguishing matrices in for loops

1 vue (au cours des 30 derniers jours)
Oddur Bjarnason
Oddur Bjarnason le 11 Juil 2017
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 commentaires
KSSV
KSSV le 12 Juil 2017
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 le 12 Juil 2017
Again, this gives identical values for all rows of S, and I think an iterative process may be intended.

Connectez-vous pour commenter.

Réponse acceptée

Oddur Bjarnason
Oddur Bjarnason le 12 Juil 2017
Modifié(e) : Oddur Bjarnason le 12 Juil 2017
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..

Plus de réponses (0)

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by