Data Structures | Namespaces | Functions

/export/development/ViennaMath/viennamath/runtime/equation.hpp File Reference

Defines the ViennaMath runtime equation object and provides several generator functions for convenience. More...

#include <ostream>
#include "viennamath/forwards.h"

Go to the source code of this file.

Data Structures

class  rt_equation< InterfaceType >
 Runtime representation of a equation by a left hand side and a right hand side expresssion. More...

Namespaces

namespace  viennamath
 

The main ViennaMath namespace. All types and functions for the user reside here.


Functions

template<typename InterfaceType >
std::ostream & operator<< (std::ostream &stream, rt_equation< InterfaceType > const &e)
 Convenience operator overload for streaming a runtime equation to std::cout or any other STL-compatible output stream.
template<typename NumericT , typename InterfaceType , typename RHSType >
rt_equation< InterfaceType > make_equation (typename InterfaceType::numeric_type lhs, rt_constant< NumericT, InterfaceType > const &rhs)
 Generator for an equation with a (floating point) constant as left hand side and a ViennaMath runtime constant as right hand side.
template<typename InterfaceType >
rt_equation< InterfaceType > make_equation (typename InterfaceType::numeric_type lhs, rt_variable< InterfaceType > const &rhs)
 Generator for an equation with a (floating point) constant as left hand side and a ViennaMath runtime variable as right hand side.
template<id_type id>
rt_equation make_equation (default_numeric_type lhs, ct_variable< id > const &rhs)
 Generator for an equation with a (floating point) constant as left hand side and a ViennaMath compiletime variable as right hand side.
template<typename InterfaceType >
rt_equation< InterfaceType > make_equation (typename InterfaceType::numeric_type lhs, rt_unary_expr< InterfaceType > const &rhs)
 Generator for an equation with a (floating point) constant as left hand side and a ViennaMath runtime unary expression as right hand side.
template<typename InterfaceType >
rt_equation< InterfaceType > make_equation (typename InterfaceType::numeric_type lhs, rt_binary_expr< InterfaceType > const &rhs)
 Generator for an equation with a (floating point) constant as left hand side and a ViennaMath runtime binary expression as right hand side.
template<typename InterfaceType >
rt_equation< InterfaceType > make_equation (typename InterfaceType::numeric_type lhs, rt_expr< InterfaceType > const &rhs)
 Generator for an equation with a (floating point) constant as left hand side and a ViennaMath runtime expression wrapper as right hand side.
template<typename NumericT , typename InterfaceType , typename RHSType >
rt_equation< InterfaceType > make_equation (rt_constant< NumericT, InterfaceType > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath runtime constant as left hand side.
template<typename InterfaceType , typename RHSType >
rt_equation< InterfaceType > make_equation (rt_variable< InterfaceType > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath runtime variable as left hand side.
template<typename InterfaceType , typename RHSType >
rt_equation< InterfaceType > make_equation (rt_function_symbol< InterfaceType > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath runtime function symbol as left hand side.
template<typename InterfaceType , typename RHSType >
rt_equation< InterfaceType > make_equation (rt_unary_expr< InterfaceType > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath runtime unary expression as left hand side.
template<typename InterfaceType , typename RHSType >
rt_equation< InterfaceType > make_equation (rt_binary_expr< InterfaceType > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath runtime binary expression as left hand side.
template<typename InterfaceType , typename RHSType >
rt_equation< InterfaceType > make_equation (rt_expr< InterfaceType > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath runtime expression wrapper as left hand side.
template<typename LHS , typename OP , typename RHS , typename RHSType >
rt_equation make_equation (ct_binary_expr< LHS, OP, RHS > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath compiletime binary expression as left hand side.
template<typename LHS , typename OP , typename RHSType >
rt_equation make_equation (ct_unary_expr< LHS, OP > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath compiletime unary expression as left hand side.
template<long val, typename RHSType >
rt_equation make_equation (ct_constant< val > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath compiletime constant as left hand side.
template<typename TAG , typename RHSType >
rt_equation make_equation (ct_function_symbol< TAG > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath compiletime function symbol as left hand side.
template<id_type id, typename RHSType >
rt_equation make_equation (ct_variable< id > const &lhs, RHSType const &rhs)
 Generator for an equation with a ViennaMath compiletime variable as left hand side.

Detailed Description

Defines the ViennaMath runtime equation object and provides several generator functions for convenience.