Inscription / Connexion Nouveau Sujet
Niveau algorithmique
Partager :

algorithme sur scilab

Posté par
grenadine75
07-12-16 à 19:19

Bonjour,

j'ai un compte rendu de TP en analyse numérique matricielle à faire sur les méthodes de gradient je dois faire un algorithme à pas fixe.
J'ai réalisé cet algorithme qui fonctionnait très bien en labo ce matin mais quand l'ai testé chez moi (version 64bits) ça ne fonctionne plus alors que je n'ai fait qu'un copier-coller...
Quelqu'un peut m'aider et me dire ce qu'il ne va pas?


function [x,n,resi]=GPF(A,b,x0,eta,Imax,rho)
    resi=zeros(1,1);
    x=x0;
    resi(1,1)=norm(A*x0-b)
    nr =norm(A*x-b)
    n=1
    while (n<=Imax) & (nr>eta)
        n=n+1;
        x=x -rho*(A*x-b);
        resi(n,1)=norm(A*x-b);
        nr=norm(A*x-b)
    end  
endfunction

E=diag(ones(19,1),1)
A=21*21*(2*eye(20,20)-E-E')
b=ones(20,1)
x0=zeros(20,1)
n=0
//rho=2/max(spec(A))

Merci d'avance à mon(ma) sauveur(se)

Posté par
verdurin
re : algorithme sur scilab 11-12-16 à 13:15

Bonjour,
je ne sais pas me servir de Scilab.
Mais si tu as fait un copier-coller le problème peut venir de l'encodage du fichier.
Du genre en UTF8 au labo, en latin1 chez toi.

Posté par
grenadine75
re : algorithme sur scilab 11-12-16 à 15:46

Bonjour,

oui vous aviez raison je pense ça refonctionne maintenant que je l'ai réécrit à la main.

Merci beaucoup!

Posté par
verdurin
re : algorithme sur scilab 11-12-16 à 16:35

Si ça t'arrive souvent, ou pour des choses plus longues, il y a des programmes de conversion automatiques.

Et aussi, c'est souvent le caractère retour à la ligne qui pose problème.
Si c'est le cas, il suffit d'une recherche et d'un remplacement dans n'importe quel éditeur de texte.
Ou d'un réglage au niveau de Scilab.

Posté par
grenadine75
re : algorithme sur scilab 11-12-16 à 17:10

D'accord merci beaucoup pour l'info

Répondre à ce sujet

Seuls les membres peuvent poster sur le forum !

Vous devez être connecté pour poster :

Connexion / Inscription Poster un nouveau sujet
Une question ?
Besoin d'aide ?
(Gratuit)
Un modérateur est susceptible de supprimer toute contribution qui ne serait pas en relation avec le thème de discussion abordé, la ligne éditoriale du site, ou qui serait contraire à la loi.


Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !