From f6474f3914f1bd88d83aca53ea38aab4ce71b711 Mon Sep 17 00:00:00 2001 From: Travis CI Date: Mon, 10 Oct 2016 17:21:42 +0000 Subject: [PATCH] Deploy to GitHub Pages: 080eb55be6b89b9c07d9e4723e385998353a9002 --- develop/doc/html/index.html | 2 +- .../html/numpy/.doctrees/environment.pickle | Bin 18362 -> 18362 bytes .../.doctrees/reference/binary_ufunc.doctree | Bin 21820 -> 18793 bytes .../numpy/.doctrees/reference/dtype.doctree | Bin 16593 -> 15064 bytes .../numpy/.doctrees/reference/ndarray.doctree | Bin 72945 -> 70205 bytes .../.doctrees/reference/unary_ufunc.doctree | Bin 20176 -> 17390 bytes .../numpy/.doctrees/tutorial/dtype.doctree | Bin 9777 -> 9762 bytes .../numpy/.doctrees/tutorial/fromdata.doctree | Bin 8161 -> 8328 bytes .../numpy/.doctrees/tutorial/index.doctree | Bin 3265 -> 3263 bytes .../numpy/.doctrees/tutorial/ndarray.doctree | Bin 16122 -> 16714 bytes .../numpy/.doctrees/tutorial/simple.doctree | Bin 6841 -> 6843 bytes .../numpy/.doctrees/tutorial/ufunc.doctree | Bin 15290 -> 15388 bytes .../numpy/_sources/reference/binary_ufunc.txt | 1 + .../html/numpy/_sources/reference/dtype.txt | 1 + .../html/numpy/_sources/reference/ndarray.txt | 1 + .../numpy/_sources/reference/unary_ufunc.txt | 1 + .../html/numpy/_sources/tutorial/dtype.txt | 39 +- .../html/numpy/_sources/tutorial/fromdata.txt | 57 +- .../html/numpy/_sources/tutorial/ndarray.txt | 69 +- .../html/numpy/_sources/tutorial/ufunc.txt | 56 +- develop/doc/html/numpy/_static/boost.css | 752 ++++++++++++++++-- develop/doc/html/numpy/_static/style.css | 22 +- develop/doc/html/numpy/genindex.html | 6 +- develop/doc/html/numpy/index.html | 6 +- .../html/numpy/reference/binary_ufunc.html | 43 +- develop/doc/html/numpy/reference/dtype.html | 23 +- develop/doc/html/numpy/reference/index.html | 6 +- .../doc/html/numpy/reference/multi_iter.html | 6 +- develop/doc/html/numpy/reference/ndarray.html | 56 +- .../doc/html/numpy/reference/unary_ufunc.html | 37 +- develop/doc/html/numpy/search.html | 6 +- develop/doc/html/numpy/searchindex.js | 2 +- develop/doc/html/numpy/tutorial/dtype.html | 11 +- develop/doc/html/numpy/tutorial/fromdata.html | 32 +- develop/doc/html/numpy/tutorial/index.html | 6 +- develop/doc/html/numpy/tutorial/ndarray.html | 51 +- develop/doc/html/numpy/tutorial/simple.html | 6 +- develop/doc/html/numpy/tutorial/ufunc.html | 51 +- develop/doc/html/reference/index.html | 2 +- develop/doc/html/tutorial/index.html | 2 +- 40 files changed, 1029 insertions(+), 324 deletions(-) diff --git a/develop/doc/html/index.html b/develop/doc/html/index.html index 0c6c3dc7..b50c39a4 100644 --- a/develop/doc/html/index.html +++ b/develop/doc/html/index.html @@ -123,7 +123,7 @@

- +

Last revised: October 09, 2016 at 16:18:50 GMT

Last revised: October 10, 2016 at 17:21:16 GMT


