ࡱ> }~y  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwz{|RdO)=m,x@PicturesH7PowerPoint Document(ܱSummaryInformation(l HG( "/ 00DTimesngsRomax 0Hxn@dxDArialngsRomax 0Hxn@dx DTimes New Roman 0Hxn@dx0DWingdingsRoman 0Hxn@dx a .@  @@``  @n?" n@7L;j]%PNG  IHDRyCgAMABO pHYs.#.#x?v$tEXtSoftwareQuickTime 6.5.1 (Mac OS X)K#tIME 44N+ IDATx}}y=+ivlص.6$>%u+1N+LR'|IUםNJՕVWWZ;-.ǷJhk===|̾z5ygϷh ϝag}Χ8̥˓S|>+_70Czw;;{/\ 7p+&.h&.wJ+k[3<}/ܢp,4Gޜڴ|utZ8'~D }Sp[ RD$F0p+N?.ap3bF}=ɳf.6m2Fp<¥]P5>-}tq~~Pk'ݎ;O&9XN`P/ @ ա gN91 ׻uJ`z}̹X^+zٻK=M D!<޾.]bV}gU7&JkD ]>?X6tB ID0[58VGO|ڙ/?2 "$ ȸFytv~|r]o~V͇ą 8`S-DPs:^S24zgO[Ӵ(2l׵{?tȦ^ +cp 4 eDn \= X4 S};l2b(nrF ;O skt^^/ 73Ξ,cqV,T$ܫ~5wDsND n?,xblMG6jf\6<<2e@Gޜ5 YEa#5АMfg,fD8ɔG%WA ]2ny4n6l# .;hˌB=R_vD c{[Gt=ɖY5ֶn (\ÈN$Kf"~jLKavdtFlᄛ(+@ps0'2zl,{n] Zc 73WTL#0b΃4Wպ@0耰"X X} j xANc}+zjJ04,up[=NFP|Bp}/2cH ?c{w} ZnQ&X΁GV+UҡU+L *`wh,4 R> 04;vߴe[ZB %{,{4|6U $r#\ U ,eCg"d! o|JA$׿`̐΁eλUɲAL|oWZTzE5( 3}#'@d4n2voEM<ָ|Aa՝޷%FumB|.6Ld4YY7<>qq; Uk|n*B-%Zp,,ۛpg[GD A1#{|$5 =X|3|#/s*dȷ`oG^Fv}} >C8n&؁GXm1xlgr?;3] X z=w~țSE3đ `]UC/6^("_z |dtq|WW(q%ks87tpY}s@R8u88h`O|(|!y C9 > g Ng/t00.f5''²Ozblvi9_^oWn+%  8H>L%>q`2V\&)'Qz={ j͂.MT_4|=!^0D0?Aۑ $0 ȒrHbŅa堖bs~{_~?] gL@ۖʁfDWdjA.gWqnuo_Oک4⣋[{*j Ë'r 4Ѭ 8d`;oH[3}&*>PwNO},{ܶ/=ѷoxuo88 R3pD}nL3jϬCӀIцߊ{PXA=Q{b*ڱK5w~dG 9toB M4-Bܳ _z PcϰF t[24a201A@79H'@4t5tfTPnҲhGޜ21:p2[tM0B aFM= <>|f[m/rt%h . Xȕ.XMf P٠s"Iņ>xKuB#F1A";?6Ѹ 2~Ͻ*'n_bP FGzpEЁBkQ8JFE58@hN2'db]Mh, /UXoݼ~F)Sm_Wf¨a1x$hHT.L@UE@n@'fS]=Opg7^ekk ]LkFU!'&Pȴ;\lѼ-|Z=E:78%-":B%,$WOV5:>y7o>7wOrת5ZǵѨ-@J=#3}#lF~o&^0mcaDgWr+lG9"-6蟘]8I؅{94lX˷W6?rߪLQh B}+zJyI顖[Ȱz0LA#!I/TEC9Еn bۘ pšUgWvѯbcV${"J467)Mh8i&vADp@ "r 8.R~չGX}?K뗞mK%:܌H%ݰ|~J& c\ K=w!/m\Œ% ;:+HKQ7RFՙө 9u[7KRq[",7씰jA>tagPc3!#f]u({bP%Ƞic&^Gop aɠVTKÃˍ* SX 2FXm;Չp$G‘U ODh .#9&/w"X?vu[2 ZȈ8d|Q4fo '͍\W鯉lCDiP@iڻ;JG!T^hE jKfљ=#lzguiy%)C|Jº ,u%ӮC4 'dE"J04RdZUu7 ;__D Mk:V 7/B"m]JUϑlۼCOxv6?I.%]o\z:eנP~h5Aڹ3M+Ufڰ5O`T~g!ۼ 7Ф? |/(o J= ̓ט)_|ȷ>{ l`D9Һj>AnuLXD8TK-6o?Uy76|Ә5*u+ Jr|td},^O<~wu$ Ga9>1˲ڈaJXρ!$FM"KN Na7cj ]Gh,b|H=T9j)Ɗn !wl_5L֠$`QG ޒ`Y<{43*07Fİش`&qH AB H&wوO˒8%XK}}3h\ċ=1 DM\N ťWX):(7S"JxԤTigyqD`X[21!=qO6H&(q&6"*V"9|]K(k~E4N-זfobq1d㇒FTXVŘoțժw!ʟlD!—^+%?W N㲦{Q]^dg&͐$i9J?ZE"΂Om!|&%.Q X(A&>t>zF><D|Cڋ(^e~`Y"e:ȀK #6j"ʙW]wLTTQQ֓g#z2`ZPjM/c@I0=*pH ~q&EsH~;Fܜ2Aj?0ƿgw_y4DLt1ї 2ݨBQ0=ґۡ/v@QЀZ+wLEQYJ-?d QGh _$ϯ|b ZJxځ|֏+Udst20JE8w~_ݱU/ P˜C~c]r|9`̊q 9A?RFSeB0I~=v4@q{eǬf2$ "5;\4axlֳ{߽8~<(G]Q倩 AD,Tƒ2@LӔ*6"_ob`13G1/,]u eQFXL3 6?p{41UI04ʓEApL*/^wF5 ulPw 2b" `p޷/G6͹tƁBju`0lV'u!.C9vrUA$ow0+[Pe5 X=X[4THld&GO|XR69/5ؽc]#f.͂zӪ<8'(qќ`ќ.g5mCyޜyxΚT1VF iYqM ɳsz/OzΙS+5<;'&կ|ŗ]l_Hi24#Vb>+1:9> ec=S_aP7+k:c}MB#J0jrPߘis͠^W=O66/hu?(ŵW TPa IhLౕ>vjNc/B|th^"pq(@Z|M? XiXҮhR9vèAJYÃA?h\y(02("Wu R+Ϝ&##u7)' AD-3'F_d)vYAW3>6G%&14쥪AYW'zӪDuxsM(<-XXש#?|©&HHZj; YGQQ(2 uV9@'oΫvdQ3,TADDai0-%ݯۄ_JFEdPQQXuus΁6'PVKH%4TJ4cDiFNiK}1<9ť`-[$’A*%14&Ṟ`4Jzk1aɠ"*%F&"{P\9 'ּs|prٽo}}VEdPQPht;LT9s{NO}|/׽E’A2RQQP_c=h g={1sivӶ/UodJjA"J0\)ɢMѻw}^{ac#[h[X,$ Y"JX}gv)иv<3ǾuteCKY}A'hBAS) HXs&:Ud&! g/T:-5Y;L56|vXcS&MˇdwիE;Œ Ȳ@Jx\ LFs,9>sp,0`Uw2V1w:N:a0 F8؆Ч}A`A [DvdZVQlIyy&E]RZgI2{%7O m-}CKqYp-T,r4{i9X;|Fv?yn:Xiw &6j78xOKfMG Դ  ,;=w7wRveV?\ 0-ֵH;t՞fp99rxl>sY89v,?aYnGO j Loxw^$.܍O> {Ӎ06aZl~:R³{*l)\>2Ty d&0VP91| tǜ$qO zsiaLPVL0^MC|+Ƣ[#,GWwy0xQ wf5^bQ%E\57c 'e%4 dӣ͛L6WE`ji[42\ qD¿~$xW$UxX*@ץ_ў&41%]uLd8R͆%Fmxnqx)F#F9Wl|cbsdasX f!n8K_qiďC` 0~$ ybLY HrGM))N^ɃD ])rb/NPPCUX2XK{߭kؚ&XM*Jd`ǟqm|oT1rL[AZln9qćǾ4,c)HbN _ E>p+LSBL@pcBp<< $`\/:y$QX,ԋҀ ʁzmWrvf"J#Ji#np~oߘyf2WHρ[mH2n岈=CO/GL5Q2Ͻ铗!8a1 aJp1i;ݿ55+8R͌ 56+j=1iRTD 綯3%{R`PĢ\,-Re aW'd)t9/TK`L^&4?(|qʨ#p2.q )I)'Ep~3F[4x㕇Lɓg/4h>5Yj*JJZվڕH+wuEfG U&A TrhO ď\hWd|o\[FX1,RC3vRBdHE)* H"\}Zt>\jrP;KnxNOT` jd K!MIDATQE,(Cid JerR-T@QM%V0 N?YTE"63`>R$|J3yJXi8RK *368W}FSur&>'buA=U1BQH$%%b/}\iiSENMn$%(ӍF LEsBqNW>yl:'\iIjDуTOgܒu4+,R2:M ,9F'g("F @qmYYDIi*RpT@hɺtpɋ3>1/fuH2(JpSDٝP*8A&Dւ1LŘksb۩F(ܷ2_[) JH(.XbʼnmQFlO_!%g&fW!bL XMzZF*I9-T )z:\n315mvHoy%dsBAyBR] r %"Vx"T>yԟ@Y<W@Ã#^De︽(h)!7rckSSKѹ3 @H,qU@R`vK AII'G9UN (|ˎ+R|͗`T:©#'*,^T(1 $M7H@+|%R#s-) %%+s0%<'amAT8TiIrXoZeBv!e8ҢrP @i ;33Qa4ױa&hz1G[Z$]ێBEK~!٥}_KB*OLIq."^hg]Hf6na~16 ET ĚțS)uLM連G@a|Ws*;O\QPN6B$ emwğJY41a״zNoV),R]33@q()8 P(SئƴU4Hul{|lg(&(ƴwIr`m;̨FJ}a2 ѨIj~IzP>cPOQBQ`o>yM)2  2W@uiťq;2Hot LP̆q4rhEQv5(?q,SœD^ZD EQ06w:JI dxAB:Nd2' PSa5@ "Rx1kbLs(;?nEt-jБkE6"w1p>JPC4GUN!P A4E"P^Q>v7 _rJ($Ņa4uću[ ˯D9bȂC#MXkq"qIۑZRʄ^Ǣ#ᰁ+M+jA&.k3*< )I[ "#>o@3Qa.,G84+*V(y*W#VuE,TG<9-`OGO" 3 BEHbƇ^tAhWn*i 1i: ư4(`'_߂fv甀J]IdZrY62% @Y(}ZzA.n DXr#;,cP0աsEgNO/H6a}FL_-v.~FfY aZL9R "$Is'|⊂f@%K3!'i ^k2E>rOL >w Mtq[aZ9~L%nyhJIYf3F%%$"DQesP@ToH2%\{QC<d#JyNBf\#_0TQ +kgͣ dXJ% S721 pπQ驏<5aYEQT&yFI Ph,lJܱꀕ3(Ӕʑ|2hꂀe=zFmm2'OP]gf#3Q 0O88eڮruF.'&&[GԂ1 JS-y0MѿS6K3΍?Jr[h$L5pt'ABNpo43 "NT黼CF΃ h1 #n td3R>ₗ%"Hh|3Yʯ,B"P)ntebIs4LA1J|ܤwD@U(d7 BB3Q�R9: 9m: o|-{ϙK*g"bzI.綯+,5aW|0B; b]"c,ho2H8%rhRz.Vd8 j7'H2"G틇:ն"YUJc7[^j6ÐWtT9(Dֈ qxB2in<@;b~^ZCB`,Qa;d&0 F6ya& n8" Ӣ$ B5}&/& 'ٴ` /iVg%} \T[+9}VFE{p'[~/>^%(R`]wȔ~˟ w_3g 27 ٚ +~+׬ KD3Ƒ^Vlі8ЈpXIȼne_%(8轪7)# >%)x[Q2+B@Y9 :?4ٍ ӌLɰvM3{ޮ,쎞Aڲp;C- ZK}ͮD""$I):PiG3_UB49}Z429|wF;FDHgҥ=]%ht8TmR@04?-70Etxd4^otïC|텍͙O] 3=%@[cJ:O(ksV< %EPxDK O^HR^WE!k$Ic-; B3Q`{aSqXc J0jrrJw?iI& \>?5"7}OFd~oR ׯ D!Nj j_JsW PhgI:^*MGBh"9;Aݍ1hj#bM?!X]ɻ\ D3jY2>0]\}іJL.vߋ鼘op^F9~)Y`oL%!7E r"]q؞{!4R,N)CK.4I@*@ r #w~7AWs> K#FWq'ՆT^BC@o j5cѻ?}AHZuGckr-kwL;AlPVM5R~-;'^0AHFsPn8OC_t8Ȟᄇ؁M8ގA p^:1Mt?B#@n!\Ed I7Q3]4 DUQ0"I6IH4aӐd{rو]2;4%j Afq,#fd:K,Q: g*J a5L1Bi ԣ5#/l}Շz,t[M/ . *9aʁ`"\] @HȞT&f^v%Ƣt 3ʁND8r@hi 1 큁?} dЦmg*:u, }·8 pB(YS<(E$}බߗ >G}5"8\KEǰDAD$-qգ4I(bNrh7P_%%cb~.!7hr?NS?E$04lx`yuDel'iζ(^#F( >Ӹ$s%30tl))a-͌ )^֌4oLMlfҴb_oQ xOs 2H8"S&p6 4߸h%H L3*+t5yI\RPmax0(9LXƖ1hW5G |) uEaq R,3\eTpA^+UTpHD2J W:d"3x WIENDB`dd@  @@`` < 4 |_        @ C?$$b$MFSWP?H7 0e0e    A A8c 8c8c     ?1 d0u0@Ty2 NP'p<'pA)BCD|E|| "0e@     @ABC DEEFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `abN E5%  N E5%  N F   5%    !"?N@ABC DEFFGHIJK5%LMNOPQRSTUWYZ[ \]^_ `ab ,ffffff<@ , ,8  g4ddn0ppp@ ʚ;z3ʚ;G4BdBdn0<4!d!d Gʚ;<4dddd Gʚ;(h___PPT2001D<4X3___PPTMac11@f   hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography    hnamd` Arial&Monotype Typography ? %O  =/8Code-Based Sensitivities for Verification and ValidationAdifor at LANL What s Coming UpCode-based Sensitivity Background Code-based Sensitivity for VnV Some Research Results Application to Truchas Near and Far Term Possibilities*Sensitivity Calculation MethodsjFinite Differences Development time is minimal + Choosing a perturbation ( h )  Inaccurate and/or inefficient  No reverse/adjoint mode  By Hand Can be accurate and efficient + (depends on the programmer) Development time is long  Maintaining derivatives an additional burden  Is there anything else ? & Ty    $$((,,004488<<4,  What is Code-based Sensitivity?FCombines the best of finite differences and by hand sensitivity calculation Program generation tool Short development time Note on vocabulary: Automatic differentiation (AD) is synonymous Derivatives computed this way are Analytically accurate Always faster than central differences, frequently faster than 1-sided differencesNdcidci   How does it work?aEach assignment statement is augmented with derivatives Chain rule assures propagation is correct'Verification and Validation !8Validation and Verification using Code-based SensitivitygValidation by inspection Validation by regression Method of Manufactured Solutions Running error bounds"Validation by inspectionInformal, but valuable method used by physicists/modelers/engineers everywhere Complex simulations have many parameters: Material properties / equations of state Geometry Boundary conditions Some of the simulation parameters are known with great accuracy, some not Similarly, some of the parameters have a big effect on the output, others not so much The effect of a given parameter = sensitivity of out w.r.t. parameter:yFyF#Validation by inspection, cont.hPhysicists/modelers/engineers validate output by inspecting values and sensitivities Output might be  off because a highly sensitive parameter has not been accurately measured Intuition about the sensitivities themselves aids validation process Code-based sensitivity computes analytic derivative values, so:U?U?Validation by Regression0More formal validation methodology Separate  real world data into 2 partitions:  tuning and  testing *Optimize the parameter settings on the  tuning data to minimize simulation vs  real world Assuming the error in the tuned simulation is  small Run the tuned simulation on the  testing data set Check for  small error Many variations on this methodology How to separate data How to determine  small b#K$.#K$  .$Validation by Regression, cont.|The tuning step of this validation method can use Newton s method to obtain optimal values Newton s method runs best with analytic derivatives Code-based sensitivity supplies the derivatives&Method of Manufactured Solutions (MMS)Way of verifying differential equation solvers Given a solver S, a differential operator D, and a forcing function F S(D,F) computes f s.t. D(f) = F (approximately) MMS  manufacture an f compute D(f)(x) for several x, use this as the manufactured F Now check S(D,F) vs f. Can verify order of accuracy, etc. Use code-based sensitivity to compute D(f), for moderately complex subroutines fbu0Qu0  QRunning Error Bounds!Wilkinson idea: estimate the roundoff error inherent in any assignment statement Not exactly the same as derivatives, but similar source augmentation Caveat: rules for intrinsics (like sin,cos) not so well known Caveat 2: roundoff error for sin,cos usu not as important as truncation errort  & Current Research Results +.Code-based Sensitivity for Fortran 90 ProgramsAdifor works well on Fortran 77 Fortran 90, however, has substantial language features Dynamic memory allocation Derived types (=structures) Pointers Operator and interface overloading Modules Adifor90 prototype works on Fortran 90 programs:Wj0Wj0% Activity Analysis for Fortran 90Some variables in a computation may not need sensitivities Example: geometry might be constant Variables whose derivatives are provably 0 need not be computed Adifor activity analysis extended to Fortran 90:;$p;$pBy Name/ By AddresspProgram derivatives represented in 2 ways: By name: Another variable holds the derivatives: x g_x augment calls with additional args: call f(x) call g_f(x,g_x) By address: All active variables (or components) have a derived type: real active real == { real v; real d } procedures signatures are changed (but call sites not changed): sub f(real x) sub g_f(active_real x) By name is smoother for languages with derived types and array slicing operations (F90) x(1:10) g_x(1:10) !! By name x(1:10) x(1:10)%v !! Attempt By address - Not valid !!r+O+3EL  c[, By Name / By Address, cont.By address is smoother for constant interface functions (like mpi_reduce) call mpi_reduce(sendbuf,recvbuf,cnt,dtatype,op,root,comm,ierr) cannot add a g_sendbuf, etc Found a way to do by-address for F90 (also works for F77!) Also found a way to do by-name for CHolomorphic FunctionsRules of calculus the same, so complex valued functions are no problem UNLESS Use abs, or real, imag Sometimes, programs written using non-holo primitives are still holomorphic Found a way to preserve this Side benefit: you can computationally check the cauchy conditions for your code:NN(Adifor90 on TruchasfDuring the week of 23 Jan, I installed Adifor90 prototype on CCS-2 machine, and have begun differentiating Truchas system Truchas is a metal casting code (and MORE  Jim Sicilian) Truchas Properties267 files (not including some package components) 2542 functions/subroutines 104629 lines of code = 70500 non comments (approx) Uses derived types, memory allocation, pointers, overloading via interface blocks, modules, and local subprograms Does NOT use equivalence or common blocks&")Truchas Checkout25 routines checked out (more by time I give this talk) Sample results from an elliptic integral routine elk(0.5) = 1.854074677301372 fd (0.001) = 0.8481413948864258 ad = 0.8472143556167433E Near Term Finish all of Truchas in black-box mode by end of 2006 contract Differentiate pgslib (semi-auto) Investigate how to avoid solver differentiation in Truchas Generalize both of these tasks (upgrade to full auto) Continue to improve the storage efficiency of reverse mode:@!@!rFuture Possibilities Differentiation of other languages of interest Ajax system FLAG code C / C++ Python Machine code (ie source unavailable) Differentiate Stochastic simulations Stochastic calculi If statements get different treatment Other sensitivity Intervals Probability distributions/  4%9$/  4  %9$b-!Future Possibilities, cont.5Improve performance by enabling actual Newton methods/T./P@T P` ̙33` ` ff3333f` 333MMM` f` f` 3>?" dU@ ,? " Z2@% d  ,  << fMMM n?" dZ(@   @@``PX      ` p>> bZ ( mu     `3 wawa1 ?"O%@ : T Click to edit Master title style! !N  Zߜ wawa1 ?" : RClick to edit Master text styles Second level Third level Fourth level Fifth level!     Sl  6 ,1?"Qyl  6 ,1?"hp   c :A ,LACSI_logo"B  s *޽h ? lb (LACSI_slide_template P aY `(  ` ` <W 8c ?"` i : _#Click to edit Master subtitle style$#r  ` <1?"@ xX ` B 8c ?" : T Click to edit Master title style! !p ` c :A ,LACSI_logo"l ` 6 ,1?"Qyl ` 6 ,1?"hB ` s *޽h ? lb80___PPT10.p_B SK`( 1giGo )  Z` uu1 ?&z : ;Body Text Second Level Third Level Fourth Level Fifth Level     <  Z0 hh1?  ~ Page *Z  B""BBddp  01 ?]UL :B  s *~ηo ? a(80___PPT10.pZȬ  P 2(     Zpw hh1?  p Page *Z B""BBddB  s *~ηo ? a(80___PPT10.p Q  @d(  dr d S ( ` : r d S  `` i : y d <^ 8c?"0 `   sMike Fagan Dept. of Computational and Applied Mathematics Rice University http://lacsi.rice.edu/review/slides_2006Ntn A?CA) G <K%H d 0޽h ? lb___PPT10u.pg+D=' n= @B + QQ (  l  C < O%@  : r  S >  : H  0޽h ? lb___PPT10e+D=' ̀= @B + Q H$(  Hr H S  O%@  : r H S P F  : H H 0޽h ? lb___PPT10u.++D=' ̀= @B + Q 0(  r  S  O%@  : r  S @   :   0; p v  ECompute f(x)   0`@  ` TCompute f(x) AND f  (x)+ +X  0 w X  0 ` `   6`G P P`  AAD Tool H  0޽h ? lb___PPT10u.(ô+D=' = @B +m Q xp(  r  S PC O%@  : r  S D  :   H 8c?"` @ BY = A * X ** 2 + BX  0)?H   H 8c?  :   H 8c?  :   H 8c?"`#  ZP_A = 2 * X P_X = A P_B = 1.0 CALL ACCUM(G_Y,P_A,G_A,P_X,G_X,1.0,G_B) Y = A * X ** 2 + B[[H  0޽h ?  lb___PPT10u.(ڛ+D=' = @B + Q $(  r  S I O%@  : r  S   : H  0޽h ? lb___PPT10u.(;w+D=' ̀= @B + Q $(  r  S p O%@  : r  S   : H  0޽h ? lb___PPT10u.(0+D=' ̀= @B + Q $(  r  S P O%@  : r  S  `  : H  0޽h ? lb___PPT10u.(+D=' ̀= @B + Q H(  r  S s O%@  : r  S u  : 2  H 8c?   DFinite DifferencesXB  0DԔ?0 0H  0޽h ? lb___PPT10u.(໕+D=' ̵p= @B + Q x$(  xr x S  O%@  : r x S    : H x 0޽h ? lb___PPT10u.'> +D=' ̀= @B + Q  $(  r  S P O%@  : r  S  G | : H  0޽h ? lb___PPT10u.(0&+D=' ̀= @B + Q 0|$(  |r | S  O%@  : r | S (   : H | 0޽h ? lb___PPT10u.' c+D=' ̀= @B + Q @(  r  S } O%@  : r  S P  : l  N 8c?"6@`NNN?N 7  \ z = a + b eb1 = a  (a+b) + b//&H  0޽h ? lb___PPT10u.' #+D=' !P= @B + Q P$(  r  S " O%@  : r  S  : H  0޽h ? lb___PPT10u.'2K+D=' ̀= @B + Q `X0(  Xx X c $T O%@  : x X c $@>  : H X 0޽h ? lb___PPT10u.(]+D=' ̀= @B + Q p$(  r  S p3 O%@  : r  S ` : H  0޽h ? lb___PPT10u.(g +D=' ̀= @B + Q $(  r  S 0PO%@  : r  S    : H  0޽h ? lb___PPT10u.'+D=' ̀= @B + Q d$(  dr d S O%@  : r d S  : H d 0޽h ? lb___PPT10u.+@ Q+D=' ̀= @B + Q $(  r  S GO%@  : r  S E  : H  0޽h ? lb___PPT10u.'pջ>+D=' ̀= @B + Q $$(  $r $ S O%@  : r $ S o : H $ 0޽h ? lb___PPT10u.(+D=' ̀= @B + Q $(  r  S `2O%@  : r  S  : H  0޽h ? lb___PPT10u.'~m+D=' ̀= @B + Q <<(  <~ < s * O%@  : ~ < s *v : H < 0޽h ? ___PPT10u."+D=' ̀= @B + Q 0$(  r  S p4QO%@  : r  S   : H  0޽h ? lb___PPT10u.'+D=' ̀= @B + Q (  r  S `O%@  : r  S    :   N8c?"0@NNN?N: ZZ < H  0޽h ? lb___PPT10u.'Z+D='  = @B + Q p(  pr p S pdO%@  : r p S e : < p Bpj8c?"0@NNN?N`0 ^F(x + t*v)  F(x) / t ! Directional derivatives0(20 p N`†8c?"0@NNN?NR  > Replace with   p Zdž8c?"0@NNN?Np  TG_F(x,v)  H p 0޽h ? lb___PPT10u.?,@+D=' s= @B +P"4 (     H1 ?]UL  :  3 r uu1 ?&z  :  H  0~ηo ? a("4 tlpt( H  tR t 3 ]UL  :r t # &z  :  H t 0~ηo ? a(80___PPT10.yr"4 tlx( q  xR x 3 ]UL  :r x #  &z  :  H x 0~ηo ? a(80___PPT10.yrdxp^RЀ3ÿ lHbP  @AL G@;b `B&V?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwz{DocumentSummaryInformation8$Current UserM Near TermFuture PossibilitiesFuture Possibilities, cont.  Fonts UsedDesign Template Slide Titles'_㸱iRice UniversityRice University