docstr: Constructs fODF combined with isotropic volume fraction at discrete
  vertices on model sphere.
  
  Distributes isotropic compartments evenly along each fODF direction.
  Sums to 1.
  
  Returns
  -------
  combined : ndarray ([x, y, z], M-2)
      fODF combined with isotropic volume fraction.
docstr_tok: ["Constructs","fODF","combined","with","isotropic","volume","fraction","at","discrete","vertices","on","model","sphere",".","Distributes","isotropic","compartments","evenly","along","each","fODF","direction",".","Sums","to","1",".","Returns","--","--","--","-","combined",":","ndarray","(","[","x",",","y",",","z","]",",","M-2",")","fODF","combined","with","isotropic","volume","fraction","."]
code: def combined_odf_iso(self):
      """
      Constructs fODF combined with isotropic volume fraction at discrete
      vertices on model sphere.
  
      Distributes isotropic compartments evenly along each fODF direction.
      Sums to 1.
  
      Returns
      -------
      combined : ndarray ([x, y, z], M-2)
          fODF combined with isotropic volume fraction.
      """
  
      odf = self.odf()
      combined = odf + self.f_iso[..., None] / odf.shape[-1]
      return combined
  
imports: import logging
  import warnings
  import numpy
  from dipy.core.geometry import vec2vec_rotmat
  from dipy.core.gradients import gradient_table, unique_bvals_tolerance, get_bval_indices
  from dipy.core.onetime import auto_attr
  from dipy.core.sphere import Sphere
  from dipy.data import get_sphere
  from dipy.reconst.shm import lazy_index, normalize_data
  from dipy.reconst.odf import OdfModel, OdfFit
  from dipy.reconst.csdeconv import AxSymShResponse
  from dipy.segment.mask import bounding_box, crop
  from dipy.sims.voxel import single_tensor, all_tensor_evecs
label_desc: Use image node_id 7 for calling the RumbaFit obj's underlying member method code with example usage: obj.combined_odf_iso() and returns: combined