Skip to content

luizpbraga/fortran4duck

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 

Repository files navigation

Fortran4duck 🦆🇧🇷


Sobre o canal

  • Por que uma playlist de $Fortran$?
    • Fortran IS ALIVE! Legacy Code é um saco e nós, simpatizantes da linguagem, temos o dever de renovar/modernizar nossos códigos. Meu objetivo aqui é construir um mundo SEM GOTO.
  • Por que Fortran4duck?
    • Eu achei que $Fortran4fuc*$ seria melhor, porém arriscado.
  • O que esperar dos vídeos?
    • Nos vídeos temos exemplos bobos e nada poéticos. Temos $meme$ e piadas $ruins$.

"Panela velha é que faz comida boa" - Usuários de Fortran.

Neste repositório...

Aqui você encontra alguns códigos feitos durante a realização dos vídeos do canal $Fortran4duck$. Eles ainda não estão organizados/comentados, mas eu pretendo deixar tudo em ondem no futuro.

NÃO gosta de ler? Ótimo, assista aos meus vídeos. É de graça!

Se você é moderninho(a), pode me seguir no intagram @fortran4duck. Temos fotinhos de códigos bonitos lá...

GET THE CODE
  $ git clone https://github.com/luizpbraga/fortran4duck
  $ cd fortran4duck/modernfortran

Contribuições são bem-vindas! Use os comentários do Youtube ou o Github pra deixar sua dúvida/crítica/dinheiro/reza/colaboração.

Conteúdos
  • Base:

    • Instalando o compilador gfortran e criando o primeiro programa (Link)
    • Declaração de variáveis escalares (Link).
    • Implicit None (Link)
    • Kind e precisão (Link)
    • Formatação Elegante de Output (Link)
    • NameList
  • Vetores:

    • Operações Básicas (Link)
    • Slices/Subarrays (Link)
  • Matrizes:

    • Operações Básicas (Link)
    • Funções intrínsecas (Link)
    • Funções PACK, UNPACK e produto de matrizes (Link)
    • Contiguous Arrays e Pointers Arrays
  • Strings

    • Manipulação de Strings (Link)
  • Números Complexos

    • Declaração e uso
  • Data

    • Declaração e uso
  • Enumerator (ISO 202X)

  • Exemplos

    • Gnuplot + Fortran (Link)
    • OOP + funções quadráticas (Link)
  • Controw Flow

    • Loop DO (Link)
    • If, Else e keywords Cycle, Exit e Stop (Link)
    • Select Case (Link)
    • Where (Link)
    • Select Rank e Deferred Shape
    • Select Type
    • Block e Assocciate
    • Do Concurrent
    • Do While, GOTO, FORALL
  • Procedures: Funções e Sub-rotinas

    • Funções, INTENT e VALUE (Link)
    • Função Recursiva, Parâmetros Opcionais e Return (Link)
    • Subrotinas (Link)
    • Variáveis Globais, SAVE, Funções Externas, Interfaces e PURE procedures (Link)
    • Interface Abstrata e Overload de Funções (Link)
  • FILES I/O

    • Criando e Lendo Arquivos (link)
    • INQUERE e OPEN (link)
    • Lendo Arquivos CSV e JSON Files
    • Async ...
  • Dynamic Memory

    • Arrays e Strings Dinâmicas (Link)
    • Dynamic Memory Management (Link)
    • Pointers: declaração e uso Super Básico (Link)
    • Procedures Pointers e Derived Types (OOP)
  • Programação Orientada a Objetos e Módulos (OOP)

    • Definindo Derived Types: STRUCT? (Link)
    • Type-bound Procedures e Módulos (Link)
    • Operadores e Overload (Link)
    • Derived Types Paramétricas, Associate e Block Statement (Link
    • Procedures Pointers
    • Select Type e Class(*)
    • Generic Binding
    • Overriding Type Bound Procedures
    • Abstract Types e Deferred Binding
    • Input/output genérico
  • FPM: Fortran Package Manager

    • Introdução ao FPM (+ STDLIB e Fortls) (Link)
    • Configurando seu Pacote e lincando com LAPACK/BLAS (Link)
    • Explorando a STDLIB
  • Modules

    • Introdução
    • Public, Private e Protected. Interface? Nunca mais!
    • Importando parâmetros, operadores e funções
    • SubModulos
  • Error handling and Generics

    • Error Handling $Sucks$
    • Generics $Sucks$. Não tem ENUM?
  • Intel

    • Instalando o ifort, MKL e MPI via Intel HPC Toolkit (Link)
  • Fortran-C Binding

    • iso_fortran_env: C-binding
    • f2py: Python-binding
  • Programação Paralela

    • OpenMPI
    • Coarrays

About

Códigos dos vídeos do canal fortran4duck

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published