How can I compute Jacobi Elliptic Functions in Matlab where the modulus is > 1?

3 vues (au cours des 30 derniers jours)
I'm interested in computing the elliptic function cd(u|m) where cd(u|m) = cn(u|m) / dn(u|m). I can compute both cn and dn using the built in function "ellipj" in Matlab, however it doesn't work when m > 1.
Suggestions?
Thanks,
Mark

Réponse acceptée

Karan Gill
Karan Gill le 29 Sep 2017
Modifié(e) : Karan Gill le 17 Oct 2017
Starting R2017b, all Jacobi Elliptic functions in MATLAB with Symbolic Math Toolbox. Example:
>> jacobiCD(1,3)
ans =
535.8838
  • jacobiAM for Jacobi amplitude function
  • jacobiCD for Jacobi CD elliptic function
  • jacobiCN for Jacobi CN elliptic function
  • jacobiCS for Jacobi CS elliptic function
  • jacobiDC for Jacobi DC elliptic function
  • jacobiDN for Jacobi DN elliptic function
  • jacobiDS for Jacobi DS elliptic function
  • jacobiNC for Jacobi NC elliptic function
  • jacobiND for Jacobi ND elliptic function
  • jacobiNS for Jacobi NS elliptic function
  • jacobiSC for Jacobi SC elliptic function
  • jacobiSD for Jacobi SD elliptic function
  • jacobiSN for Jacobi SN elliptic function
  • jacobiZeta for Jacobi zeta function

Plus de réponses (1)

Matt Fig
Matt Fig le 20 Sep 2012
Modifié(e) : Matt Fig le 20 Sep 2012
Use (for m>1):
sn(u,m) = sqrt(1/m)*sn(u*sqrt(m),1/m)
cn(u,m) = dn(u*sqrt(m),1/m)
dn(u,m) = cn(u*sqrt(m),1/m)
  1 commentaire
Mark
Mark le 21 Sep 2012
Fantastic! I'm relieved to see that it is this simple! Thanks for the help Matt.
Mark

Connectez-vous pour commenter.

Catégories

En savoir plus sur Clusters and Clouds dans Help Center et File Exchange

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by