From: Luca Heltai Date: Tue, 20 Nov 2018 15:39:33 +0000 (+0100) Subject: Added test for multi-components parsed functions. X-Git-Tag: v9.1.0-rc1~546^2~1 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=773c644a2abb15d6cf55da154a5dbb4c1042760d;p=dealii.git Added test for multi-components parsed functions. --- diff --git a/tests/base/function_parser_11.cc b/tests/base/function_parser_11.cc new file mode 100644 index 0000000000..61f3646928 --- /dev/null +++ b/tests/base/function_parser_11.cc @@ -0,0 +1,51 @@ +// --------------------------------------------------------------------- +// +// Copyright (C) 2018 by the deal.II authors +// +// This file is part of the deal.II library. +// +// The deal.II library is free software; you can use it, redistribute +// it, and/or modify it under the terms of the GNU Lesser General +// Public License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// The full text of the license can be found in the file LICENSE.md at +// the top level directory of deal.II. +// +// --------------------------------------------------------------------- + + +// test expression only constructor with vector based function + +#include +#include + +#include + +#include + +#include "../tests.h" + + +double +eval(const std::string &exp, unsigned int comp) +{ + FunctionParser<2> fp(exp); + + Point<2> p; + + return fp.value(p, comp); +} + + +int +main() +{ + initlog(); + + for (unsigned int i = 0; i < 2; ++i) + { + double random = eval("rand(); rand()", i); + if (0.0 <= random && random <= 1.0) + deallog << "OK" << std::endl; + } +} diff --git a/tests/base/function_parser_11.with_muparser=true.output b/tests/base/function_parser_11.with_muparser=true.output new file mode 100644 index 0000000000..8b3b075900 --- /dev/null +++ b/tests/base/function_parser_11.with_muparser=true.output @@ -0,0 +1,3 @@ + +DEAL::OK +DEAL::OK