|
DOLFINx 0.12.0.0
DOLFINx C++
|
Factories for finite element forms from UFCx input. More...
#include "Constant.h"#include "Form.h"#include "Function.h"#include "FunctionSpace.h"#include "integration_domains.h"#include "kernel.h"#include <algorithm>#include <array>#include <cassert>#include <concepts>#include <cstddef>#include <cstdint>#include <cstdlib>#include <dolfinx/common/types.h>#include <dolfinx/mesh/EntityMap.h>#include <dolfinx/mesh/Mesh.h>#include <dolfinx/mesh/Topology.h>#include <dolfinx/mesh/utils.h>#include <format>#include <functional>#include <map>#include <memory>#include <numeric>#include <ranges>#include <span>#include <stdexcept>#include <string>#include <tuple>#include <ufcx.h>#include <utility>#include <vector>

Go to the source code of this file.
Namespaces | |
| namespace | dolfinx |
| Top-level namespace. | |
| namespace | dolfinx::fem |
| Finite element method functionality. | |
Functions | |
| std::vector< std::string > | get_coefficient_names (const ufcx_form &ufcx_form) |
| std::vector< std::string > | get_constant_names (const ufcx_form &ufcx_form) |
| Get the name of each constant in a UFC form. | |
| template<dolfinx::scalar T, std::floating_point U = scalar_value_t<T>> | |
| Form< T, U > | create_form_factory (const std::vector< std::reference_wrapper< const ufcx_form > > &ufcx_forms, const std::vector< std::shared_ptr< const FunctionSpace< U > > > &spaces, const std::vector< std::shared_ptr< const Function< T, U > > > &coefficients, const std::vector< std::shared_ptr< const Constant< T > > > &constants, const std::map< IntegralType, std::vector< std::pair< std::int32_t, std::span< const std::int32_t > > > > &subdomains, const std::vector< std::reference_wrapper< const mesh::EntityMap > > &entity_maps, std::shared_ptr< const mesh::Mesh< U > > mesh=nullptr) |
| Create a Form from UFCx input with coefficients and constants passed in the required order. | |
| template<dolfinx::scalar T, std::floating_point U = scalar_value_t<T>> | |
| Form< T, U > | create_form (const ufcx_form &ufcx_form, const std::vector< std::shared_ptr< const FunctionSpace< U > > > &spaces, const std::map< std::string, std::shared_ptr< const Function< T, U > > > &coefficients, const std::map< std::string, std::shared_ptr< const Constant< T > > > &constants, const std::map< IntegralType, std::vector< std::pair< std::int32_t, std::span< const std::int32_t > > > > &subdomains, const std::vector< std::reference_wrapper< const mesh::EntityMap > > &entity_maps, std::shared_ptr< const mesh::Mesh< U > > mesh=nullptr) |
| Create a Form from UFC input with coefficients and constants resolved by name. | |
| template<dolfinx::scalar T, std::floating_point U = scalar_value_t<T>> | |
| Form< T, U > | create_form (ufcx_form *(*fptr)(), const std::vector< std::shared_ptr< const FunctionSpace< U > > > &spaces, const std::map< std::string, std::shared_ptr< const Function< T, U > > > &coefficients, const std::map< std::string, std::shared_ptr< const Constant< T > > > &constants, const std::map< IntegralType, std::vector< std::pair< std::int32_t, std::span< const std::int32_t > > > > &subdomains, const std::vector< std::reference_wrapper< const mesh::EntityMap > > &entity_maps, std::shared_ptr< const mesh::Mesh< U > > mesh=nullptr) |
| Create a Form using a factory function that returns a pointer to a ufcx_form. | |
Factories for finite element forms from UFCx input.