.TH "test" 2rheolef "Version 7.2" "rheolef" \" -*- nroff -*- .ad l .nh .SH NAME test \- test-function in variational formulation (rheolef-7\&.2) .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 .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: using rep = test_rep; using base = smart_pointer; using size_type = typename rep::size_type; using memory_type = typename rep::memory_type; using value_type = typename rep::value_type; using scalar_type = typename rep::scalar_type; using float_type = typename rep::float_type; using geo_type = typename rep::geo_type; using space_type = typename rep::space_type; using diff_type = typename rep::diff_type; using is_elementwise = typename rep::is_elementwise; using vf_tag_type = VfTag; using vf_dual_tag_type = typename details::dual_vf_tag::type; using self_type = test_basic; using dual_self_type = test_basic; // 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.