Ashkan Mirzaee - Page 2

Install software with Spack

23 July 2020

Spack is an open source package manager that simplifies building, installing, customizing, and sharing HPC software stacks. Spack helps installing software with much less efforts. It is a very simple and efficient way for installing packages with cumbersome structures and lots of dependencies. Spack is an open source package manger and developing and maintaining by community of HPC developers.


Introduction to cloud computing

3 February 2020

Cloud computing is the delivery of computing services including servers, storage, databases, networking, software, analytics, and intelligence over the Internet. In this tutorial we will learn how to create and access to a compute engine on Google Cloud and build a Virtual Machine (VM) that could be accessible from anywhere.


Function programming in Python

20 January 2020

For efficiently programming with Python, we need to learn how to write functions. In this article we will be familiar with function programming in Python 3 and learn about some Python’s built-in functions through several examples.


Emacs: a powerful text editor

02 December 2019

A text editor provides an environment to write and edit plain text files. Emacs is one of the best text editors that let us edit and write source codes faster and easier. It might be very challenging to start using any text editors like Emacs, but it is definitely worth to spend some time to learn the first steps. This tutorial provides a list of commands, configurations and features that we need to begin.


Python data structures

30 November 2019

Python is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple approach to object-oriented programming. To learn Python, first we need to learn how Python treats with data. In this article we will learn about data types and structures in Python 3 through several examples.


Virtual environments in Python

17 November 2019

Python applications might use packages and modules that need different requirements. When the requirements are in conflict, installing certain version of a package might leave your application unable to run. The solution for this problem is to create a virtual environment, a self-contained directory tree that contains a Python installation for a particular version of Python, plus a number of additional packages. In this tutorial we will discuss about two major methods to create and manage virtual environments in Python.


GHG emissions reduction by identifying optimal level of co-firing biomass and natural gas in coal-burning power plants

22 October 2019

In this research, an optimization model is developed to identify the optimal amount of electricity to be generated from woody biomass, natural gas, and coal at a candidate set of US power plants. The MILP model minimizes the total cost of generating the required electricity projected to be demanded by the EIA through 2030, with environmental and spatially-explicit woody biomass availability constraints.


Introduction to high-performance computing (HPC)

7 May 2019

When dealing with computational problems, various resource and time limitations could arise difficulties and disrupt the solutions. If we have enough time and resources, we might find the answer. A supercomputer or cluster with high level of performance could help us tackle the problem. This tutorial provides a list of basic scheduling commands, submitting jobs, methods of transferring files from local computers, and installing software on clusters.


Version control with Git

26 April 2019

Git is an open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. This tutorial shows how to install and use Git in a local computer and connect to a remote repository on GitHub or GitLab.