class_docstr: A fitter for GPs in multi-fidelity optimisation. 
class_docstr_tok: ["A","fitter","for","GPs","in","multi-fidelity","optimisation","."]
docstr: Constructor. options should either be a Namespace, a list or None. 
code: def __init__(self, ZZ, XX, YY, options=None, reporter=None):
      """Constructor. options should either be a Namespace, a list or None."""
      reporter = get_reporter(reporter)
      options = load_options(
          euclidean_mf_gp_args, partial_options=options
      )
      self.fidel_dim = len(ZZ[0])
      self.domain_dim = len(XX[0])
      self.input_dim = self.fidel_dim + self.domain_dim
      super(EuclideanMFGPFitter, self).__init__(
          ZZ, XX, YY, options, reporter
      )
  
imports: from __future__ import division
  from argparse import Namespace
  import numpy
  from .None import gp_core, mf_gp
  from .None import kernel
  from ..utils.ancillary_utils import get_list_of_floats_as_str
  from ..utils.general_utils import get_sublist_from_indices, map_to_bounds
  from ..utils.option_handler import get_option_specs, load_options
  from ..utils.oper_utils import random_sample_from_discrete_domain
  from ..utils.reporters import get_reporter
label_desc: Use image node_id 1 to create a new EuclideanMFGPFitter object from inherited base classes: mf_gp with example: obj = EuclideanMFGPFitter(ZZ, XX, YY, options, reporter)