Rechercher : dans
Par :

[Matlab] Script en C

Dernière réponse le 18 mai 2009 à 16:44:52 Newenda, le 31 mar 2009 à 12:13:52 
 Signaler ce message aux modérateurs

Bonjour,

J'ai un petit programme matlab que j'aimerais bien transformer en C ou C++, bref un truc transportable.

Si je me trompe pas, on ne peut que transformer une fonction et non un script.

Comment transformer mon script en fonction? Je sais qu'il faut utiliser "function" mais il est nécessaire alors d'avoir des arguments d'entrés et de sorties. J'aurais bien 2 arguments d'entrée à mettre (les directories d'éxécution et de copie) mais je vois pas qu'elle(s) serai(ent) la ou les argument(s) de sortie puisque mon programme ne fait que lire, évaluer et copier des fichiers dans tel ou tel directory.

Help?

merci

Configuration: Windows XP
Firefox 3.0.8

Meilleures réponses pour « [Matlab] Script en C » dans :
Représentation des courbes sous Matlab VoirLa fonction plot permet essentiellement de tracer des courbes sous Matlab. Dans cette astuce, nous allons essayer de détailler le fonctionnement de cette commande. Simple utilisation Vecteur Matrice Vecteur en fonction d'un autre Autres...
Ajax - Javascript - Upload multiple VoirIntroduction Création de l'uploader Script côté serveur (upload.php) Téléchargement des Fichiers Multiples Génériques en Ajax Introduction AJAX Upload vous permet de facilement télécharger plusieurs fichiers sans rafraîchir la page et...

1

Char Snipeur, le 31 mar 2009 à 12:21:04

Salut.
Tu n'es pas obliger de mettre des arguments d'entré.En sorti tu peux tout simplement mettre un entier retournant un code erreur pour savoir si tout c'est bien passé. Salutation ! (il faut bien que vous compreniez que j'ai TOUJ­OURS raison)
Char Snipeur

Répondre à Char Snipeur

2

Newenda, le 31 mar 2009 à 13:54:15

Edit : non rien

Répondre à Newenda

3

Newenda, le 31 mar 2009 à 15:13:20

Oki merci !

Mais en faite, j'aimerais mettre des arguments d'entrée !

alors voilà le début de mon programme :

------------------------------------------------------------­-------------------------------------------------
function[compteur_bruit,compteur_signal] = TRAIT_BIN_BF(Directory_source,Directory_copy)


Directory_source = input('enter directory of source (dir of years) :','s')
Directory_copy = input('enter directory of destination (dir of copy) :','s')

cd(Directory_source);

compteur_bruit=0;
compteur_signal=0;

[...]
------------------------------------------------------------­-------------------------------------------------

après je lance

-------------------------------------------------
>> mcc -m TRAIT_BIN_BF_input2
-------------------------------------------------

Il me fait ce warning :

******************
To get started, select MATLAB Help or Demos from the Help menu.

Warning: No matching builtin function available for C:\MATLAB7\toolbox\simulink\simulink\set_param.bi
******************

Une idée? Merci

Répondre à Newenda

4

Char Snipeur, le 31 mar 2009 à 16:21:11

Je ne vois pas.
Tu utilise la fonction set_param ?
D'un autre coté, à quoi ça sert de forunir des paramètres pour les écraser juste derrière ? Salutation ! (il faut bien que vous compreniez que j'ai TOUJ­OURS raison)
Char Snipeur

Répondre à Char Snipeur

5

Newenda, le 31 mar 2009 à 16:26:58

Non je vois pas ce qu'est la fonction set_param

Quand tu parles d'écraser, j'imagines que tu parles des compteurs. Bah c'est mes variables de sortie, elles sont initialisées à 0 au début puis elles augmentent dans le programme..il devrait me les ressortir non nulles non? en tout cas dans matlab elles le sont, non nulles.

Répondre à Newenda

6

Char Snipeur, le 31 mar 2009 à 16:41:29

Non, je parle de Directory_source,Directory_copy
à quoi ça sert de les mettre alors que tu les écrase juste derrière avec le input ?
Pour les variables que tu site ça ne me gène pas. Salutation ! (il faut bien que vous compreniez que j'ai TOUJ­OURS raison)
Char Snipeur

Répondre à Char Snipeur

7

Newenda, le 31 mar 2009 à 17:39:41

Ha je pensais qu'il fallait mettre toutes les variables d'entrées dans la function, histoire que quand je transforme ça en sorte de "programme c" il comprenne...

Donc en gros si je mets :

function[compteur_bruit,compteur_signal] = TRAIT_BIN_BF

ça suffit? même si je rentre pleins de variables par la suite?

(merci)

Répondre à Newenda

8

Newenda, le 31 mar 2009 à 17:47:01

Oui bon effectivement cela suffit mais j'ai toujours mon warning... qu'est ce que ça peut bien être?

Répondre à Newenda

9

Char Snipeur, le 1 avr 2009 à 11:14:31

Normalement, un warning n'est pas bloquant.
Sauf cas contraire, essai de l'ignorer. Salutation ! (il faut bien que vous compreniez que j'ai TOUJ­OURS raison)
Char Snipeur

Répondre à Char Snipeur

10

Newenda, le 1 avr 2009 à 11:19:57

Hum j'ai essayé de poster ici mais il m'a indiqué que ce post avait été supprimé (???) alors j'ai créé un nouveau topic [Matlab]Pb Executable. En effet même si j'ai pu me débarasser du warning de matlab, j'en ai un autre quand je lance le .exe créé.

Voir nouveau topic donc

http://www.commentcamarche.net/forum/affich 11794466 matlab pb executable

dsl...


---------------------------
PS j'ai résolu le pb du 1er warning :

" Warning: No matching builtin function available for $MATLAB/toolbox/simulink/simulink/set_param.bi "

grâce au lien ci-dessous :

http://www.mathworks.com/support/solutions/data/1-O9PX9.html

il s'agissait d'un bug de la R14 qu'on peut enlever en modifiant un peu un .m dans matlab.

---------------------------

Répondre à Newenda

11

 kerrouche yahia, le 18 mai 2009 à 16:44:52

Pour dree cette fichie en forma c il faut utilise cette commande
mcc -l nomdefichie.m
et le problame resule

Répondre à kerrouche yahia
Collection CommentÇaMarche.net