K iddlmZmZmZddlmZddlmZmZddl m Z m Z m Z m Z ddlmZmZmZddlmZddlmZmZmZddlmZmZmZdd lmZmZmZdd l m!Z!m"Z"m#Z#dd l$m%Z%dd l&m'Z'dd l(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3ddl4m5Z5dZ6edZ7edZ8edZ9GddeZ:dZ;Gdde:Z<Gdde:Z=Gdde:Z>Gdde:Z?Gdde:Z@Gd d!e@ZAGd"d#e@ZBGd$d%eZCGd&d'eCZDGd(d)eCZEGd*d+eCZFGd,d-eCZGGd.d/eCZHGd0d1eCZIy2)3)Ssympifycacheit)Add)DefinedFunctionArgumentIndexError)fuzzy_or fuzzy_and fuzzy_not FuzzyBool)IpiRational)Dummy)binomial factorialRisingFactorial) bernoullieulernC)Absimre)explogmatch_real_imag)floor)sqrt) acosacotasinatancoscotcscsecsintan_imaginary_unit_as_coefficient)symmetric_polyc |j|jtDcic]}||jtc}Scc}wN)xreplaceatomsHyperbolicFunctionrewriter)exprhs k/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sympy/functions/elementary/hyperbolic.py_rewrite_hyperbolics_as_expr4sE ==./1 QYYs^+1 221sAc nitttdtdzzt tt dtdzztjt dz t ddt t ddztddz t dz td dz t t ddzdtdz t dz dtdz t t ddztddz t dz td dz t t ddztddz tdz t t dd ztddz tdz t t d d ztdtdzdz t dz tdtdz dz t t d dztdtdz dz t t ddztdtdz  dz t t ddzdtdzdtdzz t d z dtdz dtdzz t t d d ztddzdz t dz tddz dz t t ddziS) N  )r rrrHalfrrr3 _acosh_tablerDs  3q!d1g+   CAQK !  1  QHQN*   Q 2a4   a Bx1~%   $q' 2a4  47 Bx1~%  Q 2a4  a Bx1~%  a1d4j "Xa_"4  q'A+tDz!2hq"o#5  Qa[!RT  a$q'k 1b!Q/  Qa[!RA.  a$q'k 1b!Q/! " T!Wqay!2b5# $ d1g+$q' "BxB'7$7 a1aA q'A+q"Xa^+) rCc ltt dz ttdtdzzt dz tdtdzzt dz tdztdtdz z t dz tdzt dz ttddtdz zzt dz ttdzt dz ttddz zd tzdz tdztd z t d z tdztdtdzz d tzdz ttddtdz z zd tzdz ttdtdz zd tzdz tdt t dtdzdz zi S) Nr7r;r>r6r< r=r:r8)r rrrrrBrCr3 _acsch_tablerJ3sg sQw tAwa !B38 q47{ObS2X aC$q47{# #bS1W aC"q d1qay=! !B37 d1gIsQw tAwqyM2b52: aC$q'MB37 aC$q47{# #RUQY d1qay=! !2b519 tAwa !2b52: aD1"S!DG)Q''  rCchitttzdz tdtdzzt ttzdz tdtdzztdtdz tdz tdtdz dtzdz tddtdz z tdz tddtdz z  dtzdz dtdtdzz td z d tdtdzz d tzd z dtd z tdz d td z dtzdz tddz tdz dtdz d tzdz tdtd z td d tzd z tddtdz zd tzdz tddtdz z d tzdz t dtd z t d dtzd z tddtdzzd tzd z tddtdzz dtzd z dtdzdtzdz dtdz d tzdz tdtdzdtzdz td tdz d tzdz ttj zt tzdz ttj zttzdz i S)Nr7r6r;r>r@r<rF r=rHr?r8r:r9)r rrrrInfinityNegativeInfinityrBrCr3 _asech_tablerOFs "Q$(|c!d1g+.. BAST!W-- !WtAw b !WtAw B  QtAwY b  !aQi- !B$)   Qa[! !26  a$q'k" "AbD1H  QKa  aL!B$( !Wq[26 a[1R4!8  GR!V !WHadQh  QtAwY 2 !aQi- !B$)! " aD"q&# $qTE1R4!8 AQK !1R4!8 !Qa[/ " "AbD1H a[1R4!8 $q'\AbD1H !WtAw 21gXQ !B$) ajjL2#a%!) a  "Q$(5  rCceZdZdZdZy)r/ze Base class for hyperbolic functions. See Also ======== sinh, cosh, tanh, coth TN)__name__ __module__ __qualname____doc__ unbranchedrBrCr3r/r/jsJrCr/cNttz}tj|D]M}||k(rtj }nH|j s'|j\}}||k(s@|jsMn|tjfS|tjz}||z }|||zz |fS)a Split ARG into two parts, a "rest" and a multiple of $I\pi$. This assumes ARG to be an ``Add``. The multiple of $I\pi$ returned in the second position is always a ``Rational``. Examples ======== >>> from sympy.functions.elementary.hyperbolic import _peeloff_ipi as peel >>> from sympy import pi, I >>> from sympy.abc import x, y >>> peel(x + I*pi/2) (x, 1/2) >>> peel(x + I*2*pi/3 + I*pi*y) (x + I*pi*y + I*pi/6, 1/2) ) rr r make_argsrOneis_Mul as_two_terms is_RationalZerorA)argipiaKpm1m2s r3 _peeloff_ipirdws" Q$C ]]3   8A  XX>>#DAqCxAMM AFF{ aff*B RB C< rCceZdZdZddZddZedZee dZ dZ ddZ ddZ dd Zdd Zd Zd ZdZdZdZdZdZdZdZdZdZdZdZdZy )sinha ``sinh(x)`` is the hyperbolic sine of ``x``. The hyperbolic sine function is $\frac{e^x - e^{-x}}{2}$. Examples ======== >>> from sympy import sinh >>> from sympy.abc import x >>> sinh(x) sinh(x) See Also ======== cosh, tanh, asinh cT|dk(rt|jdSt||)z@ Returns the first derivative of this function. r6r)coshargsrselfargindexs r3fdiffz sinh.fdiffs+ q= ! % %$T84 4rCctSz7 Returns the inverse of this function. asinhrjs r3inversez sinh.inverse  rCc|jr|tjurtjS|tjurtjS|tjurtjS|j rtj S|jr ||  Sy|tjurtjSt|}|tt|zS|jr ||  S|jrOt|\}}|r?|tztz}t!|t#|zt#|t!|zzS|j rtj S|j$t&k(r|j(dS|j$t*k(r,|j(d}t-|dz t-|dzzS|j$t.k(r#|j(d}|t-d|dzz z S|j$t0k(r/|j(d}dt-|dz t-|dzzz SyNrr6r7) is_NumberrNaNrMrNis_zeror\ is_negativeComplexInfinityr)r r'could_extract_minus_signis_Addrdrrfrhfuncrqriacoshratanhacoth)clsr]i_coeffxms r3evalz sinh.evals ==aee|uu  "zz!***)))vv SD z!!a'''uu 4S9G"3w<''//1I:%zz#C(1"QA747?T!WT!W_<<{{vv xx5 xx{"xx5 HHQKAE{T!a%[00xx5 HHQKa!Q$h''xx5 HHQK$q1u+QU 344!rCc|dks|dzdk(rtjSt|}t|dkDr|d}||dzz||dz zz S||zt |z S)zG Returns the next term in the Taylor series expansion. rr7rHr6rr\rlenrnrprevious_termsras r3 taylor_termzsinh.taylor_termsl q5AEQJ66M A>"Q&"2&1a4x1a!e9--1v ! ,,rCcZ|j|jdjSNrr}ri conjugaterks r3_eval_conjugatezsinh._eval_conjugate"yy1//122rCc |jdjr<|r(d|d<|j|fi|tjfS|tjfS|r2|jdj|fi|j \}}n |jdj \}}t |t|zt|t|zfS)z@ Returns this function as a complex coordinate. rFcomplex riis_extended_realexpandrr\ as_real_imagrfr#rhr'rkdeephintsrrs r3rzsinh.as_real_imags 99Q< ( (#(i # D2E2AFF;;aff~% (TYYq\((77DDFFBYYq\..0FBRR $r(3r7"233rCc H|jdd|i|\}}||tzzSNrrBrr rkrrre_partim_parts r3_eval_expand_complexzsinh._eval_expand_complex0,4,,@$@%@""rCc |r!|jdj|fi|}n|jd}d}|jr|j\}}nO|j d\}}|t j ur(|jr|t j ur |}|dz |z}|?t|tzt|t|zzjdSt|SNrTrationalr6)trig) rirr|rZ as_coeff_MulrrX is_Integerrfrhrkrrr]rycoefftermss r3_eval_expand_trigzsinh._eval_expand_trig %$))A,%%d4e4C))A,C  ::##%DAq++T+:LE5AEE!e&6&65;MQYM =GDGOd1gd1go5==4=H HCyrCNc 8t|t| z dz SNr7rrkr]limitvarkwargss r3_eval_rewrite_as_tractablezsinh._eval_rewrite_as_tractable&C3t9$))rCc 8t|t| z dz Srrrkr]rs r3_eval_rewrite_as_expzsinh._eval_rewrite_as_exp)rrCc 6t tt|zzSr,r r'rs r3_eval_rewrite_as_sinzsinh._eval_rewrite_as_sin,rCCL  rCc 6t tt|zz Sr,r r%rs r3_eval_rewrite_as_csczsinh._eval_rewrite_as_csc/rrCc Jt t|ttzdz zzSrr rhrrs r3_eval_rewrite_as_coshzsinh._eval_rewrite_as_cosh2s r$sRT!V|$$$rCc Vttj|z}d|zd|dzz z SNr7r6tanhrrArkr]r tanh_halfs r3_eval_rewrite_as_tanhzsinh._eval_rewrite_as_tanh5s,$ {A 1 ,--rCc Vttj|z}d|z|dzdz z SrcothrrArkr]r coth_halfs r3_eval_rewrite_as_cothzsinh._eval_rewrite_as_coth9s,$ {IqL1,--rCc dt|z SNr6cschrs r3_eval_rewrite_as_cschzsinh._eval_rewrite_as_csch=49}rCc*|jdj|||}|j|d}|tjur"|j |d|j rdnd}|jr|S|jr|j|S|SNrlogxcdir-+)dir) rias_leading_termsubsrrwlimitryrx is_finiter}rkrrrr]arg0s r3_eval_as_leading_termzsinh._eval_as_leading_term@siil**14d*Cxx1~ 155=99Qd.>.>sC9HD <<J ^^99T? "KrCc|jd}|jry|j\}}|tzjSNrTriis_realrrrxrkr]rrs r3 _eval_is_realzsinh._eval_is_realMs;iil ;;!!#B2rCc8|jdjryyrrirrs r3_eval_is_extended_realzsinh._eval_is_extended_realW 99Q< ( ( )rCch|jdjr|jdjSyrrir is_positivers r3_eval_is_positivezsinh._eval_is_positive[, 99Q< ( (99Q<++ + )rCch|jdjr|jdjSyrrirryrs r3_eval_is_negativezsinh._eval_is_negative_rrCc8|jd}|jSrrirrkr]s r3_eval_is_finitezsinh._eval_is_finiteciil}}rCcjt|jd\}}|jr |jSyr)rdrirx is_integerrkrestipi_mults r3 _eval_is_zerozsinh._eval_is_zerogs0%diil3h <<&& & rCr6Tr,)rQrRrSrTrmrr classmethodr staticmethodrrrrrrrrrrrrrrrrrrrrrrBrCr3rfrfs&5 .5.5`  -  -34 #"**!!%.. ,,'rCrfceZdZdZddZedZeedZ dZ ddZ ddZ ddZ dd Zd Zd Zd ZdZdZdZdZdZdZdZdZdZdZy )rha" ``cosh(x)`` is the hyperbolic cosine of ``x``. The hyperbolic cosine function is $\frac{e^x + e^{-x}}{2}$. Examples ======== >>> from sympy import cosh >>> from sympy.abc import x >>> cosh(x) cosh(x) See Also ======== sinh, tanh, acosh cT|dk(rt|jdSt||Nr6rrfrirrjs r3rmz cosh.fdiffs) q= ! % %$T84 4rCcxddlm}|jr|tjurtjS|tj urtj S|tj urtj S|jrtjS|jr || Sy|tjurtjSt|}|||S|jr || S|jrOt|\}}|r?|tzt z}t#|t#|zt%|t%|zzS|jrtjS|j&t(k(rt+d|j,ddzzS|j&t.k(r|j,dS|j&t0k(r!dt+d|j,ddzz z S|j&t2k(r/|j,d}|t+|dz t+|dzzz Sy)Nr)r#r6r7)(sympy.functions.elementary.trigonometricr#rvrrwrMrNrxrXryrzr)r{r|rdrr rhrfr}rqrrir~rr)rr]r#rrrs r3rz cosh.evals@ ==aee|uu  "zz!***zz!uu C4y !a'''uu 4S9G"7|#//1t9$zz#C(1"QA747?T!WT!W_<<{{uu xx5 A Q.//xx5 xx{"xx5 a#((1+q.0111xx5 HHQK$q1u+QU 344!rCc|dks|dzdk(rtjSt|}t|dkDr|d}||dzz||dz zz S||zt |z S)Nrr7r6rHrrs r3rzcosh.taylor_termsl q5AEQJ66M A>"Q&"2&1a4x1a!e9--1vil**rCcZ|j|jdjSrrrs r3rzcosh._eval_conjugaterrCc |jdjr<|r(d|d<|j|fi|tjfS|tjfS|r2|jdj|fi|j \}}n |jdj \}}t |t|zt|t|zfS)NrFr) rirrrr\rrhr#rfr'rs r3rzcosh.as_real_imags 99Q< ( (#(i # D2E2AFF;;aff~% (TYYq\((77DDFFBYYq\..0FBRR $r(3r7"233rCc H|jdd|i|\}}||tzzSrrrs r3rzcosh._eval_expand_complexrrCc |r!|jdj|fi|}n|jd}d}|jr|j\}}nO|j d\}}|t j ur(|jr|t j ur |}|dz |z}|?t|tzt|t|zzjdSt|Sr) rirr|rZrrrXrrhrfrs r3rzcosh._eval_expand_trigrrCNc 8t|t| zdz Srrrs r3rzcosh._eval_rewrite_as_tractablerrCc 8t|t| zdz Srrrs r3rzcosh._eval_rewrite_as_exprrCc *tt|zdSNFevaluater#r rs r3_eval_rewrite_as_coszcosh._eval_rewrite_as_cos1s7U++rCc 0dtt|zdz SNr6Frr&r rs r3_eval_rewrite_as_seczcosh._eval_rewrite_as_sec3q3w///rCc Nt t|ttzdz zdzSNr7Frr rfrrs r3_eval_rewrite_as_sinhzcosh._eval_rewrite_as_sinhs"r$sRT!V|e444rCc Vttj|zdz}d|zd|z z Srrrs r3rzcosh._eval_rewrite_as_tanhs,$a' I I ..rCc Vttj|zdz}|dz|dz z Srrrs r3rzcosh._eval_rewrite_as_coths,$a' A A ..rCc dt|z Srsechrs r3_eval_rewrite_as_sechzcosh._eval_rewrite_as_sechrrCcF|jdj|||}|j|d}|tjur"|j |d|j rdnd}|jrtjS|jr|j|S|Sr) rirrrrwrryrxrXrr}rs r3rzcosh._eval_as_leading_termsiil**14d*Cxx1~ 155=99Qd.>.>sC9HD <<55L ^^99T? "KrCc|jd}|js |jry|j\}}|tzj Sr)rir is_imaginaryrrrxrs r3rzcosh._eval_is_realsEiil ;;#** !!#B2rCc |jd}|j\}}|dtzz}|j}|ry|j}|dur|St |t |t |tdz k|dtzdz kDgggSNrr7TFr8rirrrxr r rkzrrymodyzeroxzeros r3rzcosh._eval_is_positives IIaL~~1AbDz    E>LdRTk4!B$q&=9:  rCc |jd}|j\}}|dtzz}|j}|ry|j}|dur|St |t |t |tdz k|dtzdz k\gggSr1r2r3s r3_eval_is_nonnegativezcosh._eval_is_nonnegative?s IIaL~~1AbDz    E>LdbdlDAbDFN;<  rCc8|jd}|jSrrrs r3rzcosh._eval_is_finiteYrrCct|jd\}}|r*|jr|tjz j Syyr)rdrirxrrArrs r3rzcosh._eval_is_zero]s=%diil3h  qvv%11 1%8rCrrr,)rQrRrSrTrmrrr rrrrrrrrrr!r&rrr,rrrr9rrrBrCr3rhrhms&5 -5-5^  +  +3 4#"**,05//  @42rCrhceZdZdZddZddZedZee dZ dZ ddZ dZ dd Zd Zd Zd ZdZdZdZdZdZdZdZdZdZdZy )ra' ``tanh(x)`` is the hyperbolic tangent of ``x``. The hyperbolic tangent function is $\frac{\sinh(x)}{\cosh(x)}$. Examples ======== >>> from sympy import tanh >>> from sympy.abc import x >>> tanh(x) tanh(x) See Also ======== sinh, cosh, atanh c||dk(r,tjt|jddzz St ||Nr6rr7)rrXrrirrjs r3rmz tanh.fdiffws7 q=554 ! -q00 0$T84 4rCctSrorrjs r3rrz tanh.inverse}rsrCc|jr|tjurtjS|tjurtjS|tj urtj S|jrtjS|jr ||  Sy|tjurtjSt|}|6|jrt t| zStt|zS|jr ||  S|jrQt!|\}}|rAt#|t$ztz}|tjur t'|St#|S|jrtjS|j(t*k(r#|j,d}|t/d|dzzz S|j(t0k(r/|j,d}t/|dz t/|dzz|z S|j(t2k(r|j,dS|j(t4k(rd|j,dz Syru)rvrrwrMrXrN NegativeOnerxr\ryrzr)r{r r(r|rdrrrr}rqrirr~rr)rr]rrrtanhms r3rz tanh.evals ==aee|uu  "uu ***}}$vv SD z!!a'''uu 4S9G"3352WH --3w<''//1I:%zz#C(1 2aLE 1 11#Aw#Aw{{vv xx5 HHQKa!Q$h''xx5 HHQKAE{T!a%[0144xx5 xx{"xx5 !}$!rCc|dks|dzdk(rtjSt|}d|dzz}t|dz}t |dz}||dz z|z|z ||zzSNrr7r6)rr\rrr)rrrr_BFs r3rztanh.taylor_termso q5AEQJ66M AAE A!a% A!a% Aa!e9q=?QT) )rCcZ|j|jdjSrrrs r3rztanh._eval_conjugaterrCc |jdjr<|r(d|d<|j|fi|tjfS|tjfS|r2|jdj|fi|j \}}n |jdj \}}t |dzt|dzz}t |t|z|z t|t|z|z fS)NrFrr7r)rkrrrrdenoms r3rztanh.as_real_imags 99Q< ( (#(i # D2E2AFF;;aff~% (TYYq\((77DDFFBYYq\..0FBR! c"gqj(Rb!%'RR)>??rCc |jd}|jrt|j}|jDcgc]}t|dj }}ddg}t |dzD]}||dzxxt ||z cc<|d|dz S|jr|j\}} |jr|dkDrt| } t d|dzdD cgc]} tt || | | zz}} t d|dzdD cgc]} tt || | | zz} } t|t| z St|Scc}wcc} wcc} w)NrFrr6r7) rir|rrrranger*rYrrrr) rkrr]rrTXrairrTkds r3rztanh._eval_expand_trigsbiil ::CHH A#q5);;=#B#AA1q5\ 2!a%N1b11 2Q4!9  ZZ++-LE5EAIK7J99S> !rCc|jd}|jry|j\}}|dk(r|tztdz k(ry|tdz zjS)NrTr7rrs r3rztanh._eval_is_real s[iil ;;!!#B 7rBw"Q$bd $$$rCc8|jdjryyrrrs r3rztanh._eval_is_extended_realrrCch|jdjr|jdjSyrrrs r3rztanh._eval_is_positiverrCch|jdjr|jdjSyrrrs r3rztanh._eval_is_negative"rrCc|jd}|j\}}t|dzt|dzz}|dk(ry|jry|j ryy)Nrr7FT)rirr#rf is_numberr)rkr]rrrJs r3rztanh._eval_is_finite&s`iil!!#BB T"Xq[( A: __    rCc<|jd}|jryyrrirxrs r3rztanh._eval_is_zero2siil ;; rCrrr,)rQrRrSrTrmrrrrr rrrrrrrrZr]r&rrrrrrrrrrBrCr3rrcs&5  2%2%h  *  *3 @&7711>>" %,, rCrceZdZdZddZddZedZee dZ dZ ddZ dd Z d Zd Zd Zd ZdZdZdZdZy)ra+ ``coth(x)`` is the hyperbolic cotangent of ``x``. The hyperbolic cotangent function is $\frac{\cosh(x)}{\sinh(x)}$. Examples ======== >>> from sympy import coth >>> from sympy.abc import x >>> coth(x) coth(x) See Also ======== sinh, cosh, acoth c`|dk(rdt|jddzz St||)Nr6r9rr7r rjs r3rmz coth.fdiffLs3 q=d499Q<(!++ +$T84 4rCctSro)rrjs r3rrz coth.inverseRrsrCc|jr|tjurtjS|tjurtjS|tj urtj S|jrtjS|jr ||  Sy|tjurtjSt|}|6|jrtt| zSt t|zS|jr ||  S|jrQt|\}}|rAt!|t"ztz}|tjur t!|St%|S|jrtjS|j&t(k(r#|j*d}t-d|dzz|z S|j&t.k(r/|j*d}|t-|dz t-|dzzz S|j&t0k(rd|j*dz S|j&t2k(r|j*dSyru)rvrrwrMrXrNrBrxrzryr)r{r r$r|rdrrrr}rqrirr~rr)rr]rrrcothms r3rz coth.evalXs ==aee|uu  "uu ***}}$(((SD z!!a'''uu 4S9G"335sG8},,rCL((//1I:%zz#C(1 2aLE 1 11#Aw#Aw{{(((xx5 HHQKA1H~a''xx5 HHQK$q1u+QU 344xx5 !}$xx5 xx{"!rCc|dk(rdt|z S|dks|dzdk(rtjSt|}t|dz}t |dz}d|dzz|z|z ||zzSrurrr\rrrrrrFrGs r3rzcoth.taylor_termsx 6wqz> ! Ua!eqj66M A!a% A!a% Aq1u:>!#ad* *rCcZ|j|jdjSrrrs r3rzcoth._eval_conjugaterrCc ddlm}m}|jdjr<|r(d|d<|j |fi|t jfS|t jfS|r2|jdj |fi|j\}}n |jdj\}}t|dz||dzz}t|t|z|z || ||z|z fS)Nr)r#r'Frr7) rr#r'rirrrr\rrfrh)rkrrr#r'rrrJs r3rzcoth.as_real_imagsG 99Q< ( (#(i # D2E2AFF;;aff~% (TYYq\((77DDFFBYYq\..0FBR! c"gqj(Rb!%'#b'#b')9%)?@@rCNc Ft| t|}}||z||z z Sr,rrSs r3rzcoth._eval_rewrite_as_tractablerVrCc Ft| t|}}||z||z z Sr,rrXs r3rzcoth._eval_rewrite_as_exprVrCc ft tttzdz |z dzt|z Sr$r%rs r3r&zcoth._eval_rewrite_as_sinhs+r$r!tAv|e44T#Y>>rCc ft t|ztttzdz |z dz Sr$rrs r3rzcoth._eval_rewrite_as_coshs*r$s)|DAa#>>>rCc dt|z Srrrs r3rzcoth._eval_rewrite_as_tanhrbrCch|jdjr|jdjSyrrrs r3rzcoth._eval_is_positiverrCch|jdjr|jdjSyrrrs r3rzcoth._eval_is_negativerrCcddlm}|jdj|}||jvr|d|j |rd|z S|j |Srdrfrjs r3rzcoth._eval_as_leading_termsU,iil**1-   U1a[%9%9#%>S5L99S> !rCc |jd}|jr|jDcgc]}t|dj}}ggg}t |j}t |ddD]&}|||z dzj t||(t|dt|dz S|jr|jd\}}|jri|dkDrdt|d} ggg}t |ddD],}|||z dzj t||| |zz.t|dt|dz St|Scc}w) NrFrr9r7r6Tr) rir|rrrrLappendr*rrYrrr) rkrr]rCXrarrNrcs r3rzcoth._eval_expand_trigsYiil ::GJxxP!$q5);;=PBPRACHH A1b"% =1q5A+%%nQ&;< =!:c1Q4j( ( ZZ'''6HE1EAIU+Hub"-GAuqyAo&--hua.@A.EFGAaDz#qt*,,CyQs"Errr,)rQrRrSrTrmrrrrr rrrrrrr&rrrrrrrBrCr3rr8sz&5  2#2#h  +  +3 A77??,,"rCrceZdZUdZdZdZeed<dZeed<e dZ dZ dZ dZ d Zdd Zd Zd Zdd ZdZddZdZdZdZdZy)ReciprocalHyperbolicFunctionz=Base class for reciprocal functions of hyperbolic functions. N_is_even_is_oddc|jr+|jr || S|jr ||  S|jj |}t |dr"|j |k(r|jdS|d|z S|S)Nrrrr6)r{rr_reciprocal_ofrhasattrrrri)rr]ts r3rz!ReciprocalHyperbolicFunction.evals  ' ' )||C4y {{SD z!    # #C ( 3 "s{{}';88A; mqs**rCcb|j|jd}t|||i|Sr)rrigetattr)rk method_nameriros r3_call_reciprocalz-ReciprocalHyperbolicFunction._call_reciprocals3    ! -&wq+&777rCc@|j|g|i|}|d|z S|Sr)r)rkrrirrs r3_calculate_reciprocalz2ReciprocalHyperbolicFunction._calculate_reciprocals3 "D ! !+ ? ? ?mqs**rCc`|j||}|||j|k7rd|z Syyr)rr)rkrr]rs r3_rewrite_reciprocalz0ReciprocalHyperbolicFunction._rewrite_reciprocals=  ! !+s 3 =Q$"5"5c"::Q3J;=rCc &|jd|S)Nrrrs r3rz1ReciprocalHyperbolicFunction._eval_rewrite_as_exp s''(>DDrCc &|jd|S)Nrrrs r3rz7ReciprocalHyperbolicFunction._eval_rewrite_as_tractables''(DcJJrCc &|jd|S)Nrrrs r3rz2ReciprocalHyperbolicFunction._eval_rewrite_as_tanh''(?EErCc &|jd|S)Nrrrs r3rz2ReciprocalHyperbolicFunction._eval_rewrite_as_cothrrCc fd|j|jdz j|fi|Sr )rrir)rkrrs r3rz)ReciprocalHyperbolicFunction.as_real_imags2CD'' ! 55CCDRERRrCcZ|j|jdjSrrrs r3rz,ReciprocalHyperbolicFunction._eval_conjugaterrCc H|jdddi|\}}|t|zzS)NrTrBrrs r3rz1ReciprocalHyperbolicFunction._eval_expand_complexs0,4,,@$@%@7""rCc &|jdi|S)N)r)r)rkrs r3rz.ReciprocalHyperbolicFunction._eval_expand_trig!s)t))GGGrCchd|j|jdz j|||S)Nr6rr)rrir)rkrrrs r3rz2ReciprocalHyperbolicFunction._eval_as_leading_term$s4$%%diil33JJ1SW^bJccrCcR|j|jdjSr)rrirrs r3rz3ReciprocalHyperbolicFunction._eval_is_extended_real's!""499Q<0AAArCcXd|j|jdz jSr )rrirrs r3rz,ReciprocalHyperbolicFunction._eval_is_finite*s&$%%diil33>>>rCr,r)rQrRrSrTrrr __annotations__rrrrrrrrrrrrrrrrrrBrCr3rrsGNHiGY + +8 + EKFFS3#HdB?rCrc^eZdZdZeZdZd dZee dZ dZ dZ dZ dZd Zd Zy ) ra8 ``csch(x)`` is the hyperbolic cosecant of ``x``. The hyperbolic cosecant function is $\frac{2}{e^x - e^{-x}}$ Examples ======== >>> from sympy import csch >>> from sympy.abc import x >>> csch(x) csch(x) See Also ======== sinh, cosh, tanh, sech, asinh, acosh Tc|dk(r2t|jd t|jdzSt||)z? Returns the first derivative of this function r6r)rrirrrjs r3rmz csch.fdiffEs@ q=1&&diil);; ;$T84 4rCc|dk(rdt|z S|dks|dzdk(rtjSt|}t|dz}t |dz}ddd|zz z|z|z ||zzS)zF Returns the next term in the Taylor series expansion rr6r7ryrzs r3rzcsch.taylor_termNs} 6WQZ<  Ua!eqj66M A!a% A!a% AAqD>A%a'!Q$. .rCc 8ttt|zdz Srrrs r3rzcsch._eval_rewrite_as_sin`3q3w///rCc 8ttt|zdzSrrrs r3rzcsch._eval_rewrite_as_csccrrCc Ltt|ttzdz zdz Sr$rrs r3rzcsch._eval_rewrite_as_coshfs!4a"fqj(5999rCc dt|z Srrfrs r3r&zcsch._eval_rewrite_as_sinhirrCch|jdjr|jdjSyrrrs r3rzcsch._eval_is_positivelrrCch|jdjr|jdjSyrrrs r3rzcsch._eval_is_negativeprrCNr)rQrRrSrTrfrrrmr rrrrrr&rrrBrCr3rr.sR&NG5 / / 00:,,rCrcXeZdZdZeZdZd dZee dZ dZ dZ dZ dZd Zy ) r+a: ``sech(x)`` is the hyperbolic secant of ``x``. The hyperbolic secant function is $\frac{2}{e^x + e^{-x}}$ Examples ======== >>> from sympy import sech >>> from sympy.abc import x >>> sech(x) sech(x) See Also ======== sinh, cosh, tanh, coth, csch, asinh, acosh Tc|dk(r2t|jd t|jdzSt||r )rrir+rrjs r3rmz sech.fdiffs> q=$))A,''TYYq\(:: :$T84 4rCc|dks|dzdk(rtjSt|}t|t |z ||zzSrE)rr\rrrrrrs r3rzsech.taylor_termsC q5AEQJ66M A8il*QV3 3rCc 0dtt|zdz Srrrs r3rzsech._eval_rewrite_as_cosr"rCc *tt|zdSrr rs r3r!zsech._eval_rewrite_as_secrrCc Ltt|ttzdz zdz Sr$r%rs r3r&zsech._eval_rewrite_as_sinhs 4a"fai%888rCc dt|z Srrhrs r3rzsech._eval_rewrite_as_coshrrCc8|jdjryyrrrs r3rzsech._eval_is_positiverrCNr)rQrRrSrTrhrrrmr rrrr!r&rrrBrCr3r+r+usM&NH5  4 40,9rCr+ceZdZdZy)InverseHyperbolicFunctionz,Base class for inverse hyperbolic functions.N)rQrRrSrTrBrCr3rrs6rCrceZdZdZddZedZeedZ dZ dfd Z dZ e Z dZd Zd Zd Zdd Zd ZdZdZxZS)rqaM ``asinh(x)`` is the inverse hyperbolic sine of ``x``. The inverse hyperbolic sine function. Examples ======== >>> from sympy import asinh >>> from sympy.abc import x >>> asinh(x).diff(x) 1/sqrt(x**2 + 1) >>> asinh(1) log(1 + sqrt(2)) See Also ======== acosh, atanh, sinh cf|dk(r!dt|jddzdzz St||r>)rrirrjs r3rmz asinh.fdiffs7 q=T$))A,/A-.. .$T84 4rCc&|jr|tjurtjS|tjurtjS|tjurtjS|j rtj S|tjurttddzS|tjurttddz S|jr||  S|tjurtjS|j rtj St|}|tt|zS|j!r ||  St#|t$r|j&dj(rz|j&d}|j*r|St-|\}}|L|It/|t0dz zt0z }|tt0z|zz }|j2}|dur|S|dur| Syyyyy)Nr7r6rTF)rvrrwrMrNrxr\rXrrrBryrzr)r r!r{ isinstancerfrirprrrris_even) rr]rr4rrNfrevens r3rz asinh.evals ==aee|uu  "zz!***)))vv 47Q;'' %47Q;''SD z!a'''((({{vv 4S9G"4=((//1I:% c4 SXXa[%:%: Ayy"1%DAq}1r!t8R-("QJyy4<HU]2I# "/} &; rCcV|dks|dzdk(rtjSt|}t|dk\r%|dkDr |d}| |dz dzz||dz zz |dzzS|dz dz}t tj |}t |}tj|z|z|z ||zz|z SNrr7rHr6)rr\rrrrArrBrrrrarPRrGs r3rzasinh.taylor_terms q5AEQJ66M A>"a'AE"2&rQUQJ1q5 2QT99UqL#AFFA.aL}}a'!+a/!Q$6::rCc|jd}|j|dj}|jr|j |S|t j ur0|j|j |}|jr|S|S|t tt jfvr'|jtj|||Sd|dzzjr|j||r|nd}t!|j"r5t%|jr|j| tt&zz St!|jr5t%|j"rG|j| tt&zzS|jtj|||S|j|SNrrr6r7)rircancelrxrrrwr}rr rzr0rrryrrrrrrkrrrr]x0r1ndirs r3rzasinh._eval_as_leading_termsiiil XXa^ " " $ ::&&q) ) ;99S0034D~~   1"a**+ +<<$::14d:S S AI " "771dd2D$x##b6%% IIbM>AbD00D%%b6%% IIbM>AbD00||C(>>qtRV>WWyy}rCc|jd}|j|d}|tt fvr(|jtj ||||St ||||}|tjur|Sd|dzzjr|j||r|nd}t|jr(t|jr| ttzz S|St|jr(t|jr| ttzzS|S|jtj ||||S|SNrrrrr6r7)rirr r0r _eval_nseriessuperrrzryrrrrr rkrrrrr]rresr __class__s r3rzasinh._eval_nseries-s/iilxx1~ Ar7?<<$221ad2N Ng#A#6 1$$ $J aK $ $771dd2D$x##d8''4!B$;&  D%%d8''4!B$;& ||C(66q!$T6RR rCc <t|t|dzdzzSrrrrkrrs r3_eval_rewrite_as_logzasinh._eval_rewrite_as_logFs1tAqD1H~%&&rCc <t|td|dzzz SNr6r7)rrrs r3_eval_rewrite_as_atanhzasinh._eval_rewrite_as_atanhKsQtA1H~%&&rCc t|z}ttd|z t|dz z t|ztdz z zSr)r rr~r)rkrrixs r3_eval_rewrite_as_acoshzasinh._eval_rewrite_as_acoshNs= qS$q2v,tBF|+eBi7"Q$>??rCc :t tt|zdzSr)r r!rs r3_eval_rewrite_as_asinzasinh._eval_rewrite_as_asinRsrDQ///rCc Zttt|zdzttzdz z S)NFrr7)r rrrs r3_eval_rewrite_as_acoszasinh._eval_rewrite_as_acosUs%4A..2a77rCctSrorrjs r3rrz asinh.inverseX  rCc4|jdjSrrrrs r3rzasinh._eval_is_zero^syy|###rCc4|jdjSrrrs r3rzasinh._eval_is_extended_realayy|,,,rCc4|jdjSrrrs r3rzasinh._eval_is_finitedyy|%%%rCrr)rQrRrSrTrmrrr rrrrrrrrrrrrrrr __classcell__rs@r3rqrqs~*5 ++Z  ;  ;:2'"6'@08 $-&rCrqceZdZdZddZedZeedZ dZ dfd Z dZ e Z dZd Zd Zd Zdd Zd ZdZdZxZS)r~aM ``acosh(x)`` is the inverse hyperbolic cosine of ``x``. The inverse hyperbolic cosine function. Examples ======== >>> from sympy import acosh >>> from sympy.abc import x >>> acosh(x).diff(x) 1/(sqrt(x - 1)*sqrt(x + 1)) >>> acosh(1) 0 See Also ======== asinh, atanh, cosh c|dk(r/|jd}dt|dz t|dzzz St||r rirr)rkrlr]s r3rmz acosh.fdiff~sC q=))A,Cd37mDqM12 2$T84 4rCcj|jr|tjurtjS|tjurtjS|tjurtjS|j rt tzdz S|tjurtjS|tjur t tzS|jr+t}||vr|jr ||tzS||S|tjurtjS|ttjzk(r!tjtt zdz zS|t tjzk(r!tjtt zdz z S|j rt tztjzSt!|t"r|j$djr|j$d}|j&r t)|St+|\}}||t-|t z }|tt z|zz }|j.}|dur|j0r|S|j2r| Sy|dur.|tt zz}|j4r| S|j6r|Syyyyyy)Nr7rTF)rvrrwrMrNrxrr rXr\rBrprDrrzrArrhrirrrrris_nonnegativeryis_nonpositiver) rr] cst_tabler4rrNrrrs r3rz acosh.evals) ==aee|uu  "zz!***zz!!taxvv  %!t ==$Ii''$S>!++ ~% !## #$$ $ !AJJ, ::"Q& & 1"QZZ- ::"Q& & ;;a4;  c4 SXXa[%:%: Ayy1v "1%DAq}!B$K"QJyy4<''  !r 'U]2IA'' !r  ' #"/} &; rCcf|dk(rttzdz S|dks|dzdk(rtjSt |}t |dk\r$|dkDr|d}||dz dzz||dz zz |dzzS|dz dz}t tj|}t|}| |z tz||zz|z Sr) r rrr\rrrrArrs r3rzacosh.taylor_terms 6R46M Ua!eqj66M A>"a'AE"2&AEA:~q!a%y1AqD88UqL#AFFA.aLrAvzAqD(1,,rCcH|jd}|j|dj}|tj tj tjtj fvr'|jtj|||S|tjur0|j|j|}|jr|S|S|dz jr|j||r|nd}t!|jrC|dzjr"|j|dt"zt$zz S|j| St!|j&s'|jtj|||S|j|Sr)rirrrrXr\rzr0rrrwr}rrryrrr rrrs r3rzacosh._eval_as_leading_termsGiil XXa^ " " $ 155&!&&!%%):):; ;<<$::14d:S S ;99S0034D~~   F  771dd2D$x##F''99R=1Q3r611 " ~%X))||C(>>qtRV>WWyy}rCcb|jd}|j|d}|tjtjfvr(|j t j||||St ||||}|tjur|S|dz jr|j||r|nd}t|jr%|dzjr|dtztzz S| St|js(|j t j||||S|SrrirrrXrBr0rrrrzryrrr rrrs r3rzacosh._eval_nseriess iilxx1~ AEE1==) )<<$221ad2N Ng#A#6 1$$ $J 1H ! !771dd2D$x##1H))1R<'t X))||C(66q!$T6RR rCc Tt|t|dzt|dz zzSrrrs r3rzacosh._eval_rewrite_as_logs'1tAE{T!a%[0011rCc Tt|dz td|z z t|zSr)rrrs r3rzacosh._eval_rewrite_as_acoss&AE{4A;&a00rCc ht|dz td|z z tdz t|z zSr)rrr!rs r3rzacosh._eval_rewrite_as_asins.AE{4A;&"Q$a.99rCc t|dz td|z z tdz ttt|zdzzzSNr6r7Fr)rrr rqrs r3_eval_rewrite_as_asinhzacosh._eval_rewrite_as_asinh s;AE{4A;&"Q$51u3M1M*MNNrCc t|dz }td|z }t|dzdz }tdz |z|z d|td|dzz zz z|t|dzz|z t||z zzSr)rrr)rkrrsxm1s1mxsx2m1s r3rzacosh._eval_rewrite_as_atanh sAE{AE{QTAX1T $AQq!tV $4 45T!a%[ &uQw78 9rCctSrorrjs r3rrz acosh.inverserrCc>|jddz jryy)Nrr6Trrrs r3rzacosh._eval_is_zeros IIaL1  % % &rCc~t|jdj|jddz jgSNrr6)r riris_extended_nonnegativers r3rzacosh._eval_is_extended_reals3$))A,77$))A,:J9c9cdeerCc4|jdjSrrrs r3rzacosh._eval_is_finite rrCrr)rQrRrSrTrmrrr rrrrrrrrrrrrrrrrrs@r3r~r~hs*54!4!l - - 2.2"61:O9 f&rCr~ceZdZdZddZedZeedZ dZ dfd Z dZ e Z dZd Zd Zd Zd Zdd ZxZS)ra) ``atanh(x)`` is the inverse hyperbolic tangent of ``x``. The inverse hyperbolic tangent function. Examples ======== >>> from sympy import atanh >>> from sympy.abc import x >>> atanh(x).diff(x) 1/(1 - x**2) See Also ======== asinh, acosh, tanh cT|dk(rdd|jddzz z St||r>rirrjs r3rmz atanh.fdiff82 q=a$))A,/)* *$T84 4rCcX|jr|tjurtjS|jrtjS|tj urtj S|tjurtjS|tj urt t|zS|tjurtt| zS|jrz||  S|tjur%ddl m}t|t dz tdz zSt!|}|tt|zS|j#r ||  S|jrtjSt%|t&r|j(dj*r|j(d}|j,r|St/|\}}|X|Ut1d|ztz }|j2}|t|ztzdz z } |dur| S|dur| ttzdz z Syyyyy)Nr AccumBoundsr7TF)rvrrwrxr\rXrMrBrNr r"ryrz!sympy.calculus.accumulationboundsrrr)r{rrrirprrrr) rr]rrr4rrNrrrs r3rz atanh.eval>s ==aee|uu vv zz! %))) "rDI~%***4:~%SD z!a'''IbSUBqD1114S9G"4=((//1I:% ;;66M c4 SXXa[%:%: Ayy"1%DAq}!A#b&Myy!BqL4<HU]qtAv:%# "/} &; rCcb|dks|dzdk(rtjSt|}||z|z SNrr7)rr\rrs r3rzatanh.taylor_termms4 q5AEQJ66M Aa4!8OrCc|jd}|j|dj}|jr|j |S|t j ur0|j|j |}|jr|S|S|t j t jt jfvr'|jtj|||Sd|dzz jr|j||r|nd}t!|jr+|jr|j|t"t$zz St!|j&r+|j&rF|j|t"t$zzS|jtj|||S|j|Sr)rirrrxrrrwr}rrXrzr0rrryrrr rrrs r3rzatanh._eval_as_leading_termvsaiil XXa^ " " $ ::&&q) ) ;99S0034D~~   155&!%%!2!23 3<<$::14d:S S AI " "771dd2D$x##>>99R=1R4//D%%>>99R=1R4//||C(>>qtRV>WWyy}rCc|jd}|j|d}|tjtjfvr(|j t j||||St ||||}|tjur|Sd|dzz jr|j||r|nd}t|jr|jr|ttzz S|St|jr|jr|ttzzS|S|j t j||||S|Srrrs r3rzatanh._eval_nseriess+iilxx1~ AEE1==) )<<$221ad2N Ng#A#6 1$$ $J aK $ $771dd2D$x####2:%  D%%##2:% ||C(66q!$T6RR rCc Btd|ztd|z z dz Srrrs r3rzatanh._eval_rewrite_as_logs"AE SQZ'1,,rCc td|dzdz z }t|zdt|dz zz t| td|dzz zt|z |zt|zz Sr)rrrq)rkrrrs r3rzatanh._eval_rewrite_as_asinhsm AqD1H 1aadU m$aRa!Q$h'Q/1%(:; >> from sympy import acoth >>> from sympy.abc import x >>> acoth(x).diff(x) 1/(1 - x**2) See Also ======== asinh, acosh, coth cT|dk(rdd|jddzz z St||r>rrjs r3rmz acoth.fdiffrrCc|jr|tjurtjS|tjurtjS|tj urtjS|j rttzdz S|tjurtjS|tjurtj S|jrf||  S|tjurtjSt|}|t t|zS|jr ||  S|j rttztj zSyr)rvrrwrMr\rNrxrr rXrBryrzr)r r{rA)rr]rs r3rz acoth.evals ==aee|uu  "vv ***vv !taxzz! %)))SD z!a'''vv 4S9G"rDM))//1I:% ;;a4;  rCc|dk(rt tzdz S|dks|dzdk(rtjSt |}||z|z Sr)r rrr\rrs r3rzacoth.taylor_termsJ 62b57N Ua!eqj66M Aa4!8OrCc|jd}|j|dj}|tjurd|z j |S|tj ur0|j|j |}|jr|S|S|tj tjtjfvr'|jtj|||S|jrd|dzz jr|j!||r|nd}t#|j$r+|jr|j|t&t(zzSt#|jr+|j$rF|j|t&t(zz S|jtj|||S|j|S)Nrr6rr7)rirrrrzrrwr}rrXr\r0rrrrrrryr rrs r3rzacoth._eval_as_leading_termspiil XXa^ " " $ "" "cE**1- - ;99S0034D~~   155&!%%( (<<$::14d:S S ::1r1u911771dd2D$x##>>99R=1R4//D%%>>99R=1R4//||C(>>qtRV>WWyy}rCc|jd}|j|d}|tjtjfvr(|j t j||||St ||||}|tjur|S|jrd|dzz jr|j||r|nd}t|jr|jr|tt zzS|St|jr|jr|tt zz S|S|j t j||||S|Sr)rirrrXrBr0rrrrzrrrrryr rrs r3rzacoth._eval_nseries*s1iilxx1~ AEE1==) )<<$221ad2N Ng#A#6 1$$ $J <  821"6: ^]rCrceZdZdZddZedZeedZ dZ dfd Z ddZ dZ e Zd Zd Zd Zd Zd ZdZxZS)asecha ``asech(x)`` is the inverse hyperbolic secant of ``x``. The inverse hyperbolic secant function. Examples ======== >>> from sympy import asech, sqrt, S >>> from sympy.abc import x >>> asech(x).diff(x) -1/(x*sqrt(1 - x**2)) >>> asech(1).diff(x) 0 >>> asech(1) 0 >>> asech(S(2)) I*pi/3 >>> asech(-sqrt(2)) 3*I*pi/4 >>> asech((sqrt(6) - sqrt(2))) I*pi/12 See Also ======== asinh, atanh, cosh, acoth References ========== .. [1] https://en.wikipedia.org/wiki/Hyperbolic_function .. [2] https://dlmf.nist.gov/4.37 .. [3] https://functions.wolfram.com/ElementaryFunctions/ArcSech/ cp|dk(r&|jd}d|td|dzz zz St||Nr6rr9r7rrkrlr4s r3rmz asech.fdiffs? q= ! Aqa!Q$h'( ($T84 4rCc|jr|tjurtjS|tjurtt zdz S|tj urtt zdz S|jrtjS|tjurtjS|tjur tt zS|jr+t}||vr|jr ||t zS||S|tjur%ddlm}t |t dz tdz zS|jrtjSy)Nr7rr)rvrrwrMrr rNrxrXr\rBrprOrrzrr)rr]rrs r3rz asech.evals ==aee|uu  "!tax***!taxzz!vv  %!t ==$Ii''$S>!++ ~% !## # E["Q1-- - ;;::  rCc||dk(rtd|z S|dks|dzdk(rtjSt|}t |dkDr*|dkDr%|d}||dz |dz zz|dzzd|dzdzzz S|dz}t tj ||z}t||zdz|zdz}d|z|z ||zzdz S)Nrr7r6rHr:r9)rrr\rrrrArrs r3rzasech.taylor_terms 6q1u:  Ua!eqj66M A>"Q&1q5"2&QUQqSM*QT111qy=AAF#AFFA.2aL1$)A-2AvzAqD(1,,rCcx|jd}|j|dj}|tj tj tjtj fvr'|jtj|||S|tjur0|j|j|}|jr|S|S|jsd|z jr|j||r|nd}t!|j"rO|j"s|dzjr|j| S|j|dt$zt&zz St!|js'|jtj|||S|j|Sr)rirrrrXr\rzr0rrrwr}rrryrrrr rrs r3rzasech._eval_as_leading_termsSiil XXa^ " " $ 155&!&&!%%):):; ;<<$::14d:S S ;99S0034D~~   >>a"f11771dd2D$x##>>b1f%9%9 IIbM>)yy}qs2v--X))||C(>>qtRV>WWyy}rCcddlm}|jd}|j|d}|tj ur]t dd}ttj |dzz jtj|dd|z} tj |jdz } | j|} | | z | z } | j|ds|dk(r|dS|t|Sttj | zj|||} | jt| zj!}| jj||j!j#|||z|zS|tj$urkt dd}ttj$|dzzjtj|dd|z} tj |jdz} | j|} | | z | z } | j|ds,|dk(r|dSt&t(z|t|zSttj | zj|||} | jt| zj!}| jj||j!j#|||z|zSt*|9|||}|tj,ur|S|j.sd|z j.r|j1||r|nd}t3|j4r1|j4s|dzj.r| S|dt&zt(zz St3|j.s(|jtj|||| S|S Nr)OrT)positiver7r6rr)rgr<rirrrXrr3r0rnseriesris_meromorphicrrremoveOrpowsimprBr rrrzryrrrrkrrrrr<r]rrserarg1rgres1rrrs r3rzasech._eval_nseriess=(iilxx1~ 155=cD)A1 %--c2::1a1EC55499Q<'D$$Q'AA A##Aq) Avqt51T!W:5 ?00ad0CD<<>$q')113C;;=%%a-446>>@1QT1:M M 1== cD)A 1,-55c:BB1a1MC55499Q<'D$$Q'AA A##Aq) Avqt<1R4!DG*+<< ?00ad0CD<<>$q')113C;;=%%a-446>>@1QT1:M Mg#A#6 1$$ $J   D55771dd2D$x####q'='=4KQqSV|#X))||C(66q!$T6RR rCctSror*rjs r3rrz asech.inverserrCc ftd|z td|z dz td|z dzzzSrrrs r3rzasech._eval_rewrite_as_logs31S54# ?T!C%!)_<<==rCc td|z Sr)r~rs r3rzasech._eval_rewrite_as_acosh QsU|rCc td|z dz tdd|z z z ttt|z dzttj zzzSr)rr rqrrrArs r3rzasech._eval_rewrite_as_asinhsNAcEAItA#I.%#2N0N24QVV)1<= =rCc httzdt|td|z zz tdz t| zt|z z tdz t|dzzt|dz z z ztd|dzz t|dzzttd|dzz zzSr)r rrrrs r3rzasech._eval_rewrite_as_atanhs"a$q'$qs)++ac$r(l47.BBQqSaQRd^TXZ[]^Z^Y^T_E__`q!a%y/$q1u+-eDQTN.CCD ErCc td|z dz tdd|z z z tdz ttt|zdzz zSr)rrr acschrs r3_eval_rewrite_as_acschzasech._eval_rewrite_as_acschsCAaC!G}T!ac']*BqD1U1Q35O3O,OPPrCct|jdj|jdjd|jdz jgSr rrs r3rzasech._eval_is_extended_realsI$))A,7719T9TWX[_[d[def[gWgVwVwxyyrCcFt|jdjSrr rirxrs r3rzasech._eval_is_finite1--..rCrr)rQrRrSrTrmrrr rrrrrrrrrrrrOrrrrs@r3r3r3\s|#J5< - - 2+Z >"6=EQz/rCr3ceZdZdZddZedZeedZ dZ dfd Z ddZ dZ e Zd Zd Zd Zd Zd ZdZxZS)rNa ``acsch(x)`` is the inverse hyperbolic cosecant of ``x``. The inverse hyperbolic cosecant function. Examples ======== >>> from sympy import acsch, sqrt, I >>> from sympy.abc import x >>> acsch(x).diff(x) -1/(x**2*sqrt(1 + x**(-2))) >>> acsch(1).diff(x) 0 >>> acsch(1) log(1 + sqrt(2)) >>> acsch(I) -I*pi/2 >>> acsch(-2*I) I*pi/6 >>> acsch(I*(sqrt(6) - sqrt(2))) -5*I*pi/12 See Also ======== asinh References ========== .. [1] https://en.wikipedia.org/wiki/Hyperbolic_function .. [2] https://dlmf.nist.gov/4.37 .. [3] https://functions.wolfram.com/ElementaryFunctions/ArcCsch/ c||dk(r,|jd}d|dztdd|dzz zzz St||r5rr6s r3rmz acsch.fdiffFsH q= ! Aq!tDQq!tV,,- -$T84 4rCc|jr|tjurtjS|tjurtjS|tj urtjS|j rtjS|tjurtdtdzS|tjurtdtdz S|jrt}||vr ||tzS|tjurtjS|jrtjS|j rtjS|j!r ||  Syr)rvrrwrMr\rNrxrzrXrrrBrprJr is_infiniter{)rr]rs r3rz acsch.evalMs ==aee|uu  "vv ***vv (((1tAw;'' %Qa[))) ==$Ii ~a'' !## #66M ??66M ;;$$ $  ' ' )I:  *rCc|dk(rtd|z S|dks|dzdk(rtjSt|}t |dkDr+|dkDr&|d}| |dz |dz zz|dzzd|dzdzzz S|dz}t tj ||z}t||zdz|zdz}tj|dzz|z|z ||zzdz S)Nrr7r6rHr:) rrr\rrrrArrBrs r3rzacsch.taylor_termos 6q1u:  Ua!eqj66M A>"Q&1q5"2&ra!eac]+ad2AA MBBF#AFFA.!3aL1$)A-2}}q!t,q014q!t;a??rCc|jd}|j|dj}|t ttj fvr'|j tj|||S|tjur0|j|j|}|jr|S|S|tjurd|z j|S|jrd|dzzjr|j!||r|nd}t#|jr5t%|jr|j| tt&zz St#|j(r5t%|j(rG|j| tt&zzS|j tj|||S|j|Sr)rirrr rr\r0rrrwr}rrrzr/rrrrrryrs r3rzacsch._eval_as_leading_termsuiil XXa^ " " $ 1"a <<$::14d:S S ;99S0034D~~  "" "cE**1- - ??BE 66771dd2D$x##b6%% IIbM>AbD00D%%b6%% IIbM>AbD00||C(>>qtRV>WWyy}rCc"ddlm}|jd}|j|d}|tur^t dd}t t|dzzjtj|dd|z} t |jdz} | j|} | | z | z } | j|ds0|dk(r|dSt tzdz |t|zSttj| zj!|||} | j#t| zj%}| j#j||j%j'|||z|z}|S|tj(tzk(r[t dd}t t |dzzjtj|dd|z} t|jdz} | j|} | | z | z } | j|ds/|dk(r|dSttzdz |t|zSttj| zj!|||} | j#t| zj%}| j#j||j%j'|||z|zSt*|A|||}|tj,ur|S|j.rd|dzzj0r|jdj3||r|nd}t5|j0r(t7|j0r| ttzz S|St5|j8r(t7|j8r| ttzzS|S|jtj!|||| S|Sr;)rgr<rirr rrNr0rr>rr?rrrrXrr@rrArBrrzr/rrrrryrBs r3rzacsch._eval_nseriessr(iilxx1~ 19cD)AAqD/))#.66q!QqSAC2 ! $D$$Q'AA A##Aq) Avqt?A2b57QtAwZ+?? ?00ad0CD<<>$q')113C++-$$Q,335==?!AqD!*LCJ 1==? "cD)AQT "**3/771acBCtyy|#D$$Q'AA A##Aq) Avqt>1R46Ad1gJ+>> ?00ad0CD<<>$q')113C;;=%%a-446>>@1QT1:M Mg#A#6 1$$ $J   !dAg+!:!:99Q<##Att;D$x##d8''4!B$;&  D%%d8''4!B$;& ||C(66q!$T6RR rCctSrorrjs r3rrz acsch.inverserrCc Htd|z td|dzz dzzSrrrs r3rzacsch._eval_rewrite_as_logs'1S54#q&1 --..rCc td|z Srrprs r3rzacsch._eval_rewrite_as_asinhrJrCc ttdt|z z tt|z dz z tt|z dzttj zz zSr)r rr~rrrArs r3rzacsch._eval_rewrite_as_acoshsT$q1S5y/$quqy/1 %aee <=?A!&&yIJ JrCc |dz}|dz}t| |z ttjzt|dz |z t t|zz zSr)rrrrAr)rkr]rarg2arg2p1s r3rzacsch._eval_rewrite_as_atanhs^AvTE{3166 $faiZ 0 7d6l8K K!LM MrCc4|jdjSr)rirWrs r3rzacsch._eval_is_zerosyy|'''rCc4|jdjSrrrs r3rzacsch._eval_is_extended_realrrCcFt|jdjSrrRrs r3rzacsch._eval_is_finiterSrCrr)rQrRrSrTrmrrr rrrrrrrrrrrrrrrrs@r3rNrN s~#J5B @ @ :.` /"6JM (-/rCrNN)J sympy.corerrrsympy.core.addrsympy.core.functionrrsympy.core.logicr r r r sympy.core.numbersr rrsympy.core.symbolr(sympy.functions.combinatorial.factorialsrrr%sympy.functions.combinatorial.numbersrrr$sympy.functions.elementary.complexesrrr&sympy.functions.elementary.exponentialrrr#sympy.functions.elementary.integersr(sympy.functions.elementary.miscellaneousrrrr r!r"r#r$r%r&r'r(r)sympy.polys.specialpolysr*r4rDrJrOr/rdrfrhrrrrr+rrqr~rrr3rNrBrCr3rrs**CFF..#GGFF<<LL59$$$$42   2    $    F  DQ' Q'hs2 s2lR Rji iXG?#5G?TD, 'D,N4 '4v  o& %o&dy& %y&xb %bJP] %P]fA/ %A/HM/ %M/rC