Bonjour à tous,
J''ai écrit une fonction qui prend en paramètre une matrice d'adjacence (carrée symétrie de taille n*n) et un réel T et qui me construit un dag avec comme nombre de noeuds n*T.
Tout est sensé bien fonctionner, par contre j'ai une liste d'erreurs à la ligne
Voici la fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 bnet = mk_bnet(dag, node_sizes);
Je vous mets aussi les erreurs au cas où:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 function Constr_Dag(M,T) %M : Matrice d'adjacence; %T : Nombre de pas de temps; n = length(M); N = n*T; dag = zeros(N,N); for t=1:T for i=1:n j=i+(t-1)*n; dag(j,find(M(i,:))+t*n) = 1; end end discrete_nodes = 1:N; node_sizes = 2*ones(1,N); bnet = mk_bnet(dag, node_sizes);
J'ai vérifier le code à plusieurs reprise mais je ne vois pas pourquoi j'ai ces erreurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Error using * Inner matrix dimensions must agree. Error in expm>PadeApproximantOfDegree (line 107) A2 = A*A; A4 = A2*A2; A6 = A2*A4; Error in expm (line 29) F = PadeApproximantOfDegree(m_vals(i),A); Error in reachability_graph (line ) M = expm(double(full(G))) - eye(length(G)); Error in acyclic (line 18) R = reachability_graph(adj_mat); Error in mk_bnet (line 89) if ~acyclic(dag,directed)
Merci de votre aide.
Partager