Storing data in an open-standard format ensures the data’s long-term readability and reusability, which is an important component of achieving reproducible computing. In this class we will explore a number of common data formats, learn about their structures and show how to access them programmatically. The data formats considered include: CSV (several variants), JSON, XML, Excel and HDF5. The Python and Julia languages will be used in the programming examples.
The Julia language has a unified interface to its plotting functionalities, supported by multiple backends such as plotly and pyplot (matplotlib). We will cover the fundamentals of Julia’s plotting capability, and show the process of creating data visualization from select examples, including interactive and animated plots. Registration required.
The Julia language has a rich and fast-growing ecosystem in the form of open-source packages. We will cover the fundamentals of Julia’s package management system, using either via the REPL (interactive command prompt) or the Pkg package, and show how to manage multiple sets of packages in the user environment. We will also discuss how to organize your Julia code into a package and share with others. Registration required.
This workshop will discuss the basics of MPI (message passing interface), and several distributed-memory parallel numerical computing examples using MPI. The Julia language will be used in the examples. It would be straightforward to translate the Julia examples into other languages, such as C and Fortran, if desired.
This workshop will illustrate using the Julia language in data-driven modeling and computations. More detailed description will be posted here soon.
We will explore the features of the Julia programming language in the context of research computing, and compare it with other scripting languages such as Python and MATLAB. We will also discuss Julia language’s ecosystem, including its standard library, documentation system, unit test, package management and more, from the standpoints of reproducible computational science and modern software engineering.
The Jupyter Notebook is a computing tool that allows users to edit and run Python, R, Julia (and many other programming languages) inside a web browser. Furthermore, it is a powerful tool that allows users to combine live code, text, and visualizations in an interactive, shareable, reproducible document. It has been growing in popularity in…