simulation des feux de foret
Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

simulation des feux de foret



  1. #1
    Redne

    simulation des feux de foret


    ------

    Bonjour
    Je me suis lancé depuis un certain temps dans la programmation python. Alors, mon message concerne une vulgaire ébauche de la simulation des feux de foret. L'objectif du programme que je vais vous montrer est de simuler la propagation du feu à partir d'un foyer et surtout l'état final de la foret après X générations. Je rencontre deux problèmes : list out of range, je sais ce que çela signifie mais je n'arrive pas à le fixer, et la représentation graphique de la matrice finale (par exemple les cellules ayant pour valeur 100 en noir et ceux pour la valeur 1, vert. En gros je souhaite un carré avec du vert et du noir) et pour l'instant pas besoin de mode intéractif.
    Pour résumer, la fonction gener, génère une foret avec UN FOYER.
    L'autre fonction vérifie si un arbre voisin est en feu, d'abord sur chaque bord de la matrice puis au milieu.
    Je vous remercie d'avance pour votre aide et vos critiques qui me seront d'une grande utilité.

    LA FAMEUSE EBAUCHE

    Code:
    import matplotlib
    import matplotlib.pylab as plt
    from matplotlib import cm
    import numpy as np
    from random import *
    import copy
     
     
     
     
    def gener(dim,p,l,m):
      B=[[0 for j in range(dim)]for i in range(dim)]
      for i in range(1,dim-1):
        for j in range(1,dim-1):
            if random()<p:
             B[i][j]=1
      B[l][m]=100
      return B 
     
    def foret(B0,X):
      k=-1 
      B=copy.deepcopy(B0)
      while k<X+1 :
            k=k+1
            for i in range(len(B)):
               for j in range(len(B[0])):
                    if B[0][1]+B[1][1]+B[1][0]>=100 :
                       B[0][0]=100
                    elif B[0][len(B[0])-1]+B[1][1]+B[0][len(B[0])]+B[1][len(B[0])-1]>=100 :
                         B[0][len(B[0])]=100
                    elif B[len(B)][len(B[0])-1]+B[len(B)-1][len(B[0])-1]+B[len(B)-1][len(B[0])]>=100 :
                         B[len(B)][len(B[0])]=100
                    elif B[len(B)][1]+B[len(B)-1][1]+B[len(B)-1][0]>=100 :
                         B[len(B)][1]=100
                    elif B[len(B)][j+1]+B[len(B)][j-1]+B[len(B)-1][j-1]+B[len(B)-1][j]+B[len(B)-1][j+1]>=100 :
                         B[len(B)][j]=100
                    elif B[j-1][len(B[0])-1]+B[j-1][len(B[0])]+B[j+1][len(B[0])]+B[j][len(B[0])-1]+B[j+1][len(B[0])-1]>=100 :
                         B[len(B)][j]=100
                    elif B[0][j+1]+B[0][j-1]+B[1][j-1]+B[1][j]+B[1][j+1]>=100 :
                         B[0][j]=100
                    elif B[i][j+1]+B[i][j-1]+B[i+1][j-1]+B[i+1][j+1]+B[i-1][j+1]+B[i-1][j-1]+B[i-1][j]>=100 :
                         B[i][j]=100
                    elif         B[i][len(B[0])-1]+B[i-1][len(B[0])]+B[i-1][len(B[0])-1]+B[i+1][len(B[0])-1]+B[i+1][len(B[0])]>=100 :
                         B[i][len(B[0])]=100
      
      return B

    -----
    Dernière modification par Antoane ; 08/06/2017 à 07h15. Motif: Ajout balises code

  2. #2
    Redne

    Re : simulation des feux de foret

    Je sais pour l'indentation....

  3. #3
    Antoane
    Responsable technique

    Re : simulation des feux de foret

    Bonjour,

    Avec les balises [code] ici ton code[/code] (bouton # de l'éditeur de messages avancé), c'est plus lisible et préserve l'indentation.

    Bonne journée.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

Discussions similaires

  1. TIPE: modélisation des feux de forêt.
    Par invited08e29f3 dans le forum TPE / TIPE et autres travaux
    Réponses: 2
    Dernier message: 27/05/2008, 19h07
  2. Feux de forêt
    Par fabien024 dans le forum Mathématiques du collège et du lycée
    Réponses: 5
    Dernier message: 01/01/2008, 16h26
  3. tpe feux de forêt
    Par invited2ea23fe dans le forum TPE / TIPE et autres travaux
    Réponses: 1
    Dernier message: 10/10/2005, 17h05
  4. Feux de forêt : Doit-on s'alarmer ?
    Par endiendo dans le forum Discussions scientifiques
    Réponses: 6
    Dernier message: 27/05/2004, 13h59