Skip to content
/ PICME Public

Códigos do Projeto PICME sobre resolução de sistemas lineares.

Notifications You must be signed in to change notification settings

Propato/PICME

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Programa de Iniciação Científica e Mestrado

Aqui estão os códigos do Projeto do PICME na UFES, feitos por David Propato com auxílio do professor Fabiano Petronetto.

O projeto consiste no estudo de sistemas lineares e suas resoluções aplicadas em códigos (nesse caso, em C), focando inicialmente nos métodos LU e Cholesky e depois nos métodos iterativos de Gauss-Jacobi e Gauss-Seidel.

Analisando também os vetores soluções gerados nos métodos iterativos antes de se chegar no vetor solução final, analisando suas normas e como progridem ao longo da execução do código e da solução do sistema.

Nos arquivos se encontra:

  • A pasta /Entradas com as matrizes A e vetores b e as dimensões em .txt (Ax = b) para serem lidos.
  • Uma pasta GabaritosAproximados com vetores solução do sistema (valores são aproximações).
  • E as pastas src e include, que contém os arquivos .c e .h dos métodos
  • E o makefile, com as seguintes regras:
  • E tambem um Arquivo Excel com tabelas das normas dos vetores soluções gerados nos loops dos métodos GJ e GS, junto da norma unica dos métodos LU e C, formando gráficos com os dados desses vetores para as 3 matrizes testes.

Makefile

  • make all carrega todos .o e executaveis, criando pastas para armazena-los e pastas de saida para cada método.
  • make run executa os códigos, armazenando um .txt com o vetor solução na pasta determinada de cada método e gerando um .txt com dados sobre os métodos, tendo o tempo que levou para terminar a execução de cada método e a norma do vetor resultante final, no caso de GJ e GS, é escrito também a quantidade de loops até encerrar a execução.
  • make clean remove todas as pastas e arquivos gerados.
  • make val executa com o valgrind para checagem de vazamentos de memória.

Ferramentas utilizadas

Icone C Icone GNU Makefile Icone Git
C GNU Makefile Git
by David Propato @Propato