class_docstr: Declare an interface common to all supported algorithms.
  :class:`SampleMorris` uses this interface to call the algorithm
  defined by a ConcreteStrategy.
docstr: Check the `input_sample` is valid
  
  Checks input sample is:
      - the correct size
      - values between 0 and 1
  
  Parameters
  ----------
  input_sample : numpy.ndarray
  num_params : int
  num_samples : int
docstr_tok: ["Check","the","`","input_sample","`","is","valid","Checks","input","sample","is",":","-","the","correct","size","-","values","between","0","and","1","Parameters","--","--","--","--","--","input_sample",":","numpy.ndarray","num_params",":","int","num_samples",":","int"]
code: def check_input_sample(input_sample, num_params, num_samples):
      """Check the `input_sample` is valid
  
      Checks input sample is:
          - the correct size
          - values between 0 and 1
  
      Parameters
      ----------
      input_sample : numpy.ndarray
      num_params : int
      num_samples : int
      """
      assert (
          type(input_sample) == np.ndarray
      ), "Input sample is not an numpy array"
      assert (
          input_sample.shape[0] == (num_params + 1) * num_samples
      ), "Input sample does not match number of parameters or groups"
      assert np.any(
          (input_sample >= 0) | (input_sample <= 1)
      ), "Input sample must be scaled between 0 and 1"
  
file_path: SALib/src/SALib/sample/morris/strategy.py
imports: import abc
  import numpy
  from scipy.spatial.distance import cdist
label_desc: Use image node_id 6 for calling the Strategy obj's underlying member method code with example usage: obj.check_input_sample(input_sample, num_params, num_samples) without return types