SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
operands.hpp File Reference

This file defines the Operand type, which represents a term and an operation to be applied to that term in the context of a form. More...

#include <concepts>
#include <type_traits>
#include "serif/discretization/blocks/concepts.hpp"
Include dependency graph for operands.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  serif::discretization::forms::Operation
 The Operation struct defines a set of operations that can be applied to terms in the context of a form. These operations include value, gradient, divergence, curl, and normal trace. Similar to the statement I made at the top of forms.hpp, if you are a developer looking to extend the mathematical capabilities of SERiF this is a place you should be looking early on. More...
 
struct  serif::discretization::forms::Operation::Value
 Operation tag for evaluating a value. More...
 
struct  serif::discretization::forms::Operation::Gradient
 Operation tag for evaluating a gradient. More...
 
struct  serif::discretization::forms::Operation::Divergence
 Operation tag for evaluating a divergence. More...
 
struct  serif::discretization::forms::Operation::Curl
 Operation tag for evaluating a curl. More...
 
struct  serif::discretization::forms::Operation::NormalTrace
 Operation tag for evaluating the normal flux along a boundary. More...
 
struct  serif::discretization::forms::Operand< TermT, OperationT >
 Compile time representation of some operand. An operand associates a term to an operation type (e.g. the gradient of gravitational potential where gravitational potential is the term and gradient is the operation). More...
 

Namespaces

namespace  serif
 
namespace  serif::discretization
 
namespace  serif::discretization::forms
 

Concepts

concept  serif::discretization::forms::IsOperation
 
concept  serif::discretization::forms::IsOperand
 Concept to validate a valid operand. An operand is valid if the following conditions are satisfied.
 

Detailed Description

This file defines the Operand type, which represents a term and an operation to be applied to that term in the context of a form.

Author
Emily M. Boudreaux

An Operand is a compile-time type that encapsulates a term and an operation to be applied to that term. The operation can be one of several predefined operations, such as value, gradient, divergence, curl, or normal trace. The Operand type is used in the definition of forms to specify the terms and operations involved in the form.