code: def compute_pblums(self, compute=None, **kwargs):
          
          datasets = kwargs.pop('dataset', self.datasets)
          components = kwargs.pop('component', self.components)
  
          # don't allow things like model='mymodel', etc
          forbidden_keys = parameters._meta_fields_filter
          self._kwargs_checks(kwargs, additional_forbidden_keys=forbidden_keys)
  
          if compute is None:
              if len(self.computes)==1:
                  compute = self.computes[0]
              else:
                  raise ValueError("must provide compute")
  
          system = backends.PhoebeBackend()._create_system_and_compute_pblums(self, compute, **kwargs)
  
          pblums = {}
          for component, star in system.items():
              if component not in components:
                  continue
              for dataset in star._pblum_scale.keys():
                  if dataset not in datasets:
                      continue
                  pblums["{}@{}".format(component, dataset)] = float(star.compute_luminosity(dataset)) * u.W
  
          return pblums
docs: Compute the passband luminosities that will be applied to the system,
          following all coupling, etc, as well as all relevant compute options
          (ntriangles, distortion_method, etc).  The exposed passband luminosities
          (and any coupling) are computed at t0@system.
  
          This method is only for convenience and will be recomputed internally
          within run_compute.  Alternatively, you can create a mesh dataset
          and request any specific pblum to be exposed (per-time).
  
          :parameter str compute: label of the compute options (note required if
              only one is attached to the bundle)
          :parameter component: (optional) label of the component(s) requested
          :type component: str or list of strings
          :parameter dataset: (optional) label of the dataset(s) requested
          :type dataset: str or list of strings
          :parameter component: (optional) label of the component(s) requested
          :type component: str or list of strings
          :return: dictionary with keys <component>@<dataset> and computed pblums
              as values (as quantity objects, default units of W)