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)

Make the Domain aware that the operators ops will be applied.

Attributes

degree

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

name

Unique name of the field instance.

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]#

Unique name of the field instance.

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]#

Make the Domain aware that the operators ops will be applied.

Parameters:

ops (set[Operator])