/usr/include/openturns/swig/SymmetricMatrix.i is in libopenturns-dev 1.9-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | // SWIG file SymmetricMatrix.i
// do not pass argument by reference, return it as tuple item
%typemap(in, numinputs=0) OT::SquareMatrix & v ($*ltype temp) %{ temp = OT::SquareMatrix(); $1 = &temp; %}
%typemap(argout) OT::SquareMatrix & v %{ $result = SWIG_Python_AppendOutput($result, SWIG_NewPointerObj(new OT::SquareMatrix(*$1), SWIG_TypeQuery("OT::SquareMatrix *"), SWIG_POINTER_OWN | 0 )); %}
OT::SymmetricMatrix OT::SymmetricMatrix::computeEV(OT::SquareMatrix & v, const Bool keepIntact = true);
%{
#include "openturns/SymmetricMatrix.hxx"
%}
%include SymmetricMatrix_doc.i
%apply const ScalarCollection & { const OT::SymmetricMatrix::ScalarCollection & };
%include openturns/SymmetricMatrix.hxx
%pythoncode %{
def SymmetricMatrix___getattribute__(self, name):
"""Implement attribute accesses."""
if name == '__array_interface__':
self.checkSymmetry()
return super(SymmetricMatrix, self).__getattribute__(name)
SymmetricMatrix.__getattribute__ = SymmetricMatrix___getattribute__
%}
namespace OT {
%extend SymmetricMatrix {
SymmetricMatrix(PyObject * pyObj) { return new OT::SymmetricMatrix( OT::convert<OT::_PySequence_,OT::SymmetricMatrix>(pyObj) ); }
OTMatrixAccessors()
SymmetricMatrix __rmul__(Scalar s) { return s * (*self); }
Matrix __rmul__(const Matrix & m) { return m * (*self); }
#if SWIG_VERSION < 0x030011
SymmetricMatrix __truediv__(Scalar s) { return (*self) / s; }
#endif
} // SymmetricMatrix
} // OT
|