Bonjour,
"Too many input arguments" : en regardant la Faq :
http://matlab.developpez.com/faq-err...nput_arguments
Je n'arrive pas à trouver de significations ou d'explications au niveau de mon code (programmation orientée objet) avec cette erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
??? Error using ==> GetVitesse
Too many input arguments.
 
Error in ==> main>LancerSimulation/AvancerVehicule at 203
                                v_suiveur = suiveur.GetVitesse(t-1);
 
Error in ==> main>LancerSimulation at 49
            AvancerVehicule(t, decalage);
 
Error in ==> main at 41
LancerSimulation(Horizon,decalage);
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
        %DEBUT DE LA FONCTION IMBRIQUEE AvancerVehicule%
        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
        function AvancerVehicule(t,decalage)
            %avancer les vehicules sur les tronçons
            q = numel(config.ListeTroncon);
            for LO=1:q 
                n = numel(config.ListeTroncon{LO}.ListeVehTroncon);
                if t > 0
                    for LVO = 1:n 
                        Veh = config.ListeTroncon{LO}.ListeVehTroncon{LVO};
                        %verifier si le vehicule a un leader ou non
                        if isempty(Veh) && t > 0  % vide
                            %verifier si le vehicule est devant dans sa voie
                            v_veh = Veh.GetVitesse(t-1);
                            acc_veh = Veh.GetAcceleration(t-1);
                            Pos_actuel = Veh.GetPosition(t-1);
                            nouvelle_pos = Pos_actuel+v_veh*Pas_sim;
                            Veh.SetPosition(nouvelle_pos);
                            Veh.SetVitesse(v_veh);
                            Veh.SetAcceleration(acc_veh);
                        else
                            suiveur = Veh;
                            leader = Veh.GetLeader();
                            Hentree = suiveur.GetHeureEnt();
                            if (t - Hentree) > decalage
                                modele_GSOM (leader, suiveur, t, decalage)
                            else
                                v_suiveur = suiveur.GetVitesse(t-1);
                                acc_suiveur = suiveur.GetAcceleration(t-1);
                                Pos_actuel = suiveur.GetPosition(t-1);
                                nouvelle_pos = Pos_actuel + v_suiveur*Pas_sim;
                                ind_suiveur = suiveur.GetTronconActuel().index_tronc;
                                ind_leader = leader.GetTronconActuel().index_tronc;
                                if ind_suiveur == ind_leader
                                    pos_leader = leader.GetPosition(t);
                                else
                                    pos_leader = leader.GetPosition(t-1);
                                    if nouvelle_pos + Min_gap > pos_leader
                                        v_lead = leader.GetVitesse(t-1);
                                        nouvelle_pos = Pos_actuel + v_lead * Pas_sim;
                                        v_suiveur = v_lead;
                                    end%if(nouvelle_pos+Min_gap)
                                end%if(ind_suiveur)
                                suiveur.SetPosition (nouvelle_pos);
                                suiveur.SetVitesse (v_suiveur);
                                suiveur.SetAcceleration (acc_suiveur);
                            end %if(t-Hentree)
                        end %if (veh)
                    end %for(LVO)
                end %if(t)
            end %for(LO)
            end
        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
        %FIN DE LA FONCTION IMBRIQUEE AvancerVehicule%
        %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
 