diff --git a/develop/doc/html/numpy/.doctrees/environment.pickle b/develop/doc/html/numpy/.doctrees/environment.pickle index 11047cf69b0be4eae2ea887e11e8b23610f8c3de..da12a0857c025bef5272824fce7ef771746386c2 100644 GIT binary patch delta 153 zcmdnh&$z3faYL7L{pXgAYRfW|-5sy~``og0PECdmgt=k!kqlD^b7SY13_A#OlZ!%z zJA}E?`9ekjgt=**Y(^x6xxy|yBMHJ>yFnx)8^YY|GdH6I!rY)5oKXv5E?c}SgR2d~ NUVirXW?`4*%m5>xR5kzr delta 153 zcmdnh&$z3faYL7L{p=dG_Cp!U?v7Xg&90Hmtk2MaFx7Z(WSBykpW`y@AWZc&D>B?6 zOxa13G6En>4fXVlNC;D=YI#NygsC(kAtM{Y)OahBQ37GAmc?Y$LYPv!#51_sAZ!`7 L)tiM~mNNqY=x|6M diff --git a/develop/doc/html/numpy/.doctrees/reference/binary_ufunc.doctree b/develop/doc/html/numpy/.doctrees/reference/binary_ufunc.doctree index 24c26c6fbc51417eb41b37b311fea0f6645229e6..3c205c82bda4db78834838c55b5a226356f389e0 100644 GIT binary patch literal 18793 zcmZo*N>0g7E-lH-Db~x&Pf0E20&#Ow^Gdi188sUVnQ9A}H9|S_5_3~aDhpDJ3t4Il zSv4ZK7#J8*D-v@Ha#A&lH4EANB6t`W7?Lvc5{oM1OVdj8k_*`(V#)b=#U(|h$tC$k z#f2Px5gZH*48@gs`31$9#f6*@esX?ZNorn6aUqvq1SbOnLt=7rYH=}01Gisks9J}G@X0V6yKzyeQ@ts%(M<@@9-^4RGLpk6+lgQu-<$(K3GJ`vm z6X7eV(ol}%jLe*rqSU-X>DWRU^f)L^O$Irat58<6u~4qIP+lXHvna6~>L-OzhETSG zM36TN6*HJZ*`VS|=*ASK78I4{WhUpRq;eH1M+7o3Fz9FG=cekH6eX5r7V9UKX6B^m zC*|iCm*f|v>laj(WaQ`RCuQd81v}^G73-(uC+p{x<`z`y7p1197NzDTr-EeRajaKV zTvDjg+E}PsTd0;4%3hL~4hqCV^-y-G4+=Fxxe`lCiZYW*OHzvqHERpCG(tI2N((^h ziVL-4L)nva5{rvdiwkvPLphQXle3FJ5v&^<$_$DNz1Twi46(#eR)~6o*h0e$_QcXq zmYmGI)IuX~rce%8dMz~0V9Jn=Ei}~fsW@BMgZDBOT2F=>S7)+BCGeSU~ip5AU1&Kw8=|zbJ8C->NnvI3= zwS@_Aa}u$c69qB{Blh5#hO01Hv#~IxwlEcLOd2R%6{cs{fMW z#FN?DSeR8?m<>xjDd12K<%C;Um;)7o`=l_pG${iV?0L0?`EXYh;PgzPMg}Mdi)sst z;i^lpsm=qrvNQt}PGz-)<#5Fn*c2Cm6jx?|LZhm-uo|wo1{@l-pe$unScf%8BtSt@ z2GU;-O@#2WwxPALu(7tV36!x>s+Z;r#f&O&NMt|)BqJBh3+05Tl){$MB(P6gYYW@p z?rF#7c(6}9z&`D)E$o6T?#8CL739($uupqy3;W=T`@ue)0P?AE;Y6%H6$kmW6Qq9< zH1bjEnaQnf;QUH>cMY&VV~+CN`IYy*Uf)&Dphu zbKr{SVpBXFJ-D&9a1&hd zX0QjhfIMhgxD~4hML`~13(~(W!w%eHaz(V5wzoDG?x-!?3GyMRF@+?xD?>43BMvX7 zW~gU`l_r6x7I2M`TABp*$?n?1Js`8DGcYhXDkLO88Y_^dSVDqAX0bw|0;CQAuhF$cRJ*a4Sh6Co?-0uCj11 zqUy@X1(ojmFhktPn+;aH@7Kt%i(mr#r|>{)W8uNt!b2c0LWD9DGj?OvGC7$gsYQu7 zT!n`<8w-!r79Is@5MW?nKo1d+^~W%+SIpQAim>C*jE5YGg(q4Y3s2S-o`R$S#f&51 zI0|Kl+F5wIG%3R_qLqPxVQ>WZnbyX_v$ciiKtV8QTm^}?RLq!5%E?d8jxQ|DFG=Mp zJg?bUc%ioNA}pw3Ei-N;RfU&8ad;Us4iOE6E8whgwYKmYC=9~D$-oBO+=aDuA+1|* zV%5tiD6mUN043y-#LT>6g_4X^%!~xdL#0Kj3Mr{+nR%I@EKr=Gm~jEpc7&ws>sTD+ z%>hbSH#9OpDf4D+;VqDpl!$T?$e*_{ja1CI3NrFehFydl0|Ntoj}_i+Z7jT3TX-K9 zq&LB-Hv^Jr`9O&l)LVgjyzoJ5W8uTv!bc!yVoGNyW?U^z0{i80ZQ&D;B3!xbDNdI^ z!B2Os4aX6bLV4ZcZz}Bi8TreU$r(CzOF5N19A#(We|6#f{V@!SS%wBEz~7@dyYNGX1h@hHF@qD_faZafQlB6V=+CuB33s4e^nGw(ClxtNVza8VZz&JtXOzcd>Qf7cfN z0r_8niGcy!VJb*WPE`OWc&=(Lgb1Xghav>d2wc@%TqUWw1v#MVzy{Rc2kB7=aRT@2 z-AeO7y?7li1vo$`afDVAhPDVX6m3>kX_-aECGoKOBp##=zgb4O%_>e!&d*CB#;~B& z;?kTF+$I%)<-xA80C^E_4^?CT6E9+Mm>l3TTNjo@xxgAsH5-e# z!6x&7`3f1+G8D5wb|IDDMZ91+)G?q8>x_w@G!HkB4`d0XqmJAiE8>UvPXKI-AlM{` zEg*ZrUd;HV*;ph5mKTP|M@#{Ykb;Ly6`&)K@o43df&wUQrKF}QB<5AdmnG(8rYK-3 zU9GvWDa2NEVpmy&C>lWp2WsGeN{J#7u#^91;V2UfVF4}*37^60vm!A_Jc)zjK?3Y4 z@JL%0C}zO%gkJlmWv1q&Kt{8QBpDePG#iVgz`CW8bR*JIC>KIQkqjs_G;51w!AgaK25L!bo&&uKyJ>EjxEvxse|Mi z6#d$e*w6vnq6;=eAq#A%Viw41aElNYq9BJA=`k`eV0J0MzK>7JPpRZ8(ucU*0Boiq z#LS2?1_p)@a4R34j}j8Vc}pR;w73M+tp&I8Q&SX5i!<}m!BXIC2kK5k@*Suz49blP znRyENMJcI8p#E=ZaVog`0Bug>rj}&nrxYtB=NA>FCYR(?a%E`N78!wEfjfANLBSKJ z*;r%(cC;y2xk5zgKsh=?F$)xYkhBHv=oFcO-GuH1PzsigEiwm7+C{KH9b9AqiC0Uo zcdWp&3UJvB#Vn9NA)SgMYp@y{s2W~yHwh_@K*47VmPEH3VhSjA*@1!&ImHg3}eWN0b8UX@KLEwke^=3F0DWu!~$EE{dR+?eIVc^@uXmVR;Ia zWr|$Ec`CIuDGOTExPhJM4sjxA9s;ST$%2(J9$;zoSTXXpf|Y5WAO%^_g2W4Kq&G+? z1CkW{@=H>Sd_YmBSzF`_mOwX5F$?4pP!#)t)Iky$Sf4*6ECax%27)y!WPuG+%mP^j zj^HdvVUYzb5rV*qgCU9|wnNh@EaO5;fz*nEeAuX&LI8N0OaVM^rK6CTmjW3{D=taQ zOHNhDPXp(Cuq?b3NiIrFgbt0tiiU&)P$wcGK><=YK+1;Vg8aM`a6tnaYXc2G#K(h_ z#m6TkD8T2@V0J(q0_l^0i9O5xx`xWSDe}-ZfD6*mDYAo0laZp!)CQD%H z5LBebgT>K<4q^Z(za@Z@4O9yMtfNBQKjU*%>@(;*^nP55G9?XJx5EL#jjYZiIm*s#B&jlL* z@g&GPWKYV2Jc&P(7Ue+<%Lf})05L3r2#s)$LJI0Ec;TE{ngr`56@m>df*1-apJ5Z) z-~p|oVz2~~--}8>zLf&^l1f2LZg4Nj7FJT1fi-}7N#$UZE5Lk(j1?J*Ss=ThnGQ6{ zRa6OTTu%(24V%sQgG87+(oJb%hyBXBS0pN z=z%JVhNB=A256wWxCAyBg>`%hO(AS_2{rz~9l-{0#Ng}*I>ORaBP0oo#vdiaiD=OR z9!w-9{)(C)d9E3pr&_>K2Px7(xeT1=vY>t1RufE2)*k-cCe`#?e&3g87Q(Eem`Q9mfb zY1S4^08649sF($E4XA3H2vP@G+yd7-2@*_`!KP0E8=#N{Hc&AOWF@%pM{7<_1uLEg zQ5?|#YGzaxq=GuB#R>@ts6)n}HeFtdLVf{g5-Bk!rxK(BK9CNTO-KlV2^l3MD5T{V z!KY-w-BEA@G$A1bGR6p10U5ag%Y)m6)4}e+?fV%Z--FtPGr`WE1y-&QQ9tm`&rr+) z1t}zXKsueX!LCF1jFGn|C?4m4B_Y%8A@GndnhS}_d0_9&2dhy4PstvETq9qU~Ed^V&3~US}6N0P; zCoO2>2{f?=j%B2TQnVbRdj(kcN{H?VY${Q`wF<0$HB>#wRY>W}Fd+ftr8Qt#++JD> z@e*j&0z7FN7OjIgXg%114PYZ6-T_&O>>XBcGbt}cp=cvS%OyoFR~6di@=J_go(9HJYNywFs_J%Zjag%$TFz($;e7y)XPW??DrPl2V;{b%Iu z4XZ&;gA~Au`!ir8&w_+96e2*Lc1=r5O)e=eItK~|&Dx^#U^#U26th5%0p-dIAa!;q zS}#I;dCBR1crjlLF2b*YZNcrO>mVd>rx;sHpDIHsM2c*Z2hK{-miN$;1Ft`tPib59D zrJ#TTH*OL$)KNN6;10$Eu$G4qEfJt`|IrQxe7+kxbBCqj{|FplI2-={unhbd67!?s ziqi0hhHKFiNV0tjPJ_?DK?*6XL8%g)W?>ET=U^o-kd$C)kiP^=W9Gq7SZurkDS(yG zufayX0SQ4HIApZghrmtYrzkv-<$O0Rvm<6&DTN(WwtoR2+@t|pt{{*`Sx9@*}d=Dzk ze}kR>2dsRsG{`|g3P~Q22KisG>(D)8iJoQ(;*7=ayZ5eL{9NG1eX4NhA4 z8swZ1-CSVZ+z{Q6787WO0IBJo0dWh|TRdR(yioOM?OJGqoDVFE+e`cqFQGNa1t1O* z1X~~kHUi=ukd?^Zfw#Degdti)z*B)@^+UV`vJBZD~ zJkWqjW^!VVLMdp+p(eOpZUMFox6dp=J_D8HR$#YTgOw{p#L(DnMK&ON6|+Dgf?QVH zg6&6lE+}H9V~gxSdhBTLHhW0aI)FpO5$qy`EU1G)!31vcptsUt(;QAdu*sfazCy;X48<&vUC_`2Pjh&I zwt}WP;0AhwEP+&bh+Q2;J`g|qg6;4Fn**@}WGmRi;BJUNSUvzEACZf)kheg= z7P6Sv$_lcA*P07Fun1bBsgQ>uYh?vq)N2i2)e2dU8(dhLSd_|DjkGu{CBHN&Cza3= zGN>v->&KwVAfpN3b+zE-s8C^8=F-sAfQlsQKp9Dz&?$*(g(7hAp`ekdm8hVtkffEQ zsbH;83tqfhU}XjERF|eG*eVoQS%Ih8<86?ArvnS8;*7+i)Rg#wk|Gp&I|VxpC1eds zntCazX&OqfSwAHmg}eeQE97-|s0LVBLE7$`)?5e|W#$!^DA+2Lrhr!3LIWVNs3@^g z!Bznzrw5uHM6yIvBPBIAKOU?^2f@@-u;wZ*NwKm@&Mz%du(454g2WkU-XFAaO`$xq zBm=re8M@IXvsgh1q_V)uDz&1dC^5N2!6rE)u?QNXS_*aw8U zm7155qhO7i=D|}tf#9@=vxgT4%SSfyz>F z$qJbyPXzUDL%Bz5l{G520uHvF-CI*Jsq8N~*Aj;_iVDn0fPLz;-W;bXc8z_8D}ts^1u!@0PTD)N(MVz2<{j7DF{U=U~Q=&!#Ijk3-XIf zQj3bxz{)u?Qy}LZ6s0pUFnF_t@*+F7xF`dxH4~(j7v>I#3$wt!&j!f|Wag!0f>trc zmn0UYr0l82*qokz3N?*SuKR>5fFEh0yO%HUsK}Jb#j($-oNChXTgiHll zQ&h&pz|axOSCCo&@+stugW{rcu-SaYB}JJ9@yYqQkaevUU{T(Ze2|UF*$^jIf(&F$ z%_}LYEUE&rd2HZCAGLDGY@=bMNvIiAy-CXP6Jg0jKsW@oYbPCCXhP>K%OtoNi5DNN-fAqOinFo1_`sKq$ZW7 z7qx&)3KdArO-co&n97{g;*8YPlA=~728Pa1S;#s7T;{id3}OR0ExDwq9mL@U9R`tC znj2pM%63H^AlEa7@~4#M7R19-aB)#5*jC<@{N&8Mw0x-IE{I~j^2DON%)IpY;*z4& z#N488uv$@2w54U{fFnO1HeOrQ1G1E(AhkeO)xadBs29W)Os&W)0j2(u(qd>R_JNFM z4P{Ht&r8cpFX{&y36AsRlK8UB;>?o#qM`|4QPJd_{KV||)ZE0(ocP3)l%iD7krhP~ z!HGwK*~75T6Bvu(~IVU`26uHnZ=1o zIiR!-4#at2y_}gT@dcn`GAfGZgOo9Za+V|}#g}KMlw=ew00lcoC?6zM!V+oGLXbi} zN55dt_y}V?6J0|~GmD}{AVGHMSuRD3LA*e!pI}n71Y|CMdTL2YYDEbsyB8!TmlQ1p zM=oc2Y96FJShNi6H$HH(MMTnauqaP)ZemdhWczAy(F$<%@PJY$yl7epvP2$QG?kZ^ z>p`0E;G!udwM@StwV+tPXcb76KyhVWNn%BOMrL|OPG)*WNzrPMFiTE;UV70Q5K{&< za?o=4S|$dDEO5@_0~PS`h}c*M(#({ZQnVh#;7iF*Mov{5z|NKiW!-}K)Evla{&-Mh zGalT=PAx9l2=*;+JS5M=gYsT+(I!v@5Gn@Z#AoIerxt7*SZ6HkypbhuMMccvk#tu-uk+C&nV}=xD zLE7Ss`5EGn9XxdzRT&dAdNXV?QZghm-e!nG`f_3!av72t&ZVJ3D2EC`>iC^tQ+I)C zT=fiN(7fwzunpRvJw+M1v9N=7GE^Z)!IXw_!s@KzqCKEMDB24OS2j@6Pbn_i2R3g% J6KHRO9su9wOcDS9 literal 21820 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 Ug$)!BDaA$Sz)H`98aYXN01NwmtpET3 diff --git a/develop/doc/html/numpy/.doctrees/reference/ndarray.doctree b/develop/doc/html/numpy/.doctrees/reference/ndarray.doctree index b9ca833380f6ba00a5beba6337745c507507d3b7..91ac73fa48d902dc3d198a66e8a82d99c59e861d 100644 GIT binary patch delta 2173 zcmeyklV$G`mI>E4-thh}ktN2+z@XV!bdr;Sp|>gM(6DsjEp~- z#4|**_HZ&VWJqPmX2@qrGBPk^DApF8p1k3QqHro>hHeH^hF)yZ8ITf7RIPGFXE_-d zS{sYbfsH>8F+P+bLo^Fy;q(xGMkTHbAdQN(MHe}zH}Erxv0no5-zH9_ zQdy81%Hrwg=3jJ~lYyZ$L&uu~X6Y4>+9=J&qN`vFuE8x(tS!3EIsGF)qcqbE&gpyt zj3)j!Ax^mkR(Tt)QZx&sw=^j+Lp~$3G%2w(DKV5UxwNP#HLoPTIKQ+gIko5xCj*0D zC|62qa(+=_NoIat(Ou5zJi?3;68AV67`z!n+4B-}Q!`VFi|&I>f5182Mwn5h{vpVD z;)xj|p$wtiB}IvO#cBCPxv51(kH7}wUt>z!1t&l$r)I zvbg9eSnwIhpyRPc&q4Iz#Ntqa;>z5l{G5203B^S(I2jmXi(Z0s3nrG9MJh zK7ti}0x1&IY%KZ=cJdcaa9RolCzh|^xD}m#Pmoc}z?%~isacTd)Qc_p2GRzaf$N2dw@tT)k)($OJ@WX2@rOk{2jWIf_yX z@{3ARi;Dh%1D_)^CBC>Mv8bfzKPV2_LwTX01`f31A_gu{crtP^Fog2L!UGagOk4~s z47Ekf)7OhKiixp+)vr_W!3D}&oLmeH8lgh4 z2#ZfjOwP{9%*!q=;+n1~#waby%>_ziJVj~A@kxorsqv*nIYm6v1H~8>>v=(@bCwh( zCZ~e574dN~Fm#0S6{Hq`T$EarnwOkfT*MDHfUmfuD6=3wIX^cyHLs+&NB}I#Taphl z7G|X&$UxTAypp2IA|Vi)HzzSKy)-dBH9k2%CACNxB*v7QS0n;rC~&4EmZTP!B<2wXkS4Lt^2~|!;?#j57RHIN~!p=`I7X5@d%J&DJ2EkAB8Crfs+LyAnn1TJjJ<*MJ4ftrTHbP#YGO_P~`#TGoz_wtS$XCms<%ZXmTxnJGo?AO>GbesW1>Nlq#>p?Xa3 zl4ewj^#nVYHy)DI;?pv7Qj3ecK&4Tr7>E;}nOB@z1gfp#Q}aOaky7Lh4hZg|#B#Wh z4=CgrLwUhr0WZINr*q0M$_e{{BpE`PK{cB{xD*SRZY9GQB^(Im1aUDiWXNaef|>)t i)0fLIYAJ+(>@NxhIhzd>*(t?EVPLi4Tnr4QNqPWi<&pmY delta 3728 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 diff --git a/develop/doc/html/numpy/.doctrees/tutorial/dtype.doctree b/develop/doc/html/numpy/.doctrees/tutorial/dtype.doctree index ee974351a95de8c305f7172a4ad549bce3d16bc5..512f14a2762118ea1fcce7c728fa53eec30e7ec9 100644 GIT binary patch delta 175 zcmdn!v&d(|8Cf(&x=pZ zOH9g1O({}fWMJqBIO^RGQqTDkrSW$iU#u5XzjHQe33M$iPrrq&j)K zs;saYn61vpz>p!Ep_w6HTck1hxvG|eCL;qwY>^ft14AfVQED1Un>JXf4kH6YX_6iQ DuM02I delta 192 zcmZ4Fv(ab68Ce#41_p-7ZgS@ATnb6Q%3=G~3q0E^n#YL)& z3=FkJYLi!}$_lH4*&2)t3>mT+ni=x7MVgausA?%_F)}d37HNZQWGhNd18LI%E7fIW JU?@$}0|14|FhT$T diff --git a/develop/doc/html/numpy/.doctrees/tutorial/fromdata.doctree b/develop/doc/html/numpy/.doctrees/tutorial/fromdata.doctree index 14b0d976120d1e9084eae5fd0cd9a6c889b8c555..a0e267b532a1f1a3abeff9f997ee29a25b23631a 100644 GIT binary patch delta 2055 zcmaE8-{H7nKNk}Z$(>7U z3nqtfy9`EW>GEt~l$m^w=QiWz$@}@VCcok{o2pb0-T(iqy}GEu0@Jf+i0!X+dn^!cflS%#y^C z%>2CK!bP!#i$QJ*42*E?gU1xGt2VIJKlCGcUckaJ@!yN`7)_NoG#5URqIp zUP)?R3RhTSPHAc}SK)^I!i}|sn>0d&V4japN=(kq$;`_xF5K)rSxHJKQ}iuucWwer(Y;99nq*|7x<`nMtW(wtrPf0B<$;<;sL*W6xP_B%` zoRavQRFHy$-mIa#P*>z678j=$7ap3dD6MRKI8*@S@Zy}r;*6ryf}F(U)WRd7tSPBU zrRjx7{Xzv&bCXg*5mK3xTAY!ZT2gpya=El(`0-FSka5W+g(pIJi&K+J@=9~#D?o8u zc+#6Ols~03w;&!K-^GQe{6cwC@{=?3((<9oPJ1(k@|7nRjnRzHG?}l=M zRAyM{7H6gx-V5cAPsuD!Ov(YJ1+Z`L`-O65rox0gz)yamyz!9Ok59|YNi8n?92+VI zV#R0X6{i+~ilO+_JW#Nu6n^OlNFO&@wBPqp& O|7(jF7#SE!lk@=1yv)u3 delta 1900 zcmeBhd}zO6KNr({hRFxHBpDSZEAV)VDCj5@SXt#JW~auNlosTqYM5&3Om5(onS7Aj zg-Dg`yc-xLC-30B&3Jn9LVhhqg~|K)%or6WGYUvemf)}Elg`l0V9F4TEzHd@iom8M zXmYv0QAVZBwt|X`j9Vwi3zah}Oui;$!>BM>NLYtY1*X3y!zcn(`oHiN9&MO(ONP;8 zL(#O!s-hi&3mF&~5{rtWjbasS6)Y62xh5YJ6`Ncuq%!%xnA~JTF`LO*`~s8f#U$l) zVcNShj3NkYOBYuWV`N}psLc@15Xq3pkj{|Ju*#6HEu1*nkwwJZ0A|{x45J9Jy4J?R z$+d-3G%~~>{0#Ao{?eqx(xePC&Bns1wT06(GQ=iNl(;H19o@(oAS1bqU`EcI+%Ivx zepYK^;q2PNIT{&a86X`~!G@)lCM9Nwg))S4mlP%D6{qDF<)#)D&h-oBP0Pz5l{G520%HqOBv4x961rtk4@?l~S z-AiH%b(V&Tps9z*EsHH&9?F@VS&~?inV(l&xFWW22Zq-Om$xkjV$;>I%ODoFH zD@n~u;R;L4DNQZrD%_S|xV^S;heoIn+^b26$=NxXdD+Ejy zSezPPT9i|`doriAT>YL<&XS_U=DatH} zPtMQHP0cGQF5K@I%3G2TG6`nGfl$`eypp2I!h@l_If;4crHSdO@yYoqsfC9^nNsr# z4~KH5B$lKWmn7yE6dnONBo!23@j0oMWvMxZN4=RsdE!%2i%T-|z~Nqa%rBHHBQd8W zJ|`8V;J7zyC@<6%If=!^sl|mSCf}DVsdKXsZiFG)TGk% z!qbx#WJDOxOg5EK3_lyn2GXBgQg|+uw>UMqB(F3#z5*+p;0P`>iSqP)z!^!VbEqSVCP!b_9a%1B0E4&^9FEzngpFi9!A z5-ONlky!#t0VSoyQ0HIuW({Ra&d*EBOfS3!4bS9~__EC6%#!?~!s~vaqRBb=iP`a~ zxrv!M@rfxZMX6v<-k7W?t5|=tGn6?sudMKvAJm-%#i^w!`SBIGIfb|VLIqMQ3i69n z<1_P0Qj78ubBYV^_=O6A{8(I?RFYYelM400-Of<%;{4L0}p5k;wK zu-Lxu7s{VsT2fG25}%rvoS%}JmtI)^Ae6PVBu&?%@L?zyR6i*FJn{?W%gjSj`Z$ym ztWvi)GrjOhD1UrPW^rOt4k#^vJ^$1%lru9WzMv>IEwiHVStvs&XGvmGe0gR{Nk-vw zZ;nvD)S{yNB81&9LirqJ{DM8>BaHP-bPX-dEDB$Svd2SQQTQs0hln4spw|=2~;21`P(L29Tp5olZqLTQ+()^Ot;==cx zp**0p56>STCdn(wegu^(c_oPz@fn%v89ABh86}0ELRoV1^U@1HPqvqr*Zq=lE|d?H z%i|F~`x?rWnNs*IlrJSe894^NPwtkN7yIEC${PPsh=q}XA-0H>k%1wU U4HPFS#YJpjoxnFX_5AM`Zv9!#b)cDN2;?$y&%>2Cg)V#!`oYa)U{T-p)MTzBb{sC{sP~Mc% z+=BSx)RL0Sy!7J2gMOt+p`yi=xk>ps@oD+_C3*QJsqw`niA5!ahrAg=nKM(03lG;8 w9+@1^BgK2Pw(wYnY=&lrd~MPj4pjLwq{l>aii zZq`$o$H?fu`K+oQ6JyxqKkBkf)?Aa%i^)y4(vY4UrlBk7m7$rzlpz>f#LvjUkYN;o zq3E5)az@|H(=^o>8T~i!)tbi07`Qn^M}>(gk8yI9p0Tb%N{OKklF#5?#KxGsQBNe5 zSjC_a%1z8pjV~!J$Vt^O(J|B{+9HL?4~=Cef6+4{Hqd=dlqP5D>k5U!!b1lV9>dR< z(+zG<&N1cOTy3br$aaH)fk8oG@+xChRd7Tq6lWwBr0OUXmlS2Dr0Rg80FuHrG&QZc z6ci@EH@4G2i9mcQ+1EsciK}*Uma&dl94uU|A>m3FiwjMZ^^;TblS@l7bBguy@>5ca zx$^Q$Qn`xk85tNf8;cwm85nAd92prHG%~~@CNMBCOl~(-5KTx(Eh@?{icicbN=;0u zj4w_tNl2Ky%QQ+sugD4He(?;E42cZs4B1c?kaBWxI^s8f*6qnvK(SchE;}qZIQ?1I!$rGWKd@G1gkWPP=LBfs>q9xfuXgr$Qx{s z4_I0ZF3p}Ho&~aE@_29K^`%R5M*FrzzCV5Ac)g~!PbRngN+gkWylcE0=b|xDKSGflszZ2B(*3p zrzn(>fuS@h!zdyei%SxVN{X^3 zA21iK&ju^a0V(B$*#WUV7wok>kc>cPUP@+BYH~?@Nn%lYYDsZXK3H1;NRp#CwWK67 zFTJ>^5EQP6%#c=;pI4Ham%)icQT+&P**XDg(QkrzkBsJ}I#{HNLbcr>K1L3=2i|3XtWTpxP}p zDKR;_sFIO^p(B*9AhiJG{?ww>yyVp4qN>RcEJW+8!KUz*znVl%m$IW@1WXc|~Ce@ba?L3}}RYH3P-d_`_f(e%lF*5dUu zz>-2Brx%wdm1LIWq(U7z6Kn!^aeir0aw;f2XBW)^E9L`5e^F{0EK+BKMfvkfOA1O$ z;#2dI^HVbO(u?MR{J~mUlBR1>G#A9?f*J)%H1oiE_%iGBQ1r|PspACe(JjtQFIoWN z^T(%T7AGdf3ywsvZP>`>j{N6@Xa~0S@JjJ<*MJ4ftrTHbP#YL;Z!N&v20Pw7` zX0ooWs@7VN(E`Plc_oPz@fn%v89ABh86`#QK*B6J`FZI@>p@JJ%)Cif(v}+-85pv_ z>5C6kYQ-aby%D5}DKn*L6Ntf=lAnwmeVZp=uvHS<0(Kd1JS5%3r)B1(78h-u%wZ?1 zwGHeS?xMu<_|!a5@TL@P2Zb7AC@(mvzzdQcll|@Fgm;4E7($sdQ;LgrfeVe@lN;=0 th4+BjdqD-DY=$PNZrL|^gPoSbesGy|0OT|_P%Nbs7aasEJp`^0^Z=<3au@&r delta 2643 zcmX@r#Q3Xrg8?sN_+&#~9Y%%8?}fxB7xRiTDopO+HOCa)EY7FKBzNuiPpkQO8P+(=1T2WGzm|UV@qmZ1DSfr4gpI2O>prv4^FxgU3j!|Lq zLIrcuG=wW2XLQ&suf)N~=rmbF`7fi(W;K<0jEruZkE-f1u|zO1Fif5=CdO*4W2C7t zSy028QDL%=hOUTbhGqs+hG1+FKO+M}hEW7og^x6rGx}`q(o|z)^xM2qYZ@bCz-A8} z6(**443qQpjI~or40S-h%1z8pjV~!J$Vt^O)-lo4DX_9a5;D;-)YO^muJ1=U5E4yQ zCg0Q75ek91P6y&TTH4oRc#AQ7bGnfZBg=76Xl*o6RRDXeI3uwjRj0V5C^ID${B@=bI^B4NI^*OkrSP z@XIerRj^W+{Lf55SShurD8DE^F{dasF{LuTIJHD+GM`zLSdk;hW#Snk84?-N8L}Bx z8S=G7PLmCE#HC|kj&}wrF(TGT{~{Mg28PzgB3H13+#n9hg4mMHuMh1pZj-u4Gyu{qp;-UbsU?50Pptv$ODL*G3rmMIph>?LI zwkQ}RDVSJVk`I%Cm=^+;4F$=HplY>-+872_5e`zpnVeaYSdy8aS6l@0Z){N{$U~YL zOrbofSn*mZADl~bC zm9SwZBLjmsW2kUZYI1&2N_;-b9C2G*kW`CwCcOY%XcBxmPj z=4BTb6@Uz2P0cGQsw^r5v3YY6^U_Nb(^KP<^HWlbia=sasd+`kAO>ejVo7RoNn&n6 zQ3=>I9!SW>=cJaU<`k8J{J<2-6Q7b=T#}gwj;o?FutKg3?!=rDsJimW=dDE( zDXIf;c#Bh$OY%x{<15ngi*k$VC->Tj>o$Nb9j6gHUERKTI0$o)Dla!*C$$xFc)mlM1SVP&8^YhX&(~H``rt(2- zk1xwC&Me6Wh=wjF*)2;MY)rafuS>$IW@1Ws0*x^KczIcAikhDwKOF^z9KiL zsC)7}Tk-lHu%r;k>BXfG+m3Li6Ax?)F@D*nFQ9umsy{OqGvKl9Vb|i zZgFOM(G(D$KRzY1I58;)ln}tap9Leyvm`MozC1IfB%^3L zD7-jA`5*-*+)Xn;3i%xUf<5CSjP*=(4TUYuEQ)4=MA_pZ&MTTV`Iudx#%z!ne|l<3 zNoqw&d~$wnL1J=A(HwB9=1fn`OD#$S1^L{`_V%Kh^S}<`Db7tSDv2*F%`ZtUE}9Px zJ|0j8fM=BjlWXl&wHAVm7AUUFD@m+~&&W*A$jMC4C@ES55@yNC&r2^_3}VV;=1mT; zk+xjI$iR>VPGEeXVk;iu?WG`POqnS~%Rmgil>B7m_**_%!9huE1=wl4@sNZQpO%@E zT3obpa)g7d)+(@PxQi0Y<5TlM;hR#l8We1dp}gR<0xwC{OrGx`C%hIU#}LY#nNnP| z4qR%ipM1eVR(J!Ly%AIb%4TSSYMxD#9JLfSgUh5XAeXU$VkxD#Xe(IdHbw@9(j+|q D7#tqk diff --git a/develop/doc/html/numpy/.doctrees/tutorial/simple.doctree b/develop/doc/html/numpy/.doctrees/tutorial/simple.doctree index 33e99551bf4c0e02820800bb1250ff74ad847698..3772cc1dbbc2b2150964d5d7c128abc8323553e9 100644 GIT binary patch delta 153 zcmdmKy4!TaCrSIlH=$x_nK`NPnR&&jMJ1W}dGV=viAg!BDTQx4Lb;0)%i;WY-i)EV zDW$mu@x`enC7F5Y#f9%D>q|+SeDG!nWzI|~F8o+q_$fmmL!>xVsJJw#xFoZr6l`K% uVs2`2;pf`IFB!5Kni=x7g2Cg)V#!`oYa)UHyxqeMTzBb{#$RxP~Mc% z+=BSx)RL0Sy!7J2casgJq)py?GlVi{rW6-`s4e`MA&?CG(Hv&1_p-7GW^QI3IUbzo_U!inTa`>RjC@9)?5mc&+~cURj@gLe<35| zgvq-FBUr4tN>e8L3g)76%{TiBJ!WF8o@^*;$7hqAkyxaVoS#=*qM&6rxk1!$@+MJp zoRXWf#oU<~KTgh)^r_e3QXmc#SXt#JW~auNlosTqYM5wJN24k}%L}Zm@{_VslS?Ky z2#QR0mQ))YZkER5=E-*?D;S+8hf1Y0Mo%tK5}TYOErA|A2D*xq<)pRvTr)H?m@))o z3vXu_Mc`GvU3xX6`{ZPq=Zw~q56aq3?v&Ny^MvVsm0=VC5&kcm!{|LZM=p~weX^mb z^yF#svgmd@swq!)me=C*h3Wp8VHAN^^$Yo8M*qn%3e9}#3=9kfR#rKg#U%31pg_wg^1Hbx1#>CAZ)h!qqyC-XD214>{oo1?FGRznkh%qSAmXjN` zsu|NJ|J7Q>m@#>U_9Dit$=*73jF%^$(s5Tq%9J)X3I$eHsTCzfiOD54s2SZrSCIsz zlc(tF3g*BZl>~7VE$y45w~(=5vYq}878^)Z=}*=);F)Y@pes@Yb4DS=87K-i8`LwF zOg1*GU{X++TqiFvxyncrOI$HqbJb2(GSU$%gBjKUF|3?{fq}5jn?}l$i;czVTNoJ_ z{6cxt^7Bjb@=H?Vi&E2yi&_~O7;1~!7#SEsIf_!#@)C1Xi;LR9f*l}1f#S;Cr2L$C zn6BcYPDTcX*rG0wq+nucNj^*lVqP~`wg)6Df~vJ1YGW^0MIT57XL4pqVo7FxUU5-B zSabr&Uz!28OEiRe_);1Yr z7)McRL4Hw5YEjV?uyT&fl=$M3#G;a-sf-K^-i-C3yvWWiE}90`I~}B#7v>O%CuV^C zKNBP)keQc~S(KVw5?_*7l%85rTr>-;Z8k`fqd2vsBr`9)xM&U|1A|6#N`7)_NoG#5 zURqIpUP)?R3RhTSPHAc}SJ7NX1}=vDqIqD0=T8v*f<_Y0LSN~mZjzttpNopQz%b-N@{UQ zW*#^ii`Ie_a%Cjult7iOo9t*N%D8@VxS1N`hRJniV!Rtcrn9D`CY7caZJNB$Oq_A^ zc>(WC08D`omyJA&`%XOOr}6OL9`7 zZa)Gxfx9@rv?w_hl-{$8j)E2Qff7YgY8ou6kAX$`^Giz#N=xEX^OEyZGV{`lj)VNc zT3V8(Yf*Fp#O8t;1xiXM!Fu>ICoi+$^Ew5RT?VIW&h*s0)S^UC z;9i-$-cnTaD%cS`#kq+^CGmx&`6a2vMc2Rq#RG~>cviVS`K_g@@(qyD0>zbiC5aXB z8JX!BIhpAhB}F$u!Yn!YdFe&BCYxF*S>9%3V8{X|Ek00D5RdTV9gtF{%#@Gb zell_t-J3kYN=g1c*iF3gkhBpGN>Rl{55T3tLq-OM$!Dx2wH|@J!(EhE9-o>A3e}XN z$Dky|7|IJy7w`h($z*YF8_DfJ{D4U^~Azxec hYI1?KmcnbWZErwsWCKM`N^#L!u+n#o3=E}7dH`OVgbDxv delta 2870 zcmbPJv8#N;G(J{$1_lO&$uj)Pf&rEBo_U!inTa`>RjC@9)?AY>@Oj{q-yFohkdd)} z@;<=`W-bMV$pM17C_MAcfkKa&80#koDo9Tb5LFgbuu0BHEK*3$&nqrb&{D8dnA|98 z$fz)Rlc+giRh!er+?g0_C$E?AQB%-SD6q21P0UV>FDWg^N!2jX#3C|zs-z2P8V*QR zFgi@Olul=ipS)074~v5X^%WTvCjXPx;&aN-%wWn8j4iyKVHAO1`DB^Zj4qSyWuG(J zOr9fW%cw9pMNW&)4Q9Zr45J8`#7(&zMvuvE@|ld;lLHkju(;rYkusygWJv`rJ};O7 zKQoLX@GIY?P|WBvSx>Qiidm}+Dv zJ1aFZ22DPyRK*xJd7-q}eL zuVPG{oT0ObF?}+(ZXM%^$#eDGxdbz71nMg)5>TU{Fd32_SttNh%K4`k`zoVEy;(;K+Ky6mYoEW6+zW%4YhGHSj7~O z3eM!rlEjkC{Ji3#sbJA*Am3tv&7OSUMAUZCAAU|XEly1?$t%r`uSm-;$}QRhvWqd4KczIcAikt1F|QaTTwJsl z>@41t{N&8Mw0x-IeGtWb<%vaknR)5)#U(|liMd7lCoeFU@jU=CoueSNKv&hkB&Fye zh%1;{ky!#tD`4-iy%IKd`f0mZ)zWP3)>^r9OeHh+3*Nl9u&NqlmCZb4#lNzqMk ze&9?`%}Xsx1O@ypu!H!(sUb73B(*3nF{ilbHdvIWI5)AVB)+gTza+J|=ngngc|chS zp6TvR_OeoCyf?YPN=*1Z$U>H!{Jiv{2Oy?QX5M6Zb7{+mj0_A};FQP*D$n8(et!f~ z#*~>-^cck8OUX}0j>IRE-&!d#KAkLJEyDT?RB}w#vzF9)4)y?dQDS*~Y91(LQ;J@I z0*o<~7wiXkx$<&yp|zazE07#RD05~?anWmV>GB3t1`1?|6o(2GmnIdLWR{eIipY3K w(fk&y<{e0lY=$PNLU=# - #include + #include + #include - namespace p = boost::python; - namespace np = boost::python::numpy; + namespace p = boost::python; + namespace np = boost::python::numpy; - int main(int argc, char **argv) - { - Py_Initialize(); - np::initialize(); + int main(int argc, char **argv) + { + Py_Initialize(); + np::initialize(); Next, we create the shape and dtype. We use the get_builtin method to get the numpy dtype corresponding to the builtin C++ dtype Here, we will create a 3x3 array passing a tuple with (3,3) for the size, and double as the data type :: - p::tuple shape = p::make_tuple(3, 3); - np::dtype dtype = np::dtype::get_builtin(); - np::ndarray a = np::zeros(shape, dtype); + p::tuple shape = p::make_tuple(3, 3); + np::dtype dtype = np::dtype::get_builtin(); + np::ndarray a = np::zeros(shape, dtype); Finally, we can print the array using the extract method in the python namespace. Here, we first convert the variable into a string, and then extract it as a C++ character array from the python string using the template :: - std::cout << "Original array:\n" << p::extract(p::str(a)) << std::endl; + std::cout << "Original array:\n" << p::extract(p::str(a)) << std::endl; We can also print the dtypes of the data members of the ndarray by using the get_dtype method for the ndarray :: - std::cout << "Datatype is:\n" << p::extract(p::str(a.get_dtype())) << std::endl ; + std::cout << "Datatype is:\n" << p::extract(p::str(a.get_dtype())) << std::endl ; We can also create custom dtypes and build ndarrays with the custom dtypes @@ -40,16 +40,15 @@ The list should contain one or more tuples of the format (variable name, variabl So first create a tuple with a variable name and its dtype, double, to create a custom dtype :: - p::tuple for_custom_dtype = p::make_tuple("ha",dtype) ; + p::tuple for_custom_dtype = p::make_tuple("ha",dtype) ; Next, create a list, and add this tuple to the list. Then use the list to create the custom dtype :: - p::list list_for_dtype ; - list_for_dtype.append(for_custom_dtype) ; - np::dtype custom_dtype = np::dtype(list_for_dtype) ; + p::list list_for_dtype ; + list_for_dtype.append(for_custom_dtype) ; + np::dtype custom_dtype = np::dtype(list_for_dtype) ; We are now ready to create an ndarray with dimensions specified by \*shape\* and of custom dtpye :: - np::ndarray new_array = np::zeros(shape,custom_dtype); - - } + np::ndarray new_array = np::zeros(shape,custom_dtype); + } diff --git a/develop/doc/html/numpy/_sources/tutorial/fromdata.txt b/develop/doc/html/numpy/_sources/tutorial/fromdata.txt index 4f18997e..33bcee45 100644 --- a/develop/doc/html/numpy/_sources/tutorial/fromdata.txt +++ b/develop/doc/html/numpy/_sources/tutorial/fromdata.txt @@ -6,46 +6,51 @@ The from_data method makes this possible. Like before, first get the necessary headers, setup the namespaces and initialize the Python runtime and numpy module:: - #include - #include + #include + #include - namespace p = boost::python; - namespace np = boost::python::numpy; + namespace p = boost::python; + namespace np = boost::python::numpy; - int main(int argc, char **argv) - { - Py_Initialize(); - np::initialize(); + int main(int argc, char **argv) + { + Py_Initialize(); + np::initialize(); Create an array in C++ , and pass the pointer to it to the from_data method to create an ndarray:: - int arr[] = {1,2,3,4,5} ; - np::ndarray py_array = np::from_data(arr, np::dtype::get_builtin() , p::make_tuple(5), p::make_tuple(sizeof(int)), p::object()); + int arr[] = {1,2,3,4,5}; + np::ndarray py_array = np::from_data(arr, np::dtype::get_builtin(), + p::make_tuple(5), + p::make_tuple(sizeof(int)), + p::object()); Print the source C++ array, as well as the ndarray, to check if they are the same:: - std::cout << "C++ array :" << std::endl ; - for (int j=0;j<4;j++) - { - std::cout << arr[j] << ' ' ; - } - std::cout << std::endl << "Python ndarray :" << p::extract(p::str(py_array)) << std::endl; + std::cout << "C++ array :" << std::endl; + for (int j=0;j<4;j++) + { + std::cout << arr[j] << ' '; + } + std::cout << std::endl + << "Python ndarray :" << p::extract(p::str(py_array)) << std::endl; Now, change an element in the Python ndarray, and check if the value changed correspondingly in the source C++ array:: - py_array[1] = 5 ; - std::cout << "Is the change reflected in the C++ array used to create the ndarray ? " << std::endl ; - for (int j = 0; j < 5; j++) - { - std::cout << arr[j] << ' ' ; - } + py_array[1] = 5 ; + std::cout << "Is the change reflected in the C++ array used to create the ndarray ? " << std::endl; + for (int j = 0; j < 5; j++) + { + std::cout << arr[j] << ' '; + } Next, change an element of the source C++ array and see if it is reflected in the Python ndarray:: - arr[2] = 8 ; - std::cout << std::endl << "Is the change reflected in the Python ndarray ?" << std::endl << p::extract(p::str(py_array)) << std::endl; - -} + arr[2] = 8; + std::cout << std::endl + << "Is the change reflected in the Python ndarray ?" << std::endl + << p::extract(p::str(py_array)) << std::endl; + } As we can see, the changes are reflected across the ends. This happens because the from_data method passes the C++ array by reference to create the ndarray, and thus uses the same locations for storing data. diff --git a/develop/doc/html/numpy/_sources/tutorial/ndarray.txt b/develop/doc/html/numpy/_sources/tutorial/ndarray.txt index d944ae43..b270da70 100644 --- a/develop/doc/html/numpy/_sources/tutorial/ndarray.txt +++ b/develop/doc/html/numpy/_sources/tutorial/ndarray.txt @@ -8,87 +8,92 @@ This tutorial will introduce you to some of the ways in which you can create nda First, as before, initialise the necessary namepaces and runtimes :: - #include - #include + #include + #include - namespace p = boost::python; - namespace np = boost::python::numpy; + namespace p = boost::python; + namespace np = boost::python::numpy; - int main(int argc, char **argv) - { - Py_Initialize(); - np::initialize(); + int main(int argc, char **argv) + { + Py_Initialize(); + np::initialize(); Let's now create an ndarray from a simple tuple. We first create a tuple object, and then pass it to the array method, to generate the necessary tuple :: - p::object tu = p::make_tuple('a','b','c') ; - np::ndarray example_tuple = np::array(tu) ; + p::object tu = p::make_tuple('a','b','c'); + np::ndarray example_tuple = np::array(tu); Let's now try the same with a list. We create an empty list, add an element using the append method, and as before, call the array method :: - p::list l ; - l.append('a') ; - np::ndarray example_list = np::array (l) ; + p::list l; + l.append('a'); + np::ndarray example_list = np::array (l); Optionally, we can also specify a dtype for the array :: - np::dtype dt = np::dtype::get_builtin(); - np::ndarray example_list1 = np::array (l,dt); + np::dtype dt = np::dtype::get_builtin(); + np::ndarray example_list1 = np::array (l,dt); We can also create an array by supplying data arrays and a few other parameters. First,create an integer array :: - int data[] = {1,2,3,4,5} ; + int data[] = {1,2,3,4,5}; Create a shape, and strides, needed by the function :: - p::tuple shape = p::make_tuple(5) ; - p::tuple stride = p::make_tuple(sizeof(int)) ; + p::tuple shape = p::make_tuple(5); + p::tuple stride = p::make_tuple(sizeof(int)); Here, shape is (4,) , and the stride is `sizeof(int)``. A stride is the number of bytes that must be traveled to get to the next desired element while constructing the ndarray. The function also needs an owner, to keep track of the data array passed. Passing none is dangerous :: - p::object own ; + p::object own; The from_data function takes the data array, datatype,shape,stride and owner as arguments and returns an ndarray :: - np::ndarray data_ex1 = np::from_data(data,dt, shape,stride,own); + np::ndarray data_ex1 = np::from_data(data,dt, shape,stride,own); Now let's print the ndarray we created :: - std::cout << "Single dimensional array ::" << std::endl << p::extract < char const * > (p::str(data_ex)) << std::endl ; + std::cout << "Single dimensional array ::" << std::endl + << p::extract(p::str(data_ex)) << std::endl; Let's make it a little more interesting. Lets make an 3x2 ndarray from a multi-dimensional array using non-unit strides First lets create a 3x4 array of 8-bit integers :: - uint8_t mul_data[][4] = {{1,2,3,4},{5,6,7,8},{1,3,5,7}}; + uint8_t mul_data[][4] = {{1,2,3,4},{5,6,7,8},{1,3,5,7}}; Now let's create an array of 3x2 elements, picking the first and third elements from each row . For that, the shape will be 3x2. The strides will be 4x2 i.e. 4 bytes to go to the next desired row, and 2 bytes to go to the next desired column :: - shape = p::make_tuple(3,2) ; - stride = p::make_tuple(sizeof(uint8_t)*2,sizeof(uint8_t)) ; + shape = p::make_tuple(3,2); + stride = p::make_tuple(sizeof(uint8_t)*2,sizeof(uint8_t)); Get the numpy dtype for the built-in 8-bit integer data type :: - np::dtype dt1 = np::dtype::get_builtin(); + np::dtype dt1 = np::dtype::get_builtin(); Now lets first create and print out the ndarray as is. Notice how we can pass the shape and strides in the function directly, as well as the owner. The last part can be done because we don't have any use to manipulate the "owner" object :: - np::ndarray mul_data_ex = np::from_data(mul_data,dt1, p::make_tuple(3,4),p::make_tuple(4,1),p::object()); - std::cout << "Original multi dimensional array :: " << std::endl << p::extract < char const * > (p::str(mul_data_ex)) << std::endl ; + np::ndarray mul_data_ex = np::from_data(mul_data, dt1, + p::make_tuple(3,4), + p::make_tuple(4,1), + p::object()); + std::cout << "Original multi dimensional array :: " << std::endl + << p::extract(p::str(mul_data_ex)) << std::endl; Now create the new ndarray using the shape and strides and print out the array we created using non-unit strides :: - mul_data_ex = np::from_data(mul_data,dt1, shape,stride,p::object()); - std::cout << "Selective multidimensional array :: "< (p::str(mul_data_ex)) << std::endl ; + mul_data_ex = np::from_data(mul_data, dt1, shape, stride, p::object()); + std::cout << "Selective multidimensional array :: "<(p::str(mul_data_ex)) << std::endl ; + } -Note : The from_data method will throw "error_already_set" if the number of elements dictated by the shape and the corresponding strides don't match - -} +.. note:: The from_data method will throw ``error_already_set`` if the number of elements dictated by the shape and the corresponding strides don't match. diff --git a/develop/doc/html/numpy/_sources/tutorial/ufunc.txt b/develop/doc/html/numpy/_sources/tutorial/ufunc.txt index 47acafb4..a3571dbc 100644 --- a/develop/doc/html/numpy/_sources/tutorial/ufunc.txt +++ b/develop/doc/html/numpy/_sources/tutorial/ufunc.txt @@ -35,82 +35,86 @@ Now we create the structs necessary to implement the ufuncs. The typedefs *must* Initialise the Python runtime and the numpy module :: int main(int argc, char **argv) - { - Py_Initialize(); - np::initialize(); + { + Py_Initialize(); + np::initialize(); Now expose the struct UnarySquare to Python as a class, and let ud be the class object. :: - p::object ud = p::class_ >("UnarySquare") - .def("__call__", np::unary_ufunc::make()); + p::object ud = p::class_ >("UnarySquare"); + ud.def("__call__", np::unary_ufunc::make()); Let inst be an instance of the class ud :: - p::object inst = ud(); + p::object inst = ud(); Use the "__call__" method to call the overloaded () operator and print the value :: - std::cout << "Square of unary scalar 1.0 is " << p::extract (p::str(inst.attr("__call__")(1.0))) << std::endl ; + std::cout << "Square of unary scalar 1.0 is " << p::extract(p::str(inst.attr("__call__")(1.0))) << std::endl; Create an array in C++ :: - int arr[] = {1,2,3,4} ; + int arr[] = {1,2,3,4} ; ..and use it to create the ndarray in Python :: - np::ndarray demo_array = np::from_data(arr, np::dtype::get_builtin() , p::make_tuple(4), p::make_tuple(4), p::object()); + np::ndarray demo_array = np::from_data(arr, np::dtype::get_builtin(), + p::make_tuple(4), + p::make_tuple(4), + p::object()); Print out the demo array :: - std::cout << "Demo array is " << p::extract (p::str(demo_array)) << std::endl ; + std::cout << "Demo array is " << p::extract(p::str(demo_array)) << std::endl; Call the "__call__" method to perform the operation and assign the value to result_array :: - p::object result_array = inst.attr("__call__")(demo_array) ; + p::object result_array = inst.attr("__call__")(demo_array); Print the resultant array :: - std::cout << "Square of demo array is " << p::extract (p::str(result_array)) << std::endl ; + std::cout << "Square of demo array is " << p::extract(p::str(result_array)) << std::endl; Lets try the same with a list :: - p::list li ; - li.append(3); - li.append(7); + p::list li; + li.append(3); + li.append(7); Print out the demo list :: - std::cout << "Demo list is " << p::extract (p::str(li)) << std::endl ; + std::cout << "Demo list is " << p::extract(p::str(li)) << std::endl; Call the ufunc for the list :: - result_array = inst.attr("__call__")(li) ; + result_array = inst.attr("__call__")(li); And print the list out :: - std::cout << "Square of demo list is " << p::extract (p::str(result_array)) << std::endl ; + std::cout << "Square of demo list is " << p::extract(p::str(result_array)) << std::endl; Now lets try Binary ufuncs. Again, expose the struct BinarySquare to Python as a class, and let ud be the class object :: - ud = p::class_ >("BinarySquare") - .def("__call__", np::binary_ufunc::make()); + ud = p::class_ >("BinarySquare"); + ud.def("__call__", np::binary_ufunc::make()); And initialise ud :: - inst = ud(); + inst = ud(); Print the two input lists :: - std::cout << "The two input list for binary ufunc are " << std::endl << p::extract (p::str(demo_array)) << std::endl << p::extract (p::str(demo_array)) << std::endl ; + std::cout << "The two input list for binary ufunc are " << std::endl + << p::extract(p::str(demo_array)) << std::endl + << p::extract(p::str(demo_array)) << std::endl; Call the binary ufunc taking demo_array as both inputs :: - result_array = inst.attr("__call__")(demo_array,demo_array) ; + result_array = inst.attr("__call__")(demo_array,demo_array); And print the output :: - std::cout << "Square of list with binary ufunc is " << p::extract (p::str(result_array)) << std::endl ; - -} + std::cout << "Square of list with binary ufunc is " << p::extract(p::str(result_array)) << std::endl; + } diff --git a/develop/doc/html/numpy/_static/boost.css b/develop/doc/html/numpy/_static/boost.css index 986c4050..28f89359 100644 --- a/develop/doc/html/numpy/_static/boost.css +++ b/develop/doc/html/numpy/_static/boost.css @@ -1,66 +1,716 @@ + /*============================================================================= - Copyright 2002 William E. Kempf - Distributed under the Boost Software License, Version 1.0. (See accompany- - ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +Copyright (c) 2004 Joel de Guzman +http://spirit.sourceforge.net/ + +Copyright 2013 Niall Douglas additions for colors and alignment. +Copyright 2013 Paul A. Bristow additions for more colors and alignments. + +Distributed under the Boost Software License, Version 1.0. (See accompany- +ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) =============================================================================*/ -H1 -{ - FONT-SIZE: 200%; - COLOR: #00008B; +/*============================================================================= +Body defaults +=============================================================================*/ + + body + { + margin: 1em; + font-family: sans-serif; + } + +/*============================================================================= +Paragraphs +=============================================================================*/ + + p + { + text-align: left; + font-size: 10pt; + line-height: 1.15; + } + +/*============================================================================= +Program listings +=============================================================================*/ + + /* Code on paragraphs */ + p tt.computeroutput + { + font-size: 9pt; + } + + pre.synopsis + { + font-size: 9pt; + margin: 1pc 4% 0pc 4%; + padding: 0.5pc 0.5pc 0.5pc 0.5pc; + } + + .programlisting, + .screen + { + font-size: 9pt; + display: block; + margin: 1pc 4% 0pc 4%; + padding: 0.5pc 0.5pc 0.5pc 0.5pc; + } + + /* Program listings in tables don't get borders */ + td .programlisting, + td .screen + { + margin: 0pc 0pc 0pc 0pc; + padding: 0pc 0pc 0pc 0pc; + } + +/*============================================================================= +Headings +=============================================================================*/ + + h1, h2, h3, h4, h5, h6 + { + text-align: left; + margin: 1em 0em 0.5em 0em; + font-weight: bold; + } + + h1 { font-size: 140%; } + h2 { font-weight: bold; font-size: 140%; } + h3 { font-weight: bold; font-size: 130%; } + h4 { font-weight: bold; font-size: 120%; } + h5 { font-weight: normal; font-style: italic; font-size: 110%; } + h6 { font-weight: normal; font-style: italic; font-size: 100%; } + + /* Top page titles */ + title, + h1.title, + h2.title + h3.title, + h4.title, + h5.title, + h6.title, + .refentrytitle + { + font-weight: bold; + margin-bottom: 1pc; + } + + h1.title { font-size: 140% } + h2.title { font-size: 140% } + h3.title { font-size: 130% } + h4.title { font-size: 120% } + h5.title { font-size: 110% } + h6.title { font-size: 100% } + + .section h1 + { + margin: 0em 0em 0.5em 0em; + font-size: 140%; + } + + .section h2 { font-size: 140% } + .section h3 { font-size: 130% } + .section h4 { font-size: 120% } + .section h5 { font-size: 110% } + .section h6 { font-size: 100% } + + /* Code on titles */ + h1 tt.computeroutput { font-size: 140% } + h2 tt.computeroutput { font-size: 140% } + h3 tt.computeroutput { font-size: 130% } + h4 tt.computeroutput { font-size: 130% } + h5 tt.computeroutput { font-size: 130% } + h6 tt.computeroutput { font-size: 130% } + + +/*============================================================================= +Author +=============================================================================*/ + + h3.author + { + font-size: 100% + } + +/*============================================================================= +Lists +=============================================================================*/ + + li + { + font-size: 10pt; + line-height: 1.3; + } + + /* Unordered lists */ + ul + { + text-align: left; + } + + /* Ordered lists */ + ol + { + text-align: left; + } + +/*============================================================================= +Links +=============================================================================*/ + + a + { + text-decoration: none; /* no underline */ + } + + a:hover + { + text-decoration: underline; + } + +/*============================================================================= +Spirit style navigation +=============================================================================*/ + + .spirit-nav + { + text-align: right; + } + + .spirit-nav a + { + color: white; + padding-left: 0.5em; + } + + .spirit-nav img + { + border-width: 0px; + } + +/*============================================================================= +Copyright footer +=============================================================================*/ + .copyright-footer + { + text-align: right; + font-size: 70%; + } + + .copyright-footer p + { + text-align: right; + font-size: 80%; + } + +/*============================================================================= +Table of contents +=============================================================================*/ + + div.toc + { + margin: 1pc 4% 0pc 4%; + padding: 0.1pc 1pc 0.1pc 1pc; + font-size: 80%; + line-height: 1.15; + } + + .boost-toc + { + float: right; + padding: 0.5pc; + } + + /* Code on toc */ + .toc .computeroutput { font-size: 120% } + + /* No margin on nested menus */ + + .toc dl dl { margin: 0; } + +/*============================================================================= +Tables +=============================================================================*/ + + .table-title, + div.table p.title + { + margin-left: 4%; + padding-right: 0.5em; + padding-left: 0.5em; + } + + .informaltable table, + .table table + { + width: 92%; + margin-left: 4%; + margin-right: 4%; + } + + div.informaltable table, + div.table table + { + padding: 4px; + } + + /* Table Cells */ + div.informaltable table tr td, + div.table table tr td + { + padding: 0.5em; + text-align: left; + font-size: 9pt; + } + + div.informaltable table tr th, + div.table table tr th + { + padding: 0.5em 0.5em 0.5em 0.5em; + border: 1pt solid white; + font-size: 80%; + } + + table.simplelist + { + width: auto !important; + margin: 0em !important; + padding: 0em !important; + border: none !important; + } + table.simplelist td + { + margin: 0em !important; + padding: 0em !important; + text-align: left !important; + font-size: 9pt !important; + border: none !important; + } + +/*============================================================================= +Suppress margins in tables +=============================================================================*/ + + table th > *:first-child, + table td > *:first-child + { + margin-top: 0; + } + + table th > *:last-child, + table td > *:last-child + { + margin-bottom: 0; + } + +/*============================================================================= +Blurbs +=============================================================================*/ + + div.note, + div.tip, + div.important, + div.caution, + div.warning, + p.blurb + { + font-size: 9pt; /* A little bit smaller than the main text */ + line-height: 1.2; + display: block; + margin: 1pc 4% 0pc 4%; + padding: 0.5pc 0.5pc 0.5pc 0.5pc; + } + + p.blurb img + { + padding: 1pt; + } + +/*============================================================================= +Variable Lists +=============================================================================*/ + + div.variablelist + { + margin: 1em 0; + } + + /* Make the terms in definition lists bold */ + div.variablelist dl dt, + span.term + { + font-weight: bold; + font-size: 10pt; + } + + div.variablelist table tbody tr td + { + text-align: left; + vertical-align: top; + padding: 0em 2em 0em 0em; + font-size: 10pt; + margin: 0em 0em 0.5em 0em; + line-height: 1; + } + + div.variablelist dl dt + { + margin-bottom: 0.2em; + } + + div.variablelist dl dd + { + margin: 0em 0em 0.5em 2em; + font-size: 10pt; + } + + div.variablelist table tbody tr td p, + div.variablelist dl dd p + { + margin: 0em 0em 0.5em 0em; + line-height: 1; + } + +/*============================================================================= +Misc +=============================================================================*/ + + /* Title of books and articles in bibliographies */ + span.title + { + font-style: italic; + } + + span.underline + { + text-decoration: underline; + } + + span.strikethrough + { + text-decoration: line-through; + } + + /* Copyright, Legal Notice */ + div div.legalnotice p + { + text-align: left + } + +/*============================================================================= +Colors +=============================================================================*/ + + @media screen + { + body { + background-color: #FFFFFF; + color: #000000; + } + + /* Syntax Highlighting */ + .keyword { color: #0000AA; } + .identifier { color: #000000; } + .special { color: #707070; } + .preprocessor { color: #402080; } + .char { color: teal; } + .comment { color: #800000; } + .string { color: teal; } + .number { color: teal; } + .white_bkd { background-color: #FFFFFF; } + .dk_grey_bkd { background-color: #999999; } + + /* Links */ + a, a .keyword, a .identifier, a .special, a .preprocessor + a .char, a .comment, a .string, a .number + { + color: #005a9c; + } + + a:visited, a:visited .keyword, a:visited .identifier, + a:visited .special, a:visited .preprocessor a:visited .char, + a:visited .comment, a:visited .string, a:visited .number + { + color: #9c5a9c; + } + + h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, + h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover, + h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited + { + text-decoration: none; /* no underline */ + color: #000000; + } + + /* Copyright, Legal Notice */ + .copyright + { + color: #666666; + font-size: small; + } + + div div.legalnotice p + { + color: #666666; + } + + /* Program listing */ + pre.synopsis + { + border: 1px solid #DCDCDC; + } + + .programlisting, + .screen + { + border: 1px solid #DCDCDC; + } + + td .programlisting, + td .screen + { + border: 0px solid #DCDCDC; + } + + /* Blurbs */ + div.note, + div.tip, + div.important, + div.caution, + div.warning, + p.blurb + { + border: 1px solid #DCDCDC; + } + + /* Table of contents */ + div.toc + { + border: 1px solid #DCDCDC; + } + + /* Tables */ + div.informaltable table tr td, + div.table table tr td + { + border: 1px solid #DCDCDC; + } + + div.informaltable table tr th, + div.table table tr th + { + background-color: #F0F0F0; + border: 1px solid #DCDCDC; + } + + .copyright-footer + { + color: #8F8F8F; + } + + /* Misc */ + span.highlight + { + color: #00A000; + } + } + + @media print + { + /* Links */ + a + { + color: black; + } + + a:visited + { + color: black; + } + + .spirit-nav + { + display: none; + } + + /* Program listing */ + pre.synopsis + { + border: 1px solid gray; + } + + .programlisting, + .screen + { + border: 1px solid gray; + } + + td .programlisting, + td .screen + { + border: 0px solid #DCDCDC; + } + + /* Table of contents */ + div.toc + { + border: 1px solid gray; + } + + .informaltable table, + .table table + { + border: 1px solid gray; + border-collapse: collapse; + } + + /* Tables */ + div.informaltable table tr td, + div.table table tr td + { + border: 1px solid gray; + } + + div.informaltable table tr th, + div.table table tr th + { + border: 1px solid gray; + } + + table.simplelist tr td + { + border: none !important; + } + + /* Misc */ + span.highlight + { + font-weight: bold; + } + } + +/*============================================================================= +Images +=============================================================================*/ + + span.inlinemediaobject img + { + vertical-align: middle; + } + +/*============================================================================== +Super and Subscript: style so that line spacing isn't effected, see +http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=1&postId=5341 +==============================================================================*/ + +sup, +sub { +height: 0; +line-height: 1; +vertical-align: baseline; +position: relative; + } -H2 -{ - FONT-SIZE: 150%; + +/* For internet explorer: */ + +* html sup, +* html sub { +vertical-align: bottom; } -H3 -{ - FONT-SIZE: 125%; + +sup { +bottom: 1ex; } -H4 -{ - FONT-SIZE: 108%; + +sub { +top: .5ex; } -BODY + +/*============================================================================== +Indexes: pretty much the same as the TOC. +==============================================================================*/ + + .index + { + font-size: 80%; + padding-top: 0px; + padding-bottom: 0px; + margin-top: 0px; + margin-bottom: 0px; + margin-left: 0px; + } + + .index ul + { + padding-left: 3em; + } + + .index p + { + padding: 2px; + margin: 2px; + } + + .index-entry-level-0 + { + font-weight: bold; + } + + .index em + { + font-weight: bold; + } + + +/*============================================================================== +Alignment and coloring use 'role' feature, available from Quickbook 1.6 up. +Added from Niall Douglas for role color and alignment. +http://article.gmane.org/gmane.comp.lib.boost.devel/243318 +*/ + +/* Add text alignment (see http://www.w3schools.com/cssref/pr_text_text-align.asp) */ +span.aligncenter { - FONT-SIZE: 100%; - BACKGROUND-COLOR: #ffffff; - COLOR: #000000; + display: inline-block; width: 100%; text-align: center; } -PRE +span.alignright { - MARGIN-LEFT: 2em; - FONT-FAMILY: Courier, - monospace; + display: inline-block; width: 100%; text-align: right; } -CODE +/* alignleft is the default. */ +span.alignleft { - FONT-FAMILY: Courier, - monospace; + display: inline-block; width: 100%; text-align: left; } -CODE.as_pre + +/* alignjustify stretches the word spacing so that each line has equal width +within a chosen fraction of page width (here arbitrarily 20%). +*Not* useful inside table items as the column width remains the total string width. +Nor very useful, except to temporarily restrict the width. +*/ +span.alignjustify { - white-space: pre; + display: inline-block; width: 20%; text-align: justify; } -.index -{ - TEXT-ALIGN: left; -} -.page-index -{ - TEXT-ALIGN: left; -} -.definition -{ - TEXT-ALIGN: left; -} -.footnote -{ - FONT-SIZE: 66%; - VERTICAL-ALIGN: super; - TEXT-DECORATION: none; -} -.function-semantics -{ - CLEAR: left; -} \ No newline at end of file + +/* Text colors. +Names at http://www.w3.org/TR/2002/WD-css3-color-20020219/ 4.3. X11 color keywords. +Quickbook Usage: [role red Some red text] + +*/ +span.red { inline-block; color: red; } +span.green { color: green; } +span.lime { color: #00FF00; } +span.blue { color: blue; } +span.navy { color: navy; } +span.yellow { color: yellow; } +span.magenta { color: magenta; } +span.indigo { color: #4B0082; } +span.cyan { color: cyan; } +span.purple { color: purple; } +span.gold { color: gold; } +span.silver { color: silver; } /* lighter gray */ +span.gray { color: #808080; } /* light gray */ diff --git a/develop/doc/html/numpy/_static/style.css b/develop/doc/html/numpy/_static/style.css index 19d5d096..2ab1b37d 100644 --- a/develop/doc/html/numpy/_static/style.css +++ b/develop/doc/html/numpy/_static/style.css @@ -1,5 +1,12 @@ @import url(boost.css); +.header h1 a +{ + color: #00507f; + font-size: 200%; + font-style: italic; +} +.header h3 { margin: 1px;} #contents { /* border-bottom: solid thin black;*/ @@ -7,5 +14,16 @@ .highlight { - border: 1px solid #aaaaaa; -} \ No newline at end of file + border: 1px solid #aaaaaa; + background-color: inherit; + padding: 0 1em; + margin: 0 5em; +} +#searchbox +{ + float: right; + width: auto; + margin: 0 2em; +} + +.admonition-title { font-weight: bold;} diff --git a/develop/doc/html/numpy/genindex.html b/develop/doc/html/numpy/genindex.html index 5d4248d3..fd52f22e 100644 --- a/develop/doc/html/numpy/genindex.html +++ b/develop/doc/html/numpy/genindex.html @@ -8,8 +8,8 @@ Index - Boost.Python NumPy extension 1.0 documentation - +