.TH "test" 2rheolef "Sat Mar 13 2021" "Version 7.1" "rheolef" \" -*- nroff -*- .ad l .nh .SH NAME test \- test-function in variational formulation (rheolef-7\&.1) .SH "DESCRIPTION" .PP This class, and its associated \fCtrial\fP one, is used for test and trial functions involved in variational formulations\&. Variational formulations are specified by expressions of the C++ language\&. .PP A \fCtest\fP function is the formal argument involved in the expression for the \fBintegrate(3)\fP function: .PP .nf geo omega ("circle"); space Xh (omega, "P1"); test v (Xh); field lh = integrate (omega, 2*v); .fi .PP For a bilinear \fBform(2)\fP, the \fCtest\fP function represents its second formal argument, while its first one is referred to as the \fCtrial\fP one: .PP .nf trial u (Xh); test v (Xh); form a = integrate (omega, dot(grad(u),grad(v))); .fi .PP .SH "IMPLEMENTATION" .PP This documentation has been generated from file main/lib/test\&.h .PP The \fCtest\fP and \fCtrial\fP classes are simply aliases to the \fC\fBtest_basic\fP\fP class: .PP .PP .nf typedef test_basic test; typedef test_basic trial; .fi .PP \fB\fP .RS 4 .RE .PP The \fC\fBtest_basic\fP\fP class provides an interface, via the \fBsmart_pointer(7)\fP class family, to a data container: .PP .PP .nf template class test_basic : public smart_pointer > { public : // typedefs: typedef test_rep rep; typedef smart_pointer base; typedef typename rep::size_type size_type; typedef typename rep::memory_type memory_type; typedef typename rep::value_type value_type; typedef typename rep::scalar_type scalar_type; typedef typename rep::float_type float_type; typedef typename rep::geo_type geo_type; typedef typename rep::space_type space_type; typedef typename rep::diff_type diff_type; typedef VfTag vf_tag_type; typedef typename details::dual_vf_tag::type vf_dual_tag_type; typedef test_basic self_type; typedef test_basic dual_self_type; // allocator/deallocator: explicit test_basic (const space_type& V) : base(new_macro(rep(V))) {} // accessors: const space_type& get_vf_space() const { return base::data()\&.get_vf_space(); } static const space_constant::valued_type valued_hint = rep::valued_hint; space_constant::valued_type valued_tag() const { return base::data()\&.valued_tag(); } size_type n_derivative() const { return base::data()\&.n_derivative(); } size_type size() const { return get_vf_space()\&.size(); } details::test_component operator[] (size_type i_comp) const; .fi .PP .PP .nf }; .fi .PP .SH AUTHOR Pierre Saramito .SH COPYRIGHT Copyright (C) 2000-2018 Pierre Saramito GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.