You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
143 lines
5.9 KiB
143 lines
5.9 KiB
// This file is part of Bertini 2.
|
|
//
|
|
// function_tree.hpp is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation, either version 3 of the License, or
|
|
//(at your option) any later version.
|
|
//
|
|
// function_tree.hpp is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with function_tree.hpp. If not, see <http://www.gnu.org/licenses/>.
|
|
//
|
|
// Copyright(C) 2015 - 2021 by Bertini2 Development Team
|
|
//
|
|
// See <http://www.gnu.org/licenses/> for a copy of the license,
|
|
// as well as COPYING. Bertini2 is provided with permitted
|
|
// additional terms in the b2/licenses/ directory.
|
|
|
|
// individual authors of this file include:
|
|
// silviana amethyst, University of Wisconsin Eau Claire
|
|
// jeb collins, west texas a&m
|
|
|
|
/**
|
|
\file function_tree.hpp
|
|
|
|
\brief Collects the various header files which define the Bertini2 function tree
|
|
node types.
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "function_tree/node.hpp"
|
|
#include "function_tree/operators/arithmetic.hpp"
|
|
#include "function_tree/operators/operator.hpp"
|
|
#include "function_tree/operators/trig.hpp"
|
|
#include "function_tree/roots/function.hpp"
|
|
#include "function_tree/roots/jacobian.hpp"
|
|
#include "function_tree/simplify.hpp"
|
|
#include "function_tree/symbols/linear_product.hpp"
|
|
#include "function_tree/symbols/number.hpp"
|
|
#include "function_tree/symbols/special_number.hpp"
|
|
#include "function_tree/symbols/symbol.hpp"
|
|
#include "function_tree/symbols/variable.hpp"
|
|
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Node)
|
|
|
|
BOOST_SERIALIZATION_ASSUME_ABSTRACT(bertini::node::Node)
|
|
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Handle)
|
|
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Symbol)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::NamedSymbol)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Number)
|
|
|
|
BOOST_SERIALIZATION_ASSUME_ABSTRACT(bertini::node::Symbol)
|
|
BOOST_SERIALIZATION_ASSUME_ABSTRACT(bertini::node::NamedSymbol)
|
|
BOOST_SERIALIZATION_ASSUME_ABSTRACT(bertini::node::Number)
|
|
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Variable)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Differential)
|
|
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Float)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Integer)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Rational)
|
|
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::special_number::Pi)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::special_number::E)
|
|
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Function)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::Jacobian)
|
|
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::SinOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::ArcSinOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::CosOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::ArcCosOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::TanOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::ArcTanOperator)
|
|
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::SumOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::NegateOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::MultOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::PowerOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::IntegerPowerOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::SqrtOperator)
|
|
BOOST_CLASS_EXPORT_KEY(bertini::node::ExpOperator)
|
|
|
|
BOOST_CLASS_TRACKING(bertini::node::Node, track_always)
|
|
|
|
BOOST_CLASS_TRACKING(bertini::node::Symbol, boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::NamedSymbol,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::Number, boost::serialization::track_always)
|
|
|
|
BOOST_CLASS_TRACKING(bertini::node::Variable,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::Differential,
|
|
boost::serialization::track_always)
|
|
|
|
BOOST_CLASS_TRACKING(bertini::node::Float, boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::Integer, boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::Rational,
|
|
boost::serialization::track_always)
|
|
|
|
BOOST_CLASS_TRACKING(bertini::node::special_number::Pi,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::special_number::E,
|
|
boost::serialization::track_always)
|
|
|
|
BOOST_CLASS_TRACKING(bertini::node::Function,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::Jacobian,
|
|
boost::serialization::track_always)
|
|
|
|
BOOST_CLASS_TRACKING(bertini::node::SinOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::ArcSinOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::CosOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::ArcCosOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::TanOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::ArcTanOperator,
|
|
boost::serialization::track_always)
|
|
|
|
BOOST_CLASS_TRACKING(bertini::node::SumOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::NegateOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::MultOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::PowerOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::IntegerPowerOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::SqrtOperator,
|
|
boost::serialization::track_always)
|
|
BOOST_CLASS_TRACKING(bertini::node::ExpOperator,
|
|
boost::serialization::track_always)
|