Skip to main content
`Ctrl`+`K`

# PetscGaussLobattoLegendreElementAdvectionCreate

computes the advection operator for a single 1d GLL element

## Synopsis

    #include "petscdt.h"
    PetscErrorCode PetscGaussLobattoLegendreElementAdvectionCreate(PetscInt n, PetscReal nodes[], PetscReal weights[], PetscReal ***AA)

Not Collective

## Input Parameters

- n - the number of GLL nodes

- nodes - the GLL nodes, of length `n`

- weights - the GLL weights, of length `n`

## Output Parameter

- AA - the stiffness element, of dimension `n` by `n`

## Notes

Destroy this with `PetscGaussLobattoLegendreElementAdvectionDestroy()`

This is the same as the Gradient operator multiplied by the diagonal mass matrix

You can access entries in this array with AA[i][j] but in memory it is stored in contiguous memory, row-oriented

## See Also

`PetscDTGaussLobattoLegendreQuadrature()`, `PetscGaussLobattoLegendreElementLaplacianCreate()`, `PetscGaussLobattoLegendreElementAdvectionDestroy()`

## Level

beginner

## Location

src/dm/dt/interface/dt.c

## Examples

src/tao/unconstrained/tutorials/spectraladjointassimilation.c
src/tao/unconstrained/tutorials/burgers_spectral.c
src/ts/tutorials/ex50.c

Index of all DT routines
Table of Contents for all manual pages
Index of all manual pages