diff --git "a/Ressources/DIAPO - R\303\251\303\251criture d\342\200\231un mailleur en hydraulique \303\240 surface libre.pdf" "b/Ressources/DIAPO - R\303\251\303\251criture d\342\200\231un mailleur en hydraulique \303\240 surface libre.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..c18b7b55a303e22e604f456ee81d1124b6d472c3 Binary files /dev/null and "b/Ressources/DIAPO - R\303\251\303\251criture d\342\200\231un mailleur en hydraulique \303\240 surface libre.pdf" differ diff --git a/Ressources/Images.zip b/Ressources/Images.zip new file mode 100644 index 0000000000000000000000000000000000000000..ab97e21ff7b86f1217d103e5deed0d5834655145 Binary files /dev/null and b/Ressources/Images.zip differ diff --git "a/Ressources/Rapport de Stage - R\303\251\303\251criture d'un mailleur en hydraulique \303\240 surface libre - 2022 - INRAE - ESIEE - MAHMOUD--LAMY.pdf" "b/Ressources/Rapport de Stage - R\303\251\303\251criture d'un mailleur en hydraulique \303\240 surface libre - 2022 - INRAE - ESIEE - MAHMOUD--LAMY.pdf" new file mode 100644 index 0000000000000000000000000000000000000000..a9feec825aa91dc134e866aaafa72a3e84c157db Binary files /dev/null and "b/Ressources/Rapport de Stage - R\303\251\303\251criture d'un mailleur en hydraulique \303\240 surface libre - 2022 - INRAE - ESIEE - MAHMOUD--LAMY.pdf" differ diff --git a/scripts/make_tests_incorrect.py b/scripts/make_tests_incorrect.py deleted file mode 100644 index cd0a396527903e42e6c43673c264f7eb19fb7f24..0000000000000000000000000000000000000000 --- a/scripts/make_tests_incorrect.py +++ /dev/null @@ -1,201 +0,0 @@ -### IMPORTS ### - -import os -import time -from memory_profiler import memory_usage -import subprocess - -### VARIABLES ### - -responses_list = [] # liste des réponses à utiliser dans le test -responses_name_list = [] # liste des réponses sans les extensions - -heap = [([],[]),([],[])] -heaps = [] -data = [0,0] # tableau buffer des données -datas = [] # comprend le temps d'exécution et l'espace mémoire utilisé -data_file = None # stock le fichier ouvert -time_file = None # stock le fichier ouvert -temporary = 0 # variable provisoire mal codée -time = 0 # pareil qu'au dessus -buffer_ = 0 # compteur -iterator = 0 # iterateur - -a=0 -b=0 -c=0 -d=0 - -### CODE ### - -# code exécuté depuis ./scripts -os.chdir("..") # on revient à la racine du projet - -# on compile les programmes fortran -try : - subprocess.call("gfortran -cpp secmaf.f -o secma_old", shell=True) - subprocess.call("gfortran -cpp -DFRA realloc1D.f90 module_variables.f90 secma.f90 -o secma_new", shell=True) -except subprocess.CalledProcessError as error : - print(error) - -try : - os.chdir("datas/reponses") # on se déplace dans le dossier créer - responses_list = os.listdir('.') - os.chdir("../..") -except OSError as error : - # on arrive pas à se déplacer => print error - print(error) - -try : - os.mkdir("tests") # on créer un dossier de tests - os.chdir("tests") # on se déplace dans le dossier créer -except OSError as error : - # erreur fichier existe déjà => on fait rien - # on arrive pas à se déplacer => print error - print(error) - -if responses_list != None : - for response in responses_list : - try : - responses_name_list.append(os.path.splitext(response)[0]) - except OSError as error : - print(error) - -if responses_name_list != None : - try : - os.mkdir("results_of_test") # on créer un dossier pour les résultats - except OSError as error : - print(error) - buffer_ = 0 - for response_name, response in zip(responses_name_list, responses_list) : - try : - os.mkdir(response_name) # on créer un dossier pour le test - os.chdir(response_name) # on se déplace dans le dossier créer - os.mknod("output_old.txt") - os.mknod("output_new.txt") - except OSError as error : - print(error) - try : - try : - result_file = open("../../datas/reponses/" + response) - result_file = result_file.readlines() - except IOError as error : - print(error) - - # EXECUTION OLD - subprocess.call('valgrind --log-file="output_old.txt" ../../secma_old < ../../datas/reponses/' + response, shell=True) - subprocess.call("mv " + result_file[1][:-1] + " results_old_" + response_name, shell=True) - subprocess.call('valgrind --tool=massif ../../secma_old < ../../datas/reponses/' + response, shell=True) - subprocess.call("mv massif.out.* data_analysis_old_" + response_name + ".txt", shell=True) - #heap - try : - data_file = open("data_analysis_old_" + response_name + ".txt", "r") - data_file = data_file.readlines() - except IOError as error : - print(error) - for iterator in range(len(data_file)) : - if "snapshot=" in data_file[iterator] : - heap[0][0].append(int(data_file[iterator+3].split("=")[-1][:-1])) - heap[0][1].append(int(data_file[iterator+4].split("=")[-1][:-1])) - #stack - try : - data_file = open("output_old.txt", "r") - data_file = data_file.readlines() - time_file = open("time_old.txt", "r") - time_file = time_file.readlines() - time_file = time_file[0].split(" ") - if time_file[2] == '' : - time_file = time_file[3][:-1] - temporary = time_file[:-6].split(".") - time = (float(temporary[0]) + (float(temporary[1])/(10**(len(temporary[1]))))) / (10**(float(time_file[-1]))) - time = str(time) - else : - time = time_file[2] - except IOError as error : - print(error) - for iterator in range(len(data_file)) : - if "HEAP SUMMARY:" in data_file[iterator] : - data[0] = [ time, # temps d'exécution de secma_old - data_file[iterator+1].split(" ")[9], # octets utilisé à la sortie - data_file[iterator+1].split(" ")[12], # blocks utilisé à la sortie - data_file[iterator+2].split(" ")[6], # allocation réalisée - data_file[iterator+2].split(" ")[8], # allocation déallouée - data_file[iterator+2].split(" ")[10]] # octets alloués - subprocess.call("mv " + result_file[1][:-1] + " results_old_" + response_name, shell=True) - - # EXECUTION NEW - subprocess.call('valgrind --log-file="output_new.txt" ../../secma_new < ../../datas/reponses/' + response, shell=True) - subprocess.call("mv " + result_file[1][:-1] + " results_new_" + response_name, shell=True) - subprocess.call('valgrind --tool=massif ../../secma_new < ../../datas/reponses/' + response, shell=True) - subprocess.call("mv massif.out.* data_analysis_new_" + response_name + ".txt", shell=True) - #heap - try : - data_file = open("data_analysis_new_" + response_name + ".txt", "r") - data_file = data_file.readlines() - except IOError as error : - print(error) - for iterator in range(len(data_file)) : - if "snapshot=" in data_file[iterator] : - heap[1][0].append(int(data_file[iterator+3].split("=")[-1][:-1])) - heap[1][1].append(int(data_file[iterator+4].split("=")[-1][:-1])) - #stack - try : - data_file = open("output_new.txt", "r") - data_file = data_file.readlines() - time_file = open("time_new.txt", "r") - time_file = time_file.readlines() - time_file = time_file[0].split(" ") - if time_file[2] == '' : - time_file = time_file[3][:-1] - temporary = time_file[:-6].split(".") - time = (float(temporary[0]) + (float(temporary[1])/(10**(len(temporary[1]))))) / (10**(float(time_file[-1]))) - time = str(time) - else : - time = time_file[2] - except IOError as error : - print(error) - - for iterator in range(len(data_file)) : - if "HEAP SUMMARY:" in data_file[iterator] : - data[1] = [ time, # temps d'exécution de secma_new - data_file[iterator+1].split(" ")[9], # octets utilisé à la sortie - data_file[iterator+1].split(" ")[12], # blocks utilisé à la sortie - data_file[iterator+2].split(" ")[6], # allocation réalisée - data_file[iterator+2].split(" ")[8], # allocation déallouée - data_file[iterator+2].split(" ")[10]] # octets alloués - subprocess.call("mv " + result_file[1][:-1] + " results_new_" + response_name, shell=True) - a=max(heap[0][0]) - b=max(heap[0][1]) - c=max(heap[1][0]) - d=max(heap[1][1]) - heaps.append( [[a,b],[c,d]] ) - datas.append( [data[0], data[1]] ) - subprocess.call("diff results_old_" + response_name + " results_new_" + response_name + " > ../results_of_test/result_" + response_name + ".txt", shell=True) - except subprocess.CalledProcessError as error : - print(error) - try : - os.chdir("..") # on se déplace dans le dossier tests créer - except OSError as error : - print(error) - -print("") -for response_name,element in zip(responses_name_list,range(len(datas)) ) : - print("Cas : " + response_name) - - print("temps d'exécution de l'ancienne version de secma : " + str(round(float(datas[element][0][0]),6)) + " secondes") - print("A la sortie on utilise encore " + datas[element][0][1] + " octets dans un total de " + datas[element][0][2] + " blocks") - print("Le programme a réalisé " + datas[element][0][3] + " allocations et en a libéré " + datas[element][0][4]) - print("En tout il a alloué " + datas[element][0][5] + " octets de mémoire dans la pile") - print("En tout il a alloué " + str(heaps[element][0][0]) + " octets de mémoire dans le tas") - print("Le tas maximum alloué est de " + str(heaps[element][0][1]) + " octets de mémoire") - - print("temps d'exécution de la nouvelle version de secma : " + str(round(float(datas[element][1][0]),6)) + " secondes") - print("A la sortie on utilise encore " + datas[element][1][1] + " octets dans un total de " + datas[element][1][2] + " blocks") - print("Le programme a réalisé " + datas[element][1][3] + " allocations et en a libéré " + datas[element][1][4]) - print("En tout il a alloué " + datas[element][1][5] + " octets de mémoire dans la pile") - print("En tout il a alloué " + str(heaps[element][1][0]) + " octets de mémoire dans le tas") - print("Le tas maximum alloué est de " + str(heaps[element][1][1]) + " octets de mémoire") - print("") - - -