Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Scientific Computing in Ruby. RDRC 2016.

Scientific Computing in Ruby. RDRC 2016.

Talk on Scientific Computing in Ruby at Red Dot Ruby Conf 2016, Singapore.

Sameer Deshmukh

June 24, 2016
Tweet

More Decks by Sameer Deshmukh

Other Decks in Programming

Transcript

  1. namaste

    View Slide

  2. Me

    View Slide

  3. Who Am I?

    View Slide

  4. Sameer Deshmukh
    github.com/v0dro
    @v0dro

    View Slide

  5. Incredible India

    View Slide

  6. View Slide

  7. View Slide

  8. View Slide

  9. View Slide

  10. City of Pune.
    Population: 6 million.
    Oxford of the East.

    View Slide

  11. View Slide

  12. Dr. Gopal
    Deshmukh
    Sameer
    Desmukh
    Dr. Hemchandra
    Deshmukh
    Dr. Satish
    Deshmukh

    View Slide

  13. www.soundcloud.com/catkamikazee
    Sameer

    View Slide

  14. Ruby
    Science
    Foundation
    www.sciruby.com
    @sciruby
    @sciruby

    View Slide

  15. View Slide

  16. Scientific
    Computing In
    Ruby

    View Slide

  17. iruby notebook

    View Slide

  18. Browser based Ruby REPL
    for interactive computing.

    View Slide

  19. Runs in your
    browser
    Input cell – accepts
    Ruby code
    Output cell – can
    render HTML/CSS/JS

    View Slide

  20. View Slide

  21. nmatrix

    View Slide

  22. n­dimensional array object.
    Interface Ruby with
    high speed C libraries.

    View Slide

  23. require 'nmatrix'
    n = NMatrix.new(
    [2,2],
    [1,2,3,4],
    dtype: :float32,
    stype: :dense
    )
    n[0,1] # => 2.0

    View Slide

  24. Data Types
    :int8 :float32
    :int16 :float64
    :int32 :complex64
    :int64 :complex128

    View Slide

  25. Storage types
    Dense Dense matrix.
    List Sparse matrix type storing data as a
    linked list.
    Yale Sparse type storing data in the 'New
    Yale' format.

    View Slide

  26. NMatrix C API

    View Slide

  27. nmatrix
    nmatrix­
    atlas
    nmatrix­
    lapacke
    nmatrix­
    fftw
    gsl

    View Slide

  28. nmatrix is coming to jruby!

    View Slide

  29. nyaplot

    View Slide

  30. interactive plotting
    tool for Rubyists.

    View Slide

  31. interactive
    HTML and JavaScript plots
    that can be displayed in your
    browser.

    View Slide

  32. View Slide

  33. Mapnya
    Nyaplot3D
    Bionya
    Map visualizations with inbuilt country charts.
    Three Dimensional interactive plots.
    Biology plots for visualizing relationships of genes.

    View Slide

  34. daru
    (Data Analysis in RUby)

    View Slide

  35. daru ==
    (Hindi)
    ददार

    View Slide

  36. library for
    analysis, cleaning, manipulation and
    visualization
    of data.

    View Slide

  37. Read/write many data sources
    Ephemeral statistics functions
    Works well with 'wild' data
    Data indexing

    View Slide

  38. Acts as glue between other
    SciRuby libraries.

    View Slide

  39. Daru::Vector
    Heterogenous Array that can be indexed on
    any Ruby object.
    Name
    Label(0)
    Label(1)
    Label(2)
    ...
    Label(n-1)

    View Slide

  40. Daru::DataFrame
    2D spreadsheet like data structure indexed by
    rows or columns.
    Col0
    Label(0)
    Label(1)
    Label(2)
    ...
    Label(n-1)
    Col1 Col2 Col(n-1)
    ....

    View Slide

  41. Cool SciRuby Stickers

    View Slide

  42. Thank You
    Red Dot Ruby Conf

    View Slide

  43. I will answer your questions
    in my own childish ways.

    View Slide