|
From: | Vladislav Malyshkin |
Subject: | Re: Polynomials in arbitrary basis |
Date: | Wed, 20 Jun 2018 03:01:46 -0400 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 |
Juan,
generalized basis polynomial code is now also available from two places:
#sha1sum polynomial_code.June_17_2018.zip code_polynomials_quadratures.zip d8dacf0c0573f850c38978a9fc97d70298e1fa68 polynomial_code.June_17_2018.zip d8dacf0c0573f850c38978a9fc97d70298e1fa68 code_polynomials_quadratures.zip On 06/17/2018 04:29 PM, Vladislav Malyshkin wrote: Juan, it is now available from https://yadi.sk/d/AtPJ4a8copmZJ?locale=en the file polynomial_code.June_17_2018.zip Vladislav On 06/17/2018 04:21 PM, Juan Pablo Carbajal wrote:Hi, There is little use of static zip sent around. Better set up a public repository (gitlab, bitbucket, etc...) and share that. I never linked java code to Octave, but since Java is a dependency of Octave I can imagine it is very simple. Maybe you want to ask around before investing time in re.writing your code. I would say that the functionality is very important so if you do noot have time to make a package of it, then we put it for the next summer of code... or a bachelor student somewhere! Regards, On Sun, Jun 17, 2018 at 10:06 PM, Vladislav Malyshkin <address@hidden> wrote:Juan, The code is java written, I do not have octave package. Only java. Earlier version (bundled with other code) is available at https://yadi.sk/d/AtPJ4a8copmZJ?locale=en file AMuseOfCashFlowAndLiquidityDeficit.20_Sept_2017.zip latest code version (minor API changes & code structure) is attached to this e-mail: polynomial_code.zip (this is preferred version to use, I did not release it yet, but changes from Sept 20 1017 version are really minor (few functions renamed)) There are basically two API of interest to you: Generalized polynomial basis functionality com/polytechnik/utils/BasisPolynomials.java Gauss--type quadratures calculation in generalized basis com/polytechnik/utils/OrthogonalPolynomialsABasis.java These API are implemented for Chebyshev, Legendre, HermiteE, Laguerre, Shifted Legendre, Monomials bases. Polynomials operations are implemented in com/polytechnik/utils/{Chebyshev,Legendre,HermiteE,Laguerre,LegendreShifted,Monomials}.java with built-in selftest (e.g. run java com/polytechnik/utils/Chebyshev to selftest the class). There are not that much code there, it may be easier to re-implement that code natively in octave, rather than do any java-wrapper, especially because my quadraures (not polynomial) code call few lapack subs converted from fortran, it is probably better for octave to call Lapack subs directly). All my code is under GPL. Polynomials manipulation and Gauss--type quadratures calculation in generalized basis is described in https://arxiv.org/pdf/1510.05510 , Appendix A & B, page 30. Vladislav P.S. To test the code unzip polynomial_code.zip javac -g com/polytechnik/*/*java # then one can run selftest for, say, Legendre Basis & Quadratures calculation in Legendre basis. java com/polytechnik/utils/Legendre java com/polytechnik/utils/OrthogonalPolynomialsLegendreBasis # to run all selftests java com/polytechnik/utils/UnitTests P.P.S. http://www.chebfun.org/docs/guide/chebfun_guide.pdf by Lloyd N. Trefethen is good, but has different goals. On 06/17/2018 02:49 PM, Juan Pablo Carbajal wrote: Hi, Sounds interesting. Could you share the repository where you host your code? Also, you can create a package, compress it and provide an url, this way anybody can install it from within octave pkg install http://your.url needs Octave >= 4.4 On Sat, Jun 16, 2018 at 9:39 PM, Vladislav Malyshkin <address@hidden> wrote: Octave currently has polynomials manipulation functionality https://octave.org/doc/v4.0.3/Polynomial-Manipulations.html only in monomials basis: sum ckxk In practice it is often very convenient to have polynomial represented in other polynomials basis: sum ckQk(x) where the basis Qk(x) is orthogonal polynomials of some kind. There is my implementation of polynomials manipulation functionality (and Gauss-type quadratures calculation) in the basis of Chebyshev, Legendre, Laguerre, Hermite bases. The code is available under GPL and is java-written (however it will not be much a problem to rewrite it in C/C++). You can read about code at https://arxiv.org/pdf/1510.05510 see Appendix A & B. Let me know if you have any interest. Vladislav P.S. From the other alternative basis software I know only matlab-written http://www.chebfun.org/ by Alex Townsend, but his project has different goals. |
[Prev in Thread] | Current Thread | [Next in Thread] |