formule de Neumann
Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

formule de Neumann



  1. #1
    mac10

    formule de Neumann


    ------

    bonjour tt le monde,
    je veux programmer la formule de Neumann pour calculer une inductance mutuelle entre 2 bobine. voici la formule Sans titre.png

    et voici mon programme Sans titre2.png. le problème c'est qu'il ne reconnait pas v comme une variable dans l’intégrale. voici le message d'erreur. xyjrthr.png. merci d'avance.

    -----

  2. #2
    Antoane
    Responsable technique

    Re : formule de Neumann

    Bonjour,

    Comment Matlab saurait-il que v est un sym dans :
    y = sin(v) ;

    Une manière facile de calculer l'intégrale est de définir un vecteur v dont les valeurs sont réparties entre 0 et π/2, à calculer l'intégrande sur ces points de v, puis à estimer l'intégrale par application de la méthode des rectangles ou des trapèzes par exemple.
    Exemple :
    Code:
    nPts = 1e3 ;
    v = linspace(0, pi/2, nPts)
    y = (2*sin(v).^2-1)./sqrt(1 - b2*sin(v).^2) ;
    dv = diff(v) ;
    dv = [dv, dv(end)] ;
    integ = sum(y.*dv) ;
    Améliorable en choisissant intelligemment les points de v, le calcul du dv, la sommation (e.g. https://fr.mathworks.com/help/matlab/ref/trapz.html)
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  3. #3
    mac10

    Re : formule de Neumann

    merci beaucoup, ya des modifs a faire mais ça correspond a ce que je cherche.👍

  4. #4
    Antoane
    Responsable technique

    Re : formule de Neumann

    Bonjour,

    est-ce que ça répond à la partie codage de la question que tu as posée en physique et sur dvp.net ?
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  5. A voir en vidéo sur Futura
  6. #5
    mac10

    Re : formule de Neumann

    oui, en physique il m'ont donné la direction mathematique a suivre, pour ce que est du code, il m'ont conseillé un forum matlab, c'est ce que je vien de faire et je n'etait pas deçu. merci encore.

  7. #6
    mac10

    Re : formule de Neumann

    bonjour,
    je vais vous déranger encore une foi. voila, j'ai essayé de programmer une autre formule inductance.png avec inductance2.png. voici mon programme programme.png. le problème c'est qu'il prend une seule valeur de M (fait pas la boucle), merci.

  8. #7
    Antoane
    Responsable technique

    Re : formule de Neumann

    Bonsoir,

    Il serait plus simple que tu postes le code qu'une copie d'écran.
    Le problème est qu'ici, MM est un scalaire dont la valeur change à chaque itération : pour chaque nouvelle valeur du couple (i,j), la ligne "MM=((..." écrase la valeur précédemment calculée.
    Finalement, le code est équivalent à celui dans lequel :
    "for i=1:N0" est remplacé par "for i=N0"
    "for j=1:Nd" est remplacé par "for j=Nd
    Suivant ce que tu veux faire (je n'ai pas étudié en détail les calculs), il peut être nécessaire d'écrire "MM(i,j) = ((...", ou "M= M+MM" à chaque itération.

    Par ailleurs :
    - pourquoi utiliser la fonction @round() ?
    - est-il pertinent d'augmenter phi0 et phid à chaque itération ? ne faudrait-il pas remettre phid à zéro "de temps en temps" ?
    Plus généralement : je te conseille de commencer par implémenter des intégrales simples et calculables analytiquement (par exemple calculer l'intégrale entre 0 et 10 de x->2*x², puis une fonction de deux variables) pour prendre en main la technique en pouvant vérifier les résultats obtenus.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  9. #8
    JPL
    Responsable des forums

    Re : formule de Neumann

    Il faut encadrer le code par les balises [Code]...[/Code] pour que l’indentation soit bien respectée.
    Rien ne sert de penser, il faut réfléchir avant - Pierre Dac

  10. #9
    mac10

    Re : formule de Neumann

    bonjour,
    premièrement, j'ai utilisé la fonction @round() car j'ai des problèmes au niveau des sin() et cos() (des valeur de l'ordre de e-5 par foi de e-13).
    deuxièmement, phi0 et phid sont des angles d’intégration de 0 a 2*pi (tout le tour de la bobine) avec un pas de calcul de delta_phi0 et delta_phid d'où le delta_phi0=2*pi/N0 (N0 est le nombre de subdivision de la bobine). je sais que mon programme n'est pas totalement faux, il manque juste quelques astuces "Matlabienes" pour que ça fonctionne.

  11. #10
    Antoane
    Responsable technique

    Re : formule de Neumann

    Bonjour,

    Tout n'est effectivement pas à jeter. Le programme n'est cependant pas (seulement) faux car tu manques de compétences en Matlab, il est faux d'un point de vue algorithmique.
    C'est pourquoi je te conseille de commencer par coder des intégrales simples (i.e. d'une seule variable et calculables analytiquement, pour vérifier).

    premièrement, j'ai utilisé la fonction @round() car j'ai des problèmes au niveau des sin() et cos() (des valeur de l'ordre de e-5 par foi de e-13).
    Il y a peut-être une justification autre que tu ne donnes pas, mais ta réponse semble très ad-hoc ! pourquoi ne pas avoir écrit sin(...)+pi/4 au lieu de round(sin(...)) si ce zéro te gène tant ? les deux propositions n'ont aucun sens mathématique.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

Discussions similaires

  1. Induction de Neumann
    Par Cirrus14 dans le forum Physique
    Réponses: 6
    Dernier message: 09/03/2019, 14h35
  2. Analyse de Von Neumann 2d Polaire
    Par Forhekset dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 22/08/2011, 14h02
  3. Numerical nonlinear ode with Neumann bvp
    Par gatsu dans le forum Physique
    Réponses: 8
    Dernier message: 08/06/2009, 17h59
  4. Sondes de Von Neumann
    Par invite17d6adbf dans le forum Archives
    Réponses: 9
    Dernier message: 31/05/2005, 11h36