L i ddlmZmZddlmZddlmZddlmZddl m Z ddl m Z m Z ddlmZddlmZd gZGd d e Zy ) )OptionalUnion)Tensor) constraints) Exponential)TransformedDistribution)AffineTransform ExpTransform) broadcast_all)_sizeParetoc BeZdZdZej ej dZ ddeee fdeee fde e ddffd Z dd e d e dddffd Zedefd Zedefd ZedefdZej&dddej(fdZdefdZxZS)r a Samples from a Pareto Type 1 distribution. Example:: >>> # xdoctest: +IGNORE_WANT("non-deterministic") >>> m = Pareto(torch.tensor([1.0]), torch.tensor([1.0])) >>> m.sample() # sample from a Pareto distribution with scale=1 and alpha=1 tensor([ 1.5623]) Args: scale (float or Tensor): Scale parameter of the distribution alpha (float or Tensor): Shape parameter of the distribution )alphascaleNrr validate_argsreturnct||\|_|_t|j|}t t d|jg}t ||||y)N)rr)locr)r rrrr r super__init__)selfrrr base_dist transforms __class__s `/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/torch/distributions/pareto.pyrzPareto.__init__!sU "/ue!< DJ -H "no!4::&NO  JmL batch_shape _instancec|jt|}|jj||_|jj||_t | ||S)N)r)_get_checked_instancer rexpandrr)rrrnewrs rr!z Pareto.expand,sV((;JJ%%k2 JJ%%k2 w~kS~99rcd|jjd}||jz|dz z S)Nmin)rclamprras rmeanz Pareto.mean4s2 JJ    #4::~Q''rc|jSN)rrs rmodez Pareto.mode:s zzrc|jjd}|jjd|z|dz jd|dz zz S)Nr%r$)rr'rpowr(s rvariancezPareto.variance>sM JJ    #zz~~a 1$Q A!a%(@AArFr) is_discrete event_dimc@tj|jSr,)rgreater_than_eqrr-s rsupportzPareto.supportDs**4::66rc|j|jz jd|jjzzS)Nr$)rrlog reciprocalr-s rentropyzPareto.entropyHs5 TZZ',,.!djj6K6K6M2MNNrr,)__name__ __module__ __qualname____doc__rpositivearg_constraintsrrfloatrboolrr r!propertyr*r.r2dependent_property Constraintr7r; __classcell__)rs@rr r s' !, 4 4{?S?STO )- MVU]# MVU]# M ~ M  MCG: :-5h-?: :(f(( fB&BB $[##C7//7D7OOrN)typingrrtorchrtorch.distributionsrtorch.distributions.exponentialr,torch.distributions.transformed_distributionrtorch.distributions.transformsr r torch.distributions.utilsr torch.typesr __all__r rrrRs5"+7PH3 *:O $:Or