An open-source and easy-to-use software for the comprehensive analysis of grain-size distributions


How to load the grain-size distributions

The first step of analyzing the grain-size distribution is loading them into the software. This procedure may be the most error-prone one because we can not know what’s the layout of your data, only a particular layout of data can be read directly by the program. If you are not sure whether your data meets the requirements, you can generate an artificial dataset by the Dataset Generator module, and see its Dataset sheet for the default layout.

To take an example, we will load an artificial dataset that was generated by our Dataset Generator module, you can download it from here.

Most modules of QGrain have the Load or Load Dataset button/action, by clicking the button or action, you will see a dialog popped up to ask you to select the filename, choose the sheet, and assign the rows and columns. By clicking the Select button in the dialog, a file dialog will be popped up to ask you to select a file. At present, this file could be *.csv, *.xls and *.xlsx formats. If there is no error raised (e.g., the selected file is occupied by another program), the sheet names of Excel files will be read as the options in the Sheet combo box. If you select a *.csv file, there will be only one option in this combo box, that’s the filename.

The screenshot of Dataset Loader's interface

For Excel files, one file can contain multiple sheets, it’s suitable for placing the related but different types of information in different sheets of the same file. For example, the output files of QGrain usually put a README sheet to give a brief description of this file and put the data sheet(s) after this sheet. Here, we need to choose the Dataset sheet. By default, it will load the first row as the grain-size classes, and the first column is used to put the names of samples, grain-size distributions (GSDs) are tight with the classes and names. The default output layout of QGrain is correct, so, just click the Try Load button. If your dataset does not follow this data layout, i.e., it has additional rows or columns, you can change the settings to load them. Considering the complexity, we only support the horizontal layout (i.e., each row is one sample). If your dataset is vertical (i.e., each column is one sample), it’s easy to transform it using other software (e.g. Microsoft Excel).

The loading process will be displayed in the text browser to help users to check the error more easily. The unit of grain-size classes should be $\mu m$, the values should be incremental (i.e., left columns are finer and right columns are coarser), and the interval should be equal in $\phi$ space. If there is a text cell in the row of grain-size classes, it will raise an error. The names of samples should be texts, if they are numbers, they will be converted to texts. The distribution values of each sample should be numerical, and the sum of them should be 1 or 100. Note: if there is an empty cell in the row of distribution, it will raise an error. You can use empty rows to separate samples, but the rows should be fully empty. In addition, please don’t put some dissociative cells out of the range of distributions. Note: although we have written some codes to validate the data, there may still be some omissive errors passed the validation. Please make sure your GSDs are valid.