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

Calcul scientifique Python Discussion :

Erreur sur Edupython - Méthode de Monte-Carlo


Sujet :

Calcul scientifique Python

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Formateur en informatique
    Inscrit en
    Août 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2012
    Messages : 3
    Par défaut Erreur sur Edupython - Méthode de Monte-Carlo
    Bonjour,

    Lorsque je fais tourner ce programme (approximation de pi par la méthode de Monte-Carlo) j'ai ce message d'erreur que je comprends pas.
    Visiblement l'erreur vient de la fonction sqrt. Pourtant lorsque j'isole la partie du script qui la fait intervenir, pas de pb (le quart de cercle est bien tracé).

    Merci de votre aide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    """
    UNE APPROXIMATION DE pi PAR LA
    METHODE DE MONTE-CARLO
    """
     
    """
    Visualisation de la question précédente
    """
     
    from math import*
    from random import*
    import matplotlib.pyplot as plt
     
    N=int(input("combien de simulations souhaitez-vous faire?"))
    # Tracé du quart de cercle
    h=1/N
    x=[k*h for k in range (N)]
    y=[sqrt(1-(k*h)**2) for k in range (N)]
     
    X=[]
    Y=[]
    Q=0
     
    for i in range(N):
        X.append(random())
        Y.append(random())
        if (X[i]**2+Y[i]**2)<1:
            plt.scatter(X,Y,"b.",ms=3)  # pour des points du nuage (X;Y) non reliés
            Q=Q+1
        else:
            plt.scatter(X,Y,"r.",ms=3)
     
    frequence=Q/N
    print(frequence)
    approx_pi=4*frequence
    print("une approximation de pi est ",approx_pi)
     
    plt.axis(Xmin=0,Xmax=1,Ymin=0,Ymax=1)
    plt.plot(x,y)       # pour des points du nuage (x;y) reliés par des segments
    plt.scatter(X,Y,"b.",ms=3)    # pour des points du nuage (X;Y) non reliés
     
    title="Monte-Carlo pour ",N," simulations: pi égal " ,approx_pi, " environ"
    plt.title(title)
    plt.grid()
    plt.show()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    *** Console de processus distant Réinitialisée *** 
    Traceback (most recent call last):
      File "Z:\Users\christophe\Documents\WORK\COURS MATHS\ - LYCEE\1Spé_1920\11. Python\chapitre_TP3_p287  PI Monte Carlo\chap_9_TP3p287_Q2_perso_bis -c.py", line 31, in <module>
        plt.scatter(X,Y,"r.",ms=3)
      File "C:\EduPython\App\lib\site-packages\matplotlib\pyplot.py", line 3475, in scatter
        edgecolors=edgecolors, data=data, **kwargs)
      File "C:\EduPython\App\lib\site-packages\matplotlib\__init__.py", line 1867, in inner
        return func(ax, *args, **kwargs)
      File "C:\EduPython\App\lib\site-packages\matplotlib\axes\_axes.py", line 4334, in scatter
        alpha=alpha
      File "C:\EduPython\App\lib\site-packages\matplotlib\collections.py", line 929, in __init__
        self.set_sizes(sizes)
      File "C:\EduPython\App\lib\site-packages\matplotlib\collections.py", line 902, in set_sizes
        scale = np.sqrt(self._sizes) * dpi / 72.0 * self._factor
    TypeError: ufunc 'sqrt' not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ''safe''
    >>>
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [AC-2003] Erreur sur TransferText méthode
    Par PacoE dans le forum VBA Access
    Réponses: 11
    Dernier message: 24/01/2013, 10h53
  2. Méthode de Monté Carlo, pour le nombre Pi, sous Vba
    Par Quentin21000 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/02/2012, 19h47
  3. Calcul d'intégrale par la méthode de Monte Carlo
    Par physicslover dans le forum Fortran
    Réponses: 5
    Dernier message: 29/01/2009, 11h02
  4. Erreurs sur les méthodes ApplicationClass et Application
    Par Invité dans le forum Windows Forms
    Réponses: 5
    Dernier message: 29/04/2008, 17h39
  5. [PHPMailer] Erreur sur la méthode isHtml
    Par Curby dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 27/03/2007, 23h16

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