% class definition
% ------------------------------------------------------------------------------------------------------------------------
% vehicule: implementation et interface de la classe vehicule
% ------------------------------------------------------------------------------------------------------------------------
classdef vehicule
    % définition des propriétés
    % ---------------------------------------------------------------------------------------------------------------------
    properties (SetAccess = public, GetAccess = public)
        posi = [];  % position du vehicule sur le troncon
        vitesse = []; % vitesse instantannée du véhicule
        acceleration = []; % accélération du véhicule
        deceleration = []; % deceleration du vehicule
        Hentree = 0; % heure d'entree du veh en nb de pas_sim
        leader = {}; % le leader du véhicule en question
        suiveur = {};% le suiveur du véhicule en question
        voieActuelle = {}; % voie actuelle sur laquelle le vehicule circule actuellement
        orig_actuel = {}; % origine sur laquelle le vehicule circule actuellement
        tronc_actuel = {}; % troncon sur lequel le vehicule circule actuellement
        dest_actuel = {}; % destination sur laquelle le vehicule circule actuellement
        trajet = [];  % position du vehicule sur le troncon
    end
 
    % les méthodes publiques de la classe
    % ---------------------------------------------------------------------------------------------------------------------
    methods
        % Constructeurs
        % -------------------------------------------------------------------------------------------------------------------------------------------------
        function vehicule = node(posi, vitesse, acceleration, deceleration, Hentree, leader, suiveur, voieActuelle, orig_actuel, tronc_actuel, dest_actuel, trajet)
            vehicule.posi = posi;
            vehicule.vitesse = vitesse;
            vehicule.acceleration = acceleration;
            vehicule.deceleration = deceleration;
            vehicule.Hentree = Hentree;
            vehicule.leader = leader;
            vehicule.suiveur = suiveur;
            vehicule.voieActuelle = voieActuelle;
            vehicule.orig_actuel = orig_actuel.Origine;
            vehicule.tronc_actuel = tronc_actuel.Troncon;
            vehicule.dest_actuel = dest_actuel.Destination;
            vehicule.trajet = trajet;
        end
 
        % les méthodes "get" d'accès aux propriétés
        % ---------------------------------------------------------------------------------------------------------------------
        function posi = GetPosition(vehicule)
            posi = vehicule.posi;
        end
 
        function vitesse = GetVitesse(vehicule)
            vitesse = vehicule.vitesse;
        end
 
        function acceleration = GetAcceleration(vehicule)
            acceleration = vehicule.acceleration;
        end
 
        function deceleration = GetDeceleration(vehicule)
            deceleration = vehicule.deceleration;
        end
 
        function Hentree = GetHeureEnt(vehicule)
            Hentree = vehicule.Hentree;
        end
 
        function leader = GetLeader(vehicule)
            leader = vehicule.leader;
        end
 
        function suiveur = GetSuiveur(vehicule)
            suiveur = vehicule.suiveur;
        end
 
        function voieActuelle = GetVoieActuelle(vehicule)
            voieActuelle = vehicule.voieActuelle;
        end
 
        function orig_actuel = GetOrigineActuelle(vehicule)
            orig_actuel = vehicule.orig_actuel;
        end
 
        function tronc_actuel = GetTronconActuel(vehicule)
            tronc_actuel = vehicule.tronc_actuel;
        end
 
        function dest_actuel = GetDestinationActuelle(vehicule)
            dest_actuel = vehicule.dest_actuel;
        end
 
 
        % les méthodes "set" d'accès aux propriétés
        % ---------------------------------------------------------------------------------------------------------------------
 
        function vehicule = SetPosition(vehicule, x)
            vehicule.posi = x;
        end
 
        function vehicule = SetVitesse(vehicule, v)
            vehicule.vitesse = v;
        end
 
        function vehicule = SetAcceleration(vehicule, acc)
            vehicule.acceleration = acc;
        end
 
        function vehicule = SetDeceleration(vehicule, dec)
            vehicule.deceleration = dec;
        end
 
        function vehicule = SetHeureEnt(vehicule, t)
            vehicule.Hentree = t;
        end
 
        function vehicule = SetLeader(vehicule, Lead)
            vehicule.leader = Lead;
        end
 
        function vehicule = SetSuiveur(vehicule, Suiv)
            vehicule.suiveur = Suiv;
        end
 
        function vehicule = SetVoieActuelle(vehicule, VoieAct)
            vehicule.voieActuelle = VoieAct;
        end
 
        function vehicule = SetOrigineActuelle(vehicule, OA)
            vehicule.orig_actuel = OA;
        end
 
        function vehicule = SetTronconActuel(vehicule, TA)
            vehicule.tronc_actuel = TA;
        end
 
        function vehicule = SetDestinationActuelle(vehicule, DA)
            vehicule.dest_actuel = DA;
        end
 
    end  % end of public methods
 
end  % end of class definition