# Gridap.jl

Documentation of the Gridap library.

These documentation pages are under construction.

## Introduction

Gridap provides a set of tools for the grid-based approximation of partial differential equations (PDEs) written in the Julia programming language. The main motivation behind the development of this library is to provide an easy-to-use framework for the development of complex PDE solvers in a dynamically typed style without sacrificing the performance of statically typed languages. The library currently supports linear and nonlinear PDE systems for scalar and vector fields, single and multi-field problems, conforming and nonconforming finite element discretizations, on structured and unstructured meshes of simplices and hexahedra.

## How to use this documentation

The first step for new users is to visit the Getting Started page.

A set of tutorials written as Jupyter notebooks and html pages are available here.

The detailed documentation is in the Manual section.

Guidelines for developers of the Gridap project is found in the Gridap wiki page.

## Julia educational resources

A basic knowledge of the Julia programming language is needed to use the Gridap package. Here, one can find a list of resources to get started with this programming language.

- First steps to learn Julia form the Gridap wiki page.
- Official webpage docs.julialang.org
- Official list of learning resources julialang.org/learning

## Manual

- Gridap
- Gridap.Helpers
- Gridap.Io
- Gridap.Algebra
- Gridap.Arrays
- Gridap.TensorValues
- Gridap.Fields
- Gridap.Polynomials
- Gridap.ReferenceFEs
- Gridap.Geometry
- Gridap.CellData
- Gridap.Visualization
- Gridap.FESpaces
- Gridap.MultiField
- Gridap.ODEs
- Classification of ODEs and numerical schemes
- High-level API in Gridap
- Low-level implementation
- Numerical schemes formulation and implementation
- Reference
- Gridap.Adaptivity