import os

from huggingface_hub.constants import HUGGINGFACE_HUB_CACHE, hf_cache_home


__lowerCamelCase    :				Optional[Any]							     =	HUGGINGFACE_HUB_CACHE


__lowerCamelCase    :				List[str]							     =	'''config.json'''
__lowerCamelCase    :				str							     =	'''diffusion_pytorch_model.bin'''
__lowerCamelCase    :				List[Any]							     =	'''diffusion_flax_model.msgpack'''
__lowerCamelCase    :				int							     =	'''model.onnx'''
__lowerCamelCase    :				List[str]							     =	'''diffusion_pytorch_model.safetensors'''
__lowerCamelCase    :				Any							     =	'''weights.pb'''
__lowerCamelCase    :				str							     =	'''https://huggingface.co'''
__lowerCamelCase    :				Dict							     =	default_cache_path
__lowerCamelCase    :				Union[str, Any]							     =	'''diffusers_modules'''
__lowerCamelCase    :				Optional[Any]							     =	os.getenv('''HF_MODULES_CACHE''', os.path.join(hf_cache_home, '''modules'''))
__lowerCamelCase    :				List[str]							     =	['''fp16''', '''non-ema''']
__lowerCamelCase    :				Dict							     =	'''.self_attn'''

from math import log

from scipy.constants import Boltzmann, physical_constants

__lowerCamelCase    :				int							     =	300  # TEMPERATURE (unit = K)



def 			__SCREAMING_SNAKE_CASE						(      __UpperCamelCase					: float				,  __UpperCamelCase					: float				,  __UpperCamelCase					: float				,  )							->      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()
