"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "include/armadillo_bits/op_inv_bones.hpp" between
armadillo-10.8.2.tar.xz and armadillo-11.0.0.tar.xz

About: Armadillo is a C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use.

op_inv_bones.hpp  (armadillo-10.8.2.tar.xz):op_inv_bones.hpp  (armadillo-11.0.0.tar.xz)
skipping to change at line 18 skipping to change at line 18
// You may obtain a copy of the License at // You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0 // http://www.apache.org/licenses/LICENSE-2.0
// //
// Unless required by applicable law or agreed to in writing, software // Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS, // distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and // See the License for the specific language governing permissions and
// limitations under the License. // limitations under the License.
// ------------------------------------------------------------------------ // ------------------------------------------------------------------------
//! \addtogroup op_inv //! \addtogroup op_inv_spd
//! @{ //! @{
class op_inv class op_inv_spd_default
: public traits_op_default : public traits_op_default
{ {
public: public:
template<const uword row, const uword col>
struct pos
{
static constexpr uword n2 = row + col*2;
static constexpr uword n3 = row + col*3;
static constexpr uword n4 = row + col*4;
};
template<typename T1> template<typename T1>
inline static void apply(Mat<typename T1::elem_type>& out, const Op<T1,op_inv> & in); inline static void apply(Mat<typename T1::elem_type>& out, const Op<T1,op_inv_ spd_default>& in);
template<typename T1> template<typename T1>
inline static bool apply_direct(Mat<typename T1::elem_type>& out, const Base<t inline static bool apply_direct(Mat<typename T1::elem_type>& out, const Base<t
ypename T1::elem_type,T1>& expr, const char* caller_sig); ypename T1::elem_type,T1>& expr);
};
class op_inv_spd_full
: public traits_op_default
{
public:
template<typename T1> template<typename T1>
inline static bool apply_diagmat(Mat<typename T1::elem_type>& out, const T1& X inline static void apply(Mat<typename T1::elem_type>& out, const Op<T1,op_inv_
, const char* caller_sig); spd_full>& in);
template<typename T1, const bool has_user_flags = true>
inline static bool apply_direct(Mat<typename T1::elem_type>& out, const Base<t
ypename T1::elem_type,T1>& expr, const uword flags);
template<typename eT> template<typename eT>
arma_cold inline static bool apply_tiny_noalias(Mat<eT>& out, const Mat<eT>& X arma_cold inline static bool apply_tiny_2x2(Mat<eT>& X);
);
template<typename eT>
arma_cold inline static bool apply_tiny_3x3(Mat<eT>& X);
template<typename eT>
arma_cold inline static bool apply_tiny_4x4(Mat<eT>& X);
}; };
class op_inv_sympd class op_inv_spd_rcond
: public traits_op_default : public traits_op_default
{ {
public: public:
template<typename T1> template<typename T1>
inline static void apply(Mat<typename T1::elem_type>& out, const Op<T1,op_inv_ inline static bool apply_direct(Mat<typename T1::elem_type>& out_inv, typename
sympd>& in); T1::pod_type& out_rcond, const Base<typename T1::elem_type,T1>& expr);
template<typename T1>
inline static bool apply_direct(Mat<typename T1::elem_type>& out, const Base<t
ypename T1::elem_type,T1>& expr);
}; };
//! @} //! @}
 End of changes. 9 change blocks. 
24 lines changed or deleted 27 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)