code: def run_missing_simulations(self, param_list, runs=None):
          
          # If we are passed a dictionary, we need to expand this
          if isinstance(param_list, dict):
              param_list = list_param_combinations(param_list)
  
          # If we are passed a list already, just run the missing simulations
          self.run_simulations(
              self.get_missing_simulations(param_list, runs))
docs: Run the simulations from the parameter list that are not yet available
          in the database.
  
          This function also makes sure that we have at least runs replications
          for each parameter combination.
  
          Additionally, param_list can either be a list containing the desired
          parameter combinations or a dictionary containing multiple values for
          each parameter, to be expanded into a list.
  
          Args:
              param_list (list, dict): either a list of parameter combinations or
                  a dictionary to be expanded into a list through the
                  list_param_combinations function.
              runs (int): the number of runs to perform for each parameter
                  combination. This parameter is only allowed if the param_list
                  specification doesn't feature an 'RngRun' key already.