dedalus.core.system

Classes for systems of coefficients/fields.

Module Contents

class CoeffSystem(pencil_length, domain)

Representation of a collection of fields that don’t need to be transformed, and are therefore stored as a contigous set of coefficient data, joined along the last axis, for efficient pencil and group manipulation.

Parameters
  • pencil_length (int) – Number of coefficients in a single pencil

  • domain (domain object) – Problem domain

Variables

data (ndarray) – Contiguous buffer for field coefficients

get_pencil(pencil)

Return pencil view from system buffer.

set_pencil(pencil, data)

Set pencil data in system buffer.

class FieldSystem(fields)

Collection of fields alongside a CoeffSystem buffer for efficient pencil and group manipulation.

Parameters

fields (list of field objets) – Fields to join into system

Variables
  • data (ndarray) – Contiguous buffer for field coefficients

  • fields (list) – Field objects

  • nfields (int) – Number of fields in system

  • field_dict (dict) – Dictionary of fields

  • slices (dict) – Dictionary of last-axis slice objects connecting field and system data

gather()

Copy fields into system buffer.

scatter()

Extract fields from system buffer.