Esse repositório tem como objetivo a entrega da atividade "Novo Algoritmo de Rouge-Kutta", referente a matéria de Cálculo para Computação (ECP03_T01).
O sistema base conta com um "console" capaz de receber comandos. A fim de separar os comandos logicamente, uma estrutura chamada Screen
foi criada, e é manuseada pela classe Application
. Para essa interação, foi utilizado o padrão de design de State.
Para o cálculo do RK4, um passo adicional teve de ser efetuado a fim de que uma função determinada pelo usuário fosse aceita. Primeiro, o programa recebe a entrada do usuário e a "quebra" em Tokens
. Cada token tem um tipo, ordem de precedência, e outras informações. Esses tokens são então enviados para o Parser
- uma implementação do algoritmo Shunting yard, inventado por Edsger Dijkstra. Esse algoritmo transforma a sequência de tokens em notação de posfixo. Com esses resultados, o algoritmo utiliza uma função de interpretação - um "Postfix stack evaluator". Essa função é utilizada pelas funções do RK4, para por fim gerar o resultado final. Esse princípio é similar ao utilizado por linguagens interpretadas.
Como especificado, essa atividade foi realizada individualmente. Entretanto, para fins de validação da minha personalidade, subscrevo abaixo minha conta e meu nome.
É possível obter uma versão do algoritmo buildada na seção de Releases. Caso queira contribuir para o projeto, siga os passos abaixo.
Esse projeto não conta com um sistema de geração de projetos, tendo em vista seu escopo limitado. Para contribuir, você precisará instalar o Visual Studio, ou criar seu próprio sistema de geração de projetos.
- Visual Studio Community
- (Opcional) Git
A fim de acessar os arquivos do projeto, primeiro você deve baixá-los. A opção mais adequada é cloná-lo utilizando o git. Entretanto, você também pode baixar o projeto clicando aqui. Para clonar o repositório em sua máquina, utilize o seguinte comando:
git clone https://github.com/DatDarkAlpaca/runge-kutta
Tendo instalado o Visual Studio, basta abrir o arquivo de solução runge-kutta.sln
e pressionar F5
para inicializar a aplicação.
Esse projeto é licenciado sob a The Unlicense - veja o arquivo de Licença para mais detalhes.