Re: [Patch] Log10 and hyperbolic functions for SQL:2016 compliance
Darafei Komяpa Praliaskouski <me@komzpa.net>
From: Darafei "Komяpa" Praliaskouski <me@komzpa.net>
To: Lætitia Avrot <laetitia.avrot@gmail.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Andrew Gierth <andrew@tao11.riddles.org.uk>, Alvaro Herrera <alvherre@2ndquadrant.com>,
Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2019-03-19T05:49:44Z
Lists: pgsql-hackers
I really appreciate the addition of tanh into core postgres. If someone doubts it is useful: it is used as a part of math in geographical calculations. Say you have your cars in planar Mercator projection and want to move them "1 second forward by this heading with this speed". sin/cos and the distance on X/Y, but the distance must be scaled properly - and that scaling coefficient is cosd(latitude), which you don't have directly - you have it in projected meters. If you don't want to fire up full-featured PostGIS on this hot path you inline all formulas together, result is nice and small - but has tanh in it, which I was surprised to find only in Oracle Compatibility extensions. Pure sql tanh was good enough, but gave me disturbance :) Here's the code: https://github.com/gojuno/lostgis/blob/master/sql/functions/coslat.sql#L21 On Wed, Mar 13, 2019 at 5:34 PM Lætitia Avrot <laetitia.avrot@gmail.com> wrote: > Thanks, Tom ! > > Thank you everyone for your help and patience. > > Cheers, > > Lætitia > > Le mar. 12 mars 2019 à 20:57, Tom Lane <tgl@sss.pgh.pa.us> a écrit : > >> =?UTF-8?Q?L=C3=A6titia_Avrot?= <laetitia.avrot@gmail.com> writes: >> > So, as you're asking that too, maybe my reasons weren't good enough. >> You'll >> > find enclosed a new version of the patch >> > with asinh, acosh and atanh (v5). >> >> Pushed with some minor adjustments (mainly cleanup of the error handling). >> >> > Then I tried for several days to implement the 6 last hyperbolic >> functions, >> > but I wasn't satisfied with the result, so I just dropped it. >> >> Yeah, I agree that sech() and so on are not worth the trouble. If they >> were commonly used, they'd be in POSIX ... >> >> regards, tom lane >> > -- Darafei Praliaskouski Support me: http://patreon.com/komzpa
Commits
-
Add support for hyperbolic functions, as well as log10().
- f1d85aa98ee7 12.0 landed