IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Substituer fonction matlab


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 14
    Par défaut Substituer fonction matlab
    Bonjour,

    je souhaiterais effectuer des calculs en single dans un programme déjà tout fait.

    J'ai vu qu'on pouvait effectuer les opérations en déclarant au préalable les variables en single, néanmoins comme il y a des déclarations de variables dans tout le programme j'aimerais éviter de procéder ainsi. Par ailleurs j'ai des sparse matrices dans le programme qui visiblement ne se déclare pas en single.

    J'avais décidé de reprendre toutes les opérations élémentaires (plus, uplus, minus ....) en créant des fichiers plus.m, uplus.m, minus.m ... et en déclarant les variables d'entrée en single:

    exemple avec la fonction plus.m:

    function c = plus(a,b)

    a = single(a);
    b = single(b);

    c = a+b;

    c = double(c); (je remets en double à la fin, ce qui ne me pose pas de problème, je veux juste que les opérations soit faites en single).

    Bon je mets un path en entrée pour que matlab aille chercher mes fonctions, ils les voient mais ne veut pas les utiliser et utilise ses fonctions à lui.

    Donc ma question est de savoir comment écraser des fonctions matlab si c'est possible ?

    Sinon auriez vous une méthode équivalente pour résoudre mon problème ?

    (je ne veux pas d'une méthode permettant de faire des opérations en single puisque matlab sait déjà le faire et qu'il faudrait que je recode tous les produits matriciel et compagnie ...)

    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Citation Envoyé par grem1 Voir le message
    je souhaiterais effectuer des calculs en single dans un programme déjà tout fait.
    Pour quoi faire ?
    Donne nous plus d'information sur le contexte de ton étude.

    Ce que je ne comprends pas bien, c'est que tu veux caster des Double en Single, faire des opérations, et caster le résultat en Double... quel est l'intérêt ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 14
    Par défaut
    Bonjour,

    merci de la réponse.

    le mettre en single ou en double en sortie n'a pas d'importance tant que je fais l'opération avec des single. Comme j'ai des éléments comme les sparse matrix qui ont pas bien l'air de supporter les single je me disais que c'était plus raisonnable de remettre en double en sortie.

    Le contexte est le suivant: je compare des résultats d'un programme matlab à des résultats d'un processeur fonctionnant en 32 bits. J'observe des différences qui sont dues aux précisions de calcul. Donc je veux passer mes calculs sous matlab en single.

    D'où ma question comment on fait pour écraser une fonction matlab par la mienne ?

  4. #4
    Membre expérimenté
    Inscrit en
    Novembre 2006
    Messages
    236
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 236
    Par défaut
    Citation Envoyé par grem1 Voir le message
    D'où ma question comment on fait pour écraser une fonction matlab par la mienne ?
    tu modifies la fonction Matlab...

    aïe, pas taper...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 14
    Par défaut
    mouais je peux pas l'éditer.

    le problème n'est pas très sexy, je vais me contenter de faire que certains
    calculs en single en déclarant les variables en bons endroits si je les trouve.

    Merci quand même.

Discussions similaires

  1. [intfilt] Convertir une fonction MATLAB en language C
    Par sandball22 dans le forum MATLAB
    Réponses: 10
    Dernier message: 10/04/2007, 16h06
  2. Exécution d'une fonction Matlab à partir de C++
    Par wassimb dans le forum MATLAB
    Réponses: 1
    Dernier message: 15/03/2007, 13h00
  3. Appel de fonctions Matlab à partir d'une page Web ?
    Par helice_fr dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 05/02/2007, 11h24
  4. Equivalent de fonctions Matlab
    Par Sylvain62350 dans le forum C
    Réponses: 4
    Dernier message: 20/04/2006, 16h10
  5. Inclure des fonction matlab sous visual c++
    Par petdelascar dans le forum MFC
    Réponses: 3
    Dernier message: 21/11/2005, 17h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo