


"""simple docstring"""






from math import log

from scipy.constants import Boltzmann, physical_constants

_lowerCAmelCase							:    List[str]					   =	300  # TEMPERATURE (unit = K)







def        lowerCamelCase_(		_lowerCamelCase			,		_lowerCamelCase			,		_lowerCamelCase			,		)    ->     float:
   '''simple docstring'''





   if donor_conc <= 0:
      raise ValueError("Donor concentration should be positive"       )
   elif acceptor_conc <= 0:
      raise ValueError("Acceptor concentration should be positive"       )
   elif intrinsic_conc <= 0:
      raise ValueError("Intrinsic concentration should be positive"       )
   elif donor_conc <= intrinsic_conc:
      raise ValueError(
          "Donor concentration should be greater than intrinsic concentration"       )
   elif acceptor_conc <= intrinsic_conc:
      raise ValueError(
          "Acceptor concentration should be greater than intrinsic concentration"       )
   else:
      return (
          Boltzmann
          * T
          * log((donor_conc * acceptor_conc) / intrinsic_conc**2       )
          / physical_constants["electron volt"][0]
      )


if __name__ == "__main__":
  import doctest

  doctest.testmod()


"""simple docstring"""


from statistics import mean, stdev



def   _A					(	_a	:						list     ,   _a	:						int = 3				):



      """simple docstring"""






      A				  =		min(_a				)
      A				  =		max(_a				)
      # normalize data
      return [round((x - x_min) / (x_max - x_min)     ,   _a				) for x in data]





def   _A					(	_a	:						list     ,   _a	:						int = 3				):



      """simple docstring"""






      A				  =		mean(_a				)
      A				  =		stdev(_a				)
      # standardize data
      return [round((x - mu) / (sigma)     ,   _a				) for x in data]




