docs: def __lock_density_if_defined(self, stack: dict):
          """lock (True) the density lock if the density has been been defined during initialization
          Store the resulting dictionary into density_lock
  
          Parameters:
          ===========
          stack: dictionary (optional)
            if not provided, the entire stack will be used
          """
  
          if self.stack == {}:
              density_lock = {}
          else:
              density_lock = self.density_lock
  
          for _compound in stack.keys():
              _density = stack[_compound]['density']['value']
              if np.isnan(_density):
                  density_lock[_compound] = False
              else:
                  density_lock[_compound] = True
          self.density_lock = density_lock