Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Special math functions editorial issues found by Matwey V. Kornilov f… #957

Merged
merged 1 commit into from Nov 10, 2016

Conversation

apolukhin
Copy link
Contributor

…rom Sternberg Astronomical Institute, Lomonosov Moscow State University, Russia:

  • Clause "Associated Legendre polynomials" is wrongly entitled. "Associated Legendre functions" would be more appropriate here. Though "Associated Legendre polynomials" term is sometimes used it is formally wrong term. A polynomial (by definition) is a particular kind of function which can be represented using only finite number of additions, multiplications and exponentiations to a non-negative power, i.e. in canonical form of SUM(AiX^i). Obviously, some of P^m_l are not polynomials. For instance, for m=l=1, P11(x) == sqrt(1 − x*x) is not representable as SUM(AiX^i). See for reference: Abramowitz and Stegun, Chapter 8 "Legendre Functions".
  • "[sf.cmath.cyl_bessel]" is a bad name for the tag. "[sf.cmath.cyl_bessel]" sounds like "Bessel functions" and when people say "Bessel functions" they usually mean Jν from [sf.cmath.cyl_bessel_j]. Replaced "[sf.cmath.cyl_bessel]" with "[sf.cmath.cyl_bessel_i]".
  • "[sf.cmath.cyl_bessel_k]" misses references to "[sf.cmath.cyl_bessel_j]" and "[sf.cmath.cyl_neumann]" in the "See also" section. In [sf.cmath.cyl_bessel_j] Jv(x) is defined, in [sf.cmath.cyl_neumann] Nν(x) is defined - both of them are used in the "Returns:" section of the [sf.cmath.cyl_bessel_k].

…rom Sternberg Astronomical Institute, Lomonosov Moscow State University, Russia:

* Clause "Associated Legendre polynomials" is wrongly entitled. "Associated Legendre functions" would be more appropriate here. Though "Associated Legendre polynomials" term is sometimes used it is formally wrong term. A polynomial (by definition) is a particular kind of function which can be represented using only finite number of additions, multiplications and exponentiations to a non-negative power, i.e. in canonical form of `SUM(AiX^i)`. Obviously, some of P^m_l are not polynomials. For instance, for m=l=1, `P11(x) == sqrt(1 − x*x)` is not representable as `SUM(AiX^i)`. See for reference: Abramowitz and Stegun, Chapter 8 "Legendre Functions".
* "[sf.cmath.cyl_bessel]" is a bad name for the tag. "[sf.cmath.cyl_bessel]" sounds like "Bessel functions" and when people say "Bessel functions" they usually mean Jν from [sf.cmath.cyl_bessel_j]. Replaced "[sf.cmath.cyl_bessel]" with "[sf.cmath.cyl_bessel_i]".
* "[sf.cmath.cyl_bessel_k]" misses references to "[sf.cmath.cyl_bessel_j]" and "[sf.cmath.cyl_neumann]" in the "See also" section. In [sf.cmath.cyl_bessel_j] Jv(x) is defined, in [sf.cmath.cyl_neumann] Nν(x) is defined - both of them are used in the "Returns:" section of the [sf.cmath.cyl_bessel_k].
@zygoloid
Copy link
Member

@W-E-Brown This looks correct to me; what do you think?

@tkoeppe
Copy link
Contributor

tkoeppe commented Nov 9, 2016

[Walter says some correspondence has got lost here. I'll try to chase up @apolukhin in person.]

@W-E-Brown
Copy link
Contributor

On Nov 9, 2016, at 1:04 PM, Thomas Köppe notifications@github.com wrote:

[Walter says some correspondence has got lost here. I'll try to chase up @apolukhin in person.]

Here's my previous response:

Begin forwarded message:

Subject: Re: [cplusplus/draft] Special math functions editorial issues found by Matwey V. Kornilov f… (#957)
From: W Brown webrown.cpp@gmail.com
Date: 2016-10-25 at 6:40:27 PM CDT
To: cplusplus/draft reply@reply.github.com

On Oct 25, 2016, at 4:20 PM, Richard Smith notifications@github.com wrote:

@W-E-Brown This looks correct to me; what do you think?


• Clause "Associated Legendre polynomials" is wrongly entitled. "Associated Legendre functions" would be more appropriate here. Though "Associated Legendre polynomials" term is sometimes used it is formally wrong term. A polynomial (by definition) is a particular kind of function which can be represented using only finite number of additions, multiplications and exponentiations to a non-negative power, i.e. in canonical form of SUM(AiX^i). Obviously, some of P^m_l are not polynomials. For instance, for m=l=1, P11(x) == sqrt(1 − x*x) is not representable as SUM(AiX^i). See for reference: Abramowitz and Stegun, Chapter 8 "Legendre Functions".

While I agree in principle, there is another consideration:

When these names were first selected, they were adopted from the equivalent functions mentioned in (what was then) ISO 31, since that document served as our litmus test to answer the question "which special functions should we include?"

ISO 31 has since been updated (Wikipedia says, "ISO/IEC 80000 supersedes both ISO 31 and part of IEC 60027"), and I don't at the moment have access to an updated copy to consult re its current names for these.

If someone can locate a current copy, I recommend we use whichever naming that ISO has adopted therein. In the meantime, I'll look for a copy at our library.


• "[sf.cmath.cyl_bessel]" is a bad name for the tag. "[sf.cmath.cyl_bessel]" sounds like "Bessel functions" and when people say "Bessel functions" they usually mean Jν from [sf.cmath.cyl_bessel_j]. Replaced "[sf.cmath.cyl_bessel]" with "[sf.cmath.cyl_bessel_i]".

I'm okay with this renaming, assuming there's no reason to maintain consistency with the soon-to-go-away other C++ standard.


• "[sf.cmath.cyl_bessel_k]" misses references to "[sf.cmath.cyl_bessel_j]" and "[sf.cmath.cyl_neumann]" in the "See also" section. In [sf.cmath.cyl_bessel_j] Jv(x) is defined, in [sf.cmath.cyl_neumann] Nν(x) is defined - both of them are used in the "Returns:" section of the [sf.cmath.cyl_bessel_k].

This also looks fine to me; such cross-references are usually helpful.

@tkoeppe
Copy link
Contributor

tkoeppe commented Nov 10, 2016

@apolukhin checked the wording in ISO-80000-2, and apparently they also changed the term from "associated Legendre polynomial" to "associated Legendre function", so this change does indeed keep us in sync with both ISO and factual reality.

@tkoeppe
Copy link
Contributor

tkoeppe commented Nov 10, 2016

For the record, ISO-80000-2 also uses the correct term "function":

image

@tkoeppe tkoeppe merged commit 2fc3bc0 into cplusplus:master Nov 10, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants