code: def is_functional(cls):
          
          if not cls._tested:
              cls._tested = True
              np.random.seed(SEED)
              test_problem_dimension = 10
              mat = np.random.randn(test_problem_dimension, test_problem_dimension)
              posmat = mat.dot(mat.T)
              posvar = cvxpy.Variable(test_problem_dimension, test_problem_dimension)
              prob = cvxpy.Problem(cvxpy.Minimize((cvxpy.trace(posmat * posvar)
                                                   + cvxpy.norm(posvar))),
                                   [posvar >> 0, cvxpy.trace(posvar) >= 1.])
  
              try:
                  prob.solve(SOLVER)
                  cls._functional = True
              except cvxpy.SolverError:  # pragma no coverage
                  _log.warning("No convex SDP solver found. You will not be able to solve"
                               " tomography problems with matrix positivity constraints.")
          return cls._functional
docs: Checks lazily whether a convex solver is installed that handles positivity constraints.
  
          :return: True if a solver supporting positivity constraints is installed.
          :rtype: bool