Archives de l’auteur : tug83

Chut!

ou comment faire taire MATLAB ?!
J’avais écris un logiciel avec pleins de fprintf afin de pouvoir créer un log avec diary.
Evidemment ça ralentit le process le fait de faire afficher pleins de lignes dans le Command Window.
Là l’idée c’était de pouvoir ajouter une option qui fasse que les fprintf n’affichent rien.
J’aurais pu rajouter une checkbox dans l’interface que j’aurais appelée « verbosity » . Si cette checkbow n’était pas cochée , cela signifait que l’opérateur ne voulait rien voir à l’écran.
Mais bon vu que j’en avais plus de 3000 lignes de fprintf je n’avais pas envie de faire 300 if-test du style:

if verbosity % checkbox has value 1
fprintf('\n ...')
end

La solution est en fait toute simple et ne requière aucune modification de code … (solution page suivante ) Lire la suite

Nouveaux blogs MATLAB français

C’est avec une grande joie que je vous fais partager 2 nouveaux blogs français sur MATLAB:

Demande à la poussière de Dut (Jérome Briot) avec qui j’ai eu le plaisir de modérer et de rédiger des notes techniques en français sur le forum MATLAB developpez pendant plusieurs années.

Son premier billet « MATLAB, c’est de la m***e ! » est une bonne accroche d’ailleurs !!

L’equipe MATLAB de developez.com a aussi son blog : Vers MATLAB et au delà

Avec ces 2 blogs plus le mien, les utilisateurs MATLAB français trouveront forcément leur bonheur!

accumarray

En juillet 2012, j’ai ENFIN trouvé l’utilité d’utiliser accumarray… les boules pour un MATLAB geek ! Cette fonction a été introduite avec MATLAB 7.0 (R14) en même temps que les fonctions cast, intmax, intmin,…. donc il était temps de s’y coller.

Je m’étais même promis d’y arriver dans ce billet Mon premier arrayfun.

  • Exemple simple :

Cette matrice là par exemple 2 lignes et 3 colonnes :

B = [0 0 0
0 0 -13]

On pourrait l’écrire en une ligne en faisant

B(2,3) = -13

mais truc de fou on peut aussi l’écrire en faisant:

accumarray([2,3],-13)
  • Maintenant avec un exemple plus compliqué

Lire la suite