2010-02-20 14 views
0

J'ai une tâche MATLAB dans une heure, et j'ai tout écrit dans MATLAB 7. Un de mes amis qui a pris la mission a dit qu'il ne fonctionne pas sur MATLAB 6.1 comme des fonctions comme dirac ne sont pas définis. Je viens juste de découvrir que la version MATLAB utilisée pour l'évaluation est 6.1, et je n'ai aucune idée de comment réparer mon code. Quelqu'un peut-il m'aider en me montrant vers les changements entre les deux versions. Je regarde déjà http://www.mathworks.com/access/helpdesk/help/techdoc/rn/f8-1009921.html et en essayant de comprendre ce que j'ai besoin de changer. Il ne me reste qu'une heure et tout conseil va vraiment aider.Portage MATLAB 7 fichiers de retour à 6.1

Répondre

0

Eh bien, mon délai a expiré et j'ai dû soumettre comme était. Au cas où cela aiderait tout le monde, voici ce que j'ai fait:

  • Au lieu d'utiliser figure(), utilisez la figure.
  • La fonction de Dirac ne fonctionnera pas dans Matlab 6

Sauf pour les deux ci-dessus cependant, le code a fonctionné à peu près la même entre les deux versions. J'ai fini par recevoir 14/15.

0

Étant donné que l'historique des révisions de Matlab est mal documenté, la seule façon d'être vraiment sûr est d'exécuter et de déboguer le code sur l'ancienne version de Matlab. Quand je dis «mal documenté», je veux dire qu'une partie des changements est montrée dans le release notes sous la rubrique «considérations de compatibilité» ou «nouvelles fonctionnalités, ou« bugs fixes », et une partie des changements. ne sont pas documentés du tout (où dit-on que diag.m ne fonctionne plus sur les tableaux de cellules depuis r2009b, par exemple?).

+0

C'est l'une des principales raisons pour lesquelles il n'est parfois pas choisi comme langue pour le projet dans les communautés scientifiques. – Rook

+0

Vraiment? C'est la première fois que j'entends cet argument. Dans ma communauté scientifique, les gens s'inquiètent de l'étiquette de prix de Matlab, et de l'histoire de la version. Mais ensuite, les gens ont l'habitude de travailler avec Excel. – Jonas

+4

Non, ce n'est pas une raison valable pour ne pas choisir matlab. Toutes les langues auront des problèmes de portabilité entre des versions significativement différentes. Revenir en arrière est toujours une chose difficile avec n'importe quel langage qui montre un développement constant au fil du temps. En fait, assurer la rétrocompatibilité est plus difficile que d'assurer la capacité vers l'avant, car toute nouvelle fonctionnalité sera considérée comme non compatible. Enfin, les langages qui n'ajoutent jamais de fonctionnalité et de nouvelles fonctionnalités sont plus susceptibles d'être appelés «langues mortes». –