warp.fem.FieldLike#

class warp.fem.FieldLike[source]#

Base class for integrable fields

__init__()#

Methods

__init__()

divergence_valid()

Whether the divergence operator is implemented for this field.

eval_arg_value(device)

Value of the field-level arguments to be passed to device functions

eval_degree(args)

Polynomial degree of the field is applicable, or hint for determination of interpolation order

eval_div_inner(args, s)

Device function evaluating the inner field divergence at a sample point

eval_div_outer(args, s)

Device function evaluating the outer field divergence at a sample point

eval_grad_inner(args, s)

Device function evaluating the inner field gradient at a sample point

eval_grad_outer(args, s)

Device function evaluating the outer field gradient at a sample point

eval_inner(args, s)

Device function evaluating the inner field value at a sample point

eval_outer(args, s)

Device function evaluating the outer field value at a sample point

fill_eval_arg(arg, device)

Fill the field-level arguments to be passed to device functions

gradient_valid()

Whether the gradient operator is implemented for this field.

notify_operator_usage(ops)

Makes the Domain aware that the operators ops will be applied

Attributes

degree

Polynomial degree of the field, used to estimate necessary quadrature order

name

EvalArg

Structure containing field-level arguments passed to device functions for field evaluation

ElementEvalArg

Structure combining geometry-level and field-level arguments passed to device functions for field evaluation

EvalArg: Struct#

Structure containing field-level arguments passed to device functions for field evaluation

ElementEvalArg: Struct#

Structure combining geometry-level and field-level arguments passed to device functions for field evaluation

eval_arg_value(device)[source]#

Value of the field-level arguments to be passed to device functions

Return type:

EvalArg

fill_eval_arg(arg, device)[source]#

Fill the field-level arguments to be passed to device functions

Parameters:

arg (FieldLike.EvalArg)

property degree: int[source]#

Polynomial degree of the field, used to estimate necessary quadrature order

property name: str[source]#
gradient_valid()[source]#

Whether the gradient operator is implemented for this field.

Return type:

bool

divergence_valid()[source]#

Whether the divergence operator is implemented for this field.

Return type:

bool

static eval_inner(args, s)[source]#

Device function evaluating the inner field value at a sample point

Parameters:
  • args (ElementEvalArg)

  • s (Sample)

static eval_grad_inner(args, s)[source]#

Device function evaluating the inner field gradient at a sample point

Parameters:
  • args (ElementEvalArg)

  • s (Sample)

static eval_div_inner(args, s)[source]#

Device function evaluating the inner field divergence at a sample point

Parameters:
  • args (ElementEvalArg)

  • s (Sample)

static eval_outer(args, s)[source]#

Device function evaluating the outer field value at a sample point

Parameters:
  • args (ElementEvalArg)

  • s (Sample)

static eval_grad_outer(args, s)[source]#

Device function evaluating the outer field gradient at a sample point

Parameters:
  • args (ElementEvalArg)

  • s (Sample)

static eval_div_outer(args, s)[source]#

Device function evaluating the outer field divergence at a sample point

Parameters:
  • args (ElementEvalArg)

  • s (Sample)

static eval_degree(args)[source]#

Polynomial degree of the field is applicable, or hint for determination of interpolation order

Parameters:

args (ElementEvalArg)

notify_operator_usage(ops)[source]#

Makes the Domain aware that the operators ops will be applied

Parameters:

ops (set[Operator])