From 7c1e4669621e4c4e4a66f2dc2050ffb832996963 Mon Sep 17 00:00:00 2001 From: Christoph Ruegg Date: Fri, 22 Aug 2014 11:55:48 +0200 Subject: [PATCH] Docs: IF# Notebook --- docs/content/IFsharpNotebook.fsx | 90 ++++++++++++++++++++++++ docs/content/Users.fsx | 4 +- docs/files/img/IfSharp-GenerateIS.png | Bin 0 -> 31942 bytes docs/files/img/IfSharp-MatrixVector.png | Bin 0 -> 56218 bytes docs/tools/templates/template.cshtml | 1 + 5 files changed, 94 insertions(+), 1 deletion(-) create mode 100644 docs/content/IFsharpNotebook.fsx create mode 100644 docs/files/img/IfSharp-GenerateIS.png create mode 100644 docs/files/img/IfSharp-MatrixVector.png diff --git a/docs/content/IFsharpNotebook.fsx b/docs/content/IFsharpNotebook.fsx new file mode 100644 index 00000000..351d02ae --- /dev/null +++ b/docs/content/IFsharpNotebook.fsx @@ -0,0 +1,90 @@ +(** +IF# Notebook +============ + +[iPython](http://ipython.org/) provides a rich browser-based interactive notebook with support for code, text, mathematical expressions, +inline plots and other rich media. [IfSharp](https://github.com/BayardRock/IfSharp), developed by Bayard Rock, is an F# profile +for iPython with IntelliSense and embedded FSharp.Charting. Thanks to its NuGet support it can load other packages like Math.NET Numerics on demand. + +![Screenshot](img/IfSharp-GenerateIS.png) + + +Installing IF# Notebook +----------------------- + +Follow the instructions at [IfSharp/Installation](http://bayardrock.github.io/IfSharp/installation.html). + +Essentially: + +1. Install [Anaconda](http://continuum.io/downloads) +2. In a shell, run + + conda update conda + conda update ipython + +3. Install [IfSharp](https://github.com/BayardRock/IfSharp/releases). + +*Note that while IfSharp does have support for custom display printers in the repository, +the v2.0-Beta release does not include this yet. Until a newer release is available you may have to compile +IfSharp yourself from [master](https://github.com/BayardRock/IfSharp) and replace the installed binaries.* + + +Display Printers for Matrices and Vectors +----------------------------------------- + +By itself IfSharp does not know how to display matrices and vectors in a nice way, but we can tell it how to do so by providing our own display printers for them. + +![Screenshot](img/IfSharp-MatrixVector.png) + +Run the following snipped once within a notebook to render matrices and vectors with LaTeX/MathJax, and adapt it to your needs e.g. if you want it to show more rows. +Alternatively you can add it to an Includes.fsx file within the IfSharp installation to make it always available. + + open MathNet.Numerics.LinearAlgebra + + let inline (|Float|_|) (v:obj) = + if v :? float then Some(v :?> float) else None + let inline (|Float32|_|) (v:obj) = + if v :? float32 then Some(v :?> float32) else None + let inline (|PositiveInfinity|_|) (v: ^T) = + if (^T : (static member IsPositiveInfinity: 'T -> bool) (v)) + then Some PositiveInfinity else None + let inline (|NegativeInfinity|_|) (v: ^T) = + if (^T : (static member IsNegativeInfinity: 'T -> bool) (v)) + then Some NegativeInfinity else None + let inline (|NaN|_|) (v: ^T) = + if (^T : (static member IsNaN: 'T -> bool) (v)) + then Some NaN else None + + let inline formatMathValue (floatFormat:string) = function + | PositiveInfinity -> "\\infty" + | NegativeInfinity -> "-\\infty" + | NaN -> "\\times" + | Float v -> v.ToString(floatFormat) + | Float32 v -> v.ToString(floatFormat) + | v -> v.ToString() + + let inline formatMatrix (matrix: Matrix<'T>) = + String.concat Environment.NewLine + [ "\\begin{bmatrix}" + matrix.ToMatrixString(10,4,7,2,"\\cdots","\\vdots","\\ddots", + " & ", "\\\\ " + Environment.NewLine, (fun x -> formatMathValue "G4" x)) + "\\end{bmatrix}" ] + + let inline formatVector (vector: Vector<'T>) = + String.concat Environment.NewLine + [ "\\begin{bmatrix}" + vector.ToVectorString(12, 80, "\\vdots", " & ", "\\\\ " + Environment.NewLine, + (fun x -> formatMathValue "G4" x)) + "\\end{bmatrix}" ] + + App.AddDisplayPrinter (fun (x:Matrix) -> + { ContentType = "text/latex"; Data = formatMatrix x }) + App.AddDisplayPrinter (fun (x:Matrix) -> + { ContentType = "text/latex"; Data = formatMatrix x }) + App.AddDisplayPrinter (fun (x:Vector) -> + { ContentType = "text/latex"; Data = formatVector x }) + App.AddDisplayPrinter (fun (x:Vector) -> + { ContentType = "text/latex"; Data = formatVector x }) + + +*) diff --git a/docs/content/Users.fsx b/docs/content/Users.fsx index 08ebecba..dc57f27e 100644 --- a/docs/content/Users.fsx +++ b/docs/content/Users.fsx @@ -6,6 +6,7 @@ Who is using Math.NET Numerics? Open Source ----------- + * [MyMediaLite Recommender System Library](http://www.ismll.uni-hildesheim.de/mymedialite/) * [FermiSim, studying potential solutions to the Fermi paradox via computational simulation of models for space colonisation](https://launchpad.net/fermisim) * [Three-Dimensional Model Shape Description and Retrieval Based on LightField Descriptors](https://code.google.com/p/lightfieldretrieval/) @@ -24,7 +25,8 @@ Open Source * [Math.NET Symbolics](http://symbolics.mathdotnet.com) and other [Math.NET](http://www.mathdotnet.com) projects. Closed Source ----------- +------------- + * [Instarange Simulation](http://instarange.com) by Instarange (Pty) Ltd * [SpectraFox](http://www.spectrafox.com/) STM / AFM spectroscopy analysis * [Colymp](http://colymp.com/) Color Management Software diff --git a/docs/files/img/IfSharp-GenerateIS.png b/docs/files/img/IfSharp-GenerateIS.png new file mode 100644 index 0000000000000000000000000000000000000000..a4219dd02395fc28c0f2af649509a4bb5be4cabd GIT binary patch literal 31942 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
>dJj@HJ41q4$mzZSS%)NQ#~JrLUUBa6$Z!t_ z(eBF{ke8XECZzd8-cP!mj}c6_;f=jyBD2+Y`guC~IZ>hga%U$!J!c(XPG{5Np>+7z ziPr_^&17*ezJ}S;*cIl`_8}RqQxO|;r{-RrS>*2>={#%n9odykk+t2c>kcUafL!Lk zvZ&-m|J9-%<>)4p*K=wRH7faAfBT@UF)m^EtftP=qHBz}2F{LigWge6+dYlM%81Kz z*6Cnx-%!|;{Ouji8>_gjp3l@S_%Q}J)+6Jy}Ve%V8S-&>UF^fT>j{Jv$6M8ysNRlM?F1~LEt zcb*2;pRcOlW}KIIj5&O0S^2Kn7?nE^Q)p8F-Dz(xA&C>6Ip95TPz!7Opb7oMWIMm# zSvVKu`-*s)nf>K_qP_{;QMLW*18OXCU$vz1x8!6Ql!|D@E6A{Kbe-5ZDLEQ%$SvCd zvY&X%pq9g}E(jTFUfFDtv{unLF?NqiC`P8A5sawb*SJNi?k~EH@6iZ`XvU z?9U{O?c?8hia^cqnh z_*5T+En%%3edcFu(md7(3wt@l{Q`8?mZa)R`TT~iC~tp0HiX5|*vLjfZG7zYtTN<= z`2 zdl3`-V9pn1ww2vy3?J4?RC#T|2^(TkcN|P>ER}bcvc_VZ>aGUGU+3K6H-t0pqZ>?+ zVixQ8T_Nhvbi~nowTC)`3-P_NJ+57~X6vECOe06+Rp0v0+An|VcsPnUx5o3=_U=e5 zo5XS#G=+c5NUh>&Xc^__v)>)Rk!xa34v8OZk2^KzPysaf<4V3$ziX0FEV3)5`8O8c z24-4U^UP>p9y-c=zHf4^V>z4OjnJ&2n0;%9sBl+tX6MaL`3n_fKFmXH)*FJfwZ@8* z^=Edf<6$@oGJEwx6+);)try;$1D(;jSd~>`Q^rQzMx$HZ_i^WK)7pFt8c(YfFX?d0 z3ME6k2QlL1v)bqsCC4q*w+SdusMB(L7`r~luvjRaqTZji4dtLwPSbi3BGVf7Emon6 z;R$KFi+bH)kmV|&p_d@xOGm3A-QPDBAaBWTR zkNJIaUs`y=trw*x;J319=im} zUlw8&6D*unMkBAE#84qoPz1Hx%G0B} z*ULxkw%?hWt|GSHWN3QIXrLFmH^?tteg{4fTP8mfG1Qc-As^ zPjL=91)fDee`<@t6PfN85j+s*a^rZ9O?;%e=$Sa zNrdH~v4JS(Z_#KSpT&57D^1Ta0Y)dTlU?&9PMaY#Gn@N>hF2s$U&(FuFjOML?tf`s z-eS(LT^~sk)(#S!EaNlna5@^tUb=VQ3g5WLZjkwcl^fg>);oS6+X2XD-j7OIOqXha z57ycX4{=lKLpmjzV*mI%DOUW#cOM03l2LnVkaDK}fc3&~?r7 zMW=?Iz3uU`W8~!rPpZZ6eGSSYyV@EzYvzbpfYs9_}-iI<>3lBwO9_ zIZ2)&5oaW^TZ@eMT+=3tA=j7l#!1r7xbu~{5FBzMTd8EfhL=3H)E55;tecj#bxu|m z#8%U+fx@+K0{#|RA2VDxRdIUG(W3)p5|>*!!Zlhn^?1SFmUt{}βT8;@Ui5p*d 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 Ht4IF}4xEy) literal 0 HcmV?d00001 diff --git a/docs/files/img/IfSharp-MatrixVector.png b/docs/files/img/IfSharp-MatrixVector.png new file mode 100644 index 0000000000000000000000000000000000000000..c842748f209fe11c4e8b1ec35f32beb51497c947 GIT binary patch literal 56218 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 z5Delimited Text Files (CSV)

  • NIST MatrixMarket
  • MATLAB
  • +
  • IF# Notebook
  • FsLab & Deedle
  • Microsoft Excel
  • numl.net machine learning