def METHOD_NAME(self, lam):
    r"""
    Return the Schur symmetric function ``s[lam]`` expanded in
    the orthogonal basis, where ``lam`` is a partition.
    INPUT:
    - ``lam`` -- a partition
    OUTPUT:
    - the expansion of ``s[lam]`` in the orthogonal basis ``self``
    EXAMPLES::
        sage: Sym = SymmetricFunctions(QQ)
        sage: s = Sym.schur()
        sage: o = Sym.orthogonal()
        sage: o._s_to_o_on_basis(Partition([]))
        o[]
        sage: o._s_to_o_on_basis(Partition([4,2,1]))
        o[1] + 2*o[2, 1] + o[2, 2, 1] + o[3]
         + o[3, 1, 1] + o[3, 2] + o[4, 1] + o[4, 2, 1]
        sage: s(o._s_to_o_on_basis(Partition([3,1]))) == s[3,1]
        True
    """
    R = self.base_ring()
    n = sum(lam)
    return self._from_dict({ mu: R.sum( lrcalc.lrcoef_unsafe(lam, mu, [2*x for x in nu])
                                        for nu in Partitions(j) )
                             for j in range(n//2+1) # // 2 for horizontal dominoes
                             for mu in Partitions(n-2*j) })