nella libreria standard, è possibile guardare il modulo decimal
:
>>> import decimal
>>> decimal.Decimal(-1200)
Decimal('-1200')
>>> decimal.Decimal(-1200).exp()
Decimal('7.024601888177132554529322758E-522')
Se avete bisogno di più funzioni rispetto decimal
supporti, si poteva guardare in biblioteca mpmath
, che io uso e come un sacco:
>>> import mpmath
>>> mpmath.exp(-1200)
mpf('7.0246018881771323e-522')
>>> mpmath.mp.dps = 200
>>> mpmath.exp(-1200)
mpf('7.0246018881771325545293227583680003334372949620241053728126200964731446389957280922886658181655138626308272350874157946618434229308939128146439669946631241632494494046687627223476088395986988628688095132e-522')
ma, se possibile, si dovrebbe vedere se si può riformulare le vostre equazioni lavorare interamente nello spazio log.
Grazie, il decimale fa ciò di cui avevo bisogno :) –
Non riesco a riordinare per rimanere nello spazio di registrazione poiché sto lavorando con log a e log b e ho bisogno di un/(a + b) che richiederebbe log (a + b) che non è banale nell'ottenere quando si ha solo un log e un log b. –