
    !Цi&                     $    S SK rS/r/ SQrSS jrg)    Ndemo_signal)BlocksBumps	HeaviSineDopplerRampHiSineLoSineLinChirpTwoChirp	QuadChirpMishMashWernerSorrows	HypChirps	LinChirpsChirpsGaborsineoneoverxzPiece-RegularzPiece-PolynomialRiemannc           
      6!   U R                  5       S:X  a  [        $ Ub>  US:  d	  US-  S:w  a  [        S5      e[        R                  " SU-  SSU-  -   SU-  5      nSS/nU R                  5       n X;   a  Ub  [        SU  35      eUc  X;  a  [        S	U  35      eU S
:X  aD  / SQn/ SQnSn[        XE5       H)  u  pxXhS[        R                  " WU-
  5      -   -  S-  -  nM+     U$ U S:X  aM  / SQn/ SQn/ SQn	Sn[        XEU	5       H-  u  pxn
XhS[        R                  " WU-
  U
-  5      -   S-  -  -  nM/     U$ U S:X  ac  S[        R                  " S[        R                  -  W-  5      -  [        R                  " US-
  5      -
  [        R                  " SU-
  5      -
  nU$ U S:X  aO  [        R                  " WSU-
  -  5      [        R                  " S[        R                  -  S-  US-   -  5      -  nU$ U S:X  a
  WUS:  -
  nU$ U S:X  a/  [        R                  " [        R                  US-  -  W-  5      nU$ U S:X  a/  [        R                  " [        R                  US-  -  W-  5      nU$ U S:X  a2  [        R                  " [        R                  W-  US-  U-  -  5      nU$ U S :X  a^  [        R                  " [        R                  W-  X-  -  5      [        R                  " [        R                  S!-  U-  X-  -  5      -   nU$ U S":X  a4  [        R                  " [        R                  S!-  W-  XS-  -  -  5      nU$ U S#:X  a  [        R                  " [        R                  S!-  W-  XS-  -  -  5      nU[        R                  " [        R                  US-  -  U-  5      -  nU[        R                  " [        R                  U-  US$-  U-  -  5      -  nU$ U S%:X  a  [        R                  " [        R                  W-  US-  US-  -  -  5      nU[        R                  " [        R                  US-  -  U-  5      -   nU[        R                  " [        R                  U-  X-  -  5      -   n/ SQn/ SQn/ SQn[        XU5       H,  u  pn
XhS[        R                  " X.-
  U
-  5      -   S-  -  -  nM.     U$ U S&:X  Ga	  S'U-  [        R                  -  S(-  nS)U-  [        R                  -  S(-  n[        R                  " S*US+-   S-   5      U-  n[        R                  " U5      n[        R                  " U5      n[        R                  " US,U-
  -  5      S-U:  -  US.:  -  n[        R                  " US,U-
  -  5      S-U:  -  US/:  -  n[        [        R                  " S0U-  5      5      nUS-  n[        R                  " U5      n[        R                  " SUS-   5      [        R                  " U5      -
  nS[        R                  " [        R                  * S-  UUS-
  -  [        R                  -  -   5      -   S-  USU& USU SSS12   UUU-
  U& [        R                  " U5      nUSU U[        [        R                  " US2-  5      5      S-
  U[        [        R                  " US2-  5      5      -   S-
  & UU-   U-  nU$ U S3:X  a  S4U-  [        R                  -  S(-  nS5U-  [        R                  -  S(-  n[        R                  " SUS-   5      U-  n[        R                  " USU-  -
  SU-
  -  5      nU[        R                   " UUS-  -  5      [        R                   " UU-  UUS-  -  -   5      -   -  nU$ U S6:X  Gah  [        R                  " SUS-   5      U-  S2-  [        R                  -  n[        R                   " US-  U-  S(-  5      nS7U-  S(-  n[        R                  " SUS-   5      U-  [        R                  -  n[        R                   " UUS!-  -  5      nUSSS12   n[        R                  " U* US-   5      U-  S8-  n[        R"                  " US-  * S-  U-  S(-  5      n[%        US-  US-  U-   5      n[%        US9-  US9-  U-   5      n[        R                  " SUS-   5      U-  nUU   [        R                   " S:[        R                  -  U-  U-  S(-  5      -  nUU   [        R                   " S;[        R                  -  U-  U-  S(-  5      -  n UU-   U-   U -   n[        R                  " U5      n[        R                  " SUS9-  S-   5      [        R                  " US9-  5      -
  nS[        R                  " [        R                  * S-  UUS9-  S-
  -  [        R                  -  -   5      -   S-  USUS9-  & USUS9-   SSS12   US<U-  S9-  U& UU-  nU$ U S:X  Ga  S=n[        R                  " U* US-   5      S)-  U-  n[        R                  " SUS-   5      U-  n[        R"                  " US-  * S8-  5      n[%        SU-  S-  SU-  S-  U-   5      n[%        US-  US-  U-   5      nS!UU   -  [        R"                  " S>US?-  -  [        R                  -  U-  5      -  nS!UU   -  [        R"                  " S>US-  -  [        R                  -  U-  5      -  nUU-   nU$ U S:X  aS  S(n[        R                  " U* S-   US-   [&        S@9nSAUUS:H  '   UUS-
  -  n[        R                  " SBU-  5      nUS=SC nU$ U SD:X  Ga  [        R                  " U5      n[        [        R(                  " USE-  5      5      n![        [        R(                  " US<-  5      5      n"[        [        R(                  " US)-  5      5      n#[        [        R(                  " US!-  5      5      n$[        [        R(                  " US-  5      5      n%[        [        R(                  " US8-  5      5      n&SF[+        SU5      -  n[        R                  " SU!S-   5      U!-  n[        R"                  " SU-  5      * n[        R                  " SU"S-   5      U"-  n[        R"                  " SU-  5      [        R"                  " S5      -
  n'[        R                  " SU$S-   5      U$-  nSGn(SH[        R"                  " US-
  US-
  -  * SU(S-  -  -  5      -  n)U)SU" USU"& SU)U"U# -  UU"U#& U)U#U$ UU#U$& UU$U% UU$U%& UUU%U%U!-   & UUU%SU!-  -   S-
  U%U!-   S-
  S12'   [        R                  " U%SU!-  -   S!U&-  -   U%-
  SU!-  -
  U&-
  5      * SI-  UU%SU!-  -   U&-   U%SU!-  -   S!U&-  -   & U%SU!-  -   S!U&-  -   n*U'UU*U*U"-   & US)U#-  -
  n+UU+S-
  SS12   US)U#-  U& [        R,                  " U5      U-  n,U,U-
  nU$ U SJ:X  Ga  [        R                  " U5      n[        [        R(                  " US)-  5      5      n#[        [        R(                  " US2-  5      5      n-[        [        R(                  " US8-  5      5      n&[        R                  " SU#S-   5      U#-  nS8US!-  US-  -   S-   -  nSKSUS!-  -  U-   -  S4-   nS2US!-  -  SL-   nS?US-  -  S9U-  -   S?-   n S8US-   -  n'[        R                  " U-5      S8-  n)UUSU#& UUSU#-  S-
  U#S-
  S12'   UUSU#-  S!U#-  & U US!U#-  SU#-  & U'U#SS12   USU#-  S)U#-  & US)U#-  -
  n+UU+S-
  SS12   US)U#-  U& [        R                  " U-5      S2-  UU&U&U--   & [        R                  " U&5      SM-  XaU--
  UU&-   U--
  & [        R,                  " U5      U-  n,UU,-
  nU$ U SN:X  a  [        [        R                  " [        R                  " U5      5      5      n.[        R                  " SU.S-   5      n/U/U/-  n/[        R.                  " W5      nSO[        R                  " SU.S-   5      -  UU/S-
  '   [        R0                  " [        R2                  R5                  U5      5      nU$ [        SPU  SQ[         35      e)Ru  Simple 1D wavelet test functions.

This function can generate a number of common 1D test signals used in
papers by David Donoho and colleagues (e.g. [1]_) as well as the wavelet
book by Stéphane Mallat [2]_.

Parameters
----------
name : {'Blocks', 'Bumps', 'HeaviSine', 'Doppler', ...}
    The type of test signal to generate (`name` is case-insensitive). If
    `name` is set to `'list'`, a list of the available test functions is
    returned.
n : int or None
    The length of the test signal. This should be provided for all test
    signals except `'Gabor'` and `'sineoneoverx'` which have a fixed
    length.

Returns
-------
f : np.ndarray
    Array of length ``n`` corresponding to the specified test signal type.

References
----------
.. [1] D.L. Donoho and I.M. Johnstone.  Ideal spatial adaptation by
       wavelet shrinkage. Biometrika, vol. 81, pp. 425–455, 1994.
.. [2] S. Mallat. A Wavelet Tour of Signal Processing: The Sparse Way.
       Academic Press. 2009.

Notes
-----
This function is a partial reimplementation of the `MakeSignal` function
from the [Wavelab](https://statweb.stanford.edu/~wavelab/) toolbox. These
test signals are provided with permission of Dr. Donoho to encourage
reproducible research.

Examples
--------
>>> import pywt
>>> camera = pywt.data.camera()
>>> doppler = pywt.data.demo_signal('doppler', 1024)
>>> available_signals = pywt.data.demo_signal('list')
>>> print(available_signals)
['Blocks', 'Bumps', 'HeaviSine', 'Doppler', 'Ramp', 'HiSine', 'LoSine', 'LinChirp',
 'TwoChirp', 'QuadChirp', 'MishMash', 'WernerSorrows', 'HypChirps', 'LinChirps',
 'Chirps', 'Gabor', 'sineoneoverx', 'Piece-Regular', 'Piece-Polynomial', 'Riemann']

listN   r   zn must be an integer >= 1gaborr   z-Parameter n must be set to None when name is z*Parameter n must be provided when name is blocks)皙?gp=
ף?333333?gq=
ףp?g      ?g?g)\(??gRQ?g(\?gQ?)          @333333@gr$   r#      bumps)r   r"   r    r   r"   @r$   r%   g@gffffff@r(   ){Gzt?r)   g~jtx?{Gz?r*   gQ?r*   r*   r)   gMb?r)   r   	heavisineg333333?g
ףp=
?dopplerg?g?rampgGz?hisineg_vO?losinegioT?linchirpg      ?twochirpr    	quadchirpmishmashg      ?wernersorrows	hypchirps   i   r"   gjt?gMbP?g?r   g(\?g      ?r   
   	linchirpsd      chirps         2   i^     i   y              ?   )dtyper*   g      ?i   zpiece-regular   ir   i   zpiece-polynomial(   -      riemanng      ?zunknown name: z.  name must be one of: )lower_implemented_signals
ValueErrornparangezipsignabssinpisqrtzerosintroundonesceilcosexpslicefloatfixr   sum
zeros_likerealfftifft)0namentn_hard_codedt0shsft0hwswposhgtwthpalphabetaf1f2menvelopetmpenvbaA1ixgi1i2jf3f4n_12n_7n_5n_3n_2n_20f5fmaf6kdiffbiasn_10sqnidxs0                                                   Y/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/pywt/data/_wavelab_signals.pyr   r      sF   b zz|v##}q5QUqL899IIac1qs7AaC( ^,L::<D;D6BD 	D	
t/8?A 	A xC?3|GRa"''!b&/)*Q..A $L HI 
C:Jcr*JRAa"&&!b&A..222A +~ H{ 
	q255y1}%%C(882774!8;LLx Hw 
	GGAQK 266!bee)d*:a$h*G#HHt Hs 
cNp Ho 
	FF255AI&*+l Hk 
	FF255AI&*+h Hg 
	FF25519TQ/0d Hc 
	FF25519&'"&&"%%!)qAE1J*KK` H_ 
	FFBEEAI?aQ$h/0\ H[ 
	FFBEEAI?aQ$h/0	RVVBEEQY'!+,,	RVVBEEAITA.//T HS 
	 FF25519A1-.ruuE	*Q.//ruuqyAE*++D;K3S)GA!a"&&!%1--111A *D HA 
	Q%1uruu}t#IIeQX\*Q.XXa[XXa[VVER!V$%q1QX>VVDBFO$a0AH="#F771:ii1q5!"''!*,BFFBEE6A:q1u0E#EFF!K!"2A,tt,1QhhqkRaL 	CB 1$QRWWQV_)=%=%AB"WO^ H] 
	!GbeeOd"!GbeeOd"IIaQ!#WWa!a%iAE*+"&&QT"RVVAEA1H,<%==>R HQ 
	IIaQ!B&.VVAqD1HtO$FTMIIaQ!BEE)VVAAJ"XYYr1q5!A%*FFBE6A:>D()1616A:&1616A:&IIaQ!#rURVVBJNQ.566rURVVC"%%K!Oa/$677GbL2771:ii16A:&a8vzC1q519$5$==>>!D!q&!)'16!24R4!8Q!AhJh Hg 
IIqb!a% "Q&IIaQ!#FFAqD52:1Q3!8QUaZ!^,1616A:&2Ya2g 6 :;;2Ya1f 5 9::GT HS 
	YYrAvq1uE2271q5\FF38c$KF HE 
	 HHQK266!b&>""&&Q- "&&Q- "&&Q- "&&Q- 266!b&>";w**IIa"T)ffQUm^IIaq!C'VVAE]266!9$IIaq!C'266QWS12a#q&jABBTc($32c#;&#c
C[#c
C[#c
#cDj24#D.1
S4Z!^B
./>@gg!D&L1T6!C'!D&047?9 >9;=>>#D.4
a$hT 9:!d(NQX%!AG1s7{2!c'!vvay1}1HH HG 
#	#HHQK"&&Q- 266!b&>"266!b&>"IIaq!C'1a4!Q$;?#1q!t8a< 3&!Q$Y^!Q$YQ#1q5\WWT]R$3$&!c'A+cAgb
 !!c'!c'!c'!c'R[!c'!c'1S5y2!c'! ggdmb0$td{&(ggdmc&9d(1t8d?#vvay1}H H 
	"((2771:&'ii37#s
MM!"))AsQw//#'
GGBFFKKN# H TF":;O:PQS 	S    )r   N)numpyrM   __all__rK   r    r   r   <module>r      s    / .nr   