Skip to content
Permalink
main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
# Matlab code for 5011CEM 21/22
This repository contains the code files for 5011CEM, delivered in semester 2 starting January 2022.
See the "Post CW Note" at the bottom of this README for a review of the code in this repository.
### Project Folders
- `Common Files` contains code that is required by multiple files.
- `Loading` contains files required to load the data.
- `Processing` holds the main functions for Sequential and Parallel processing.
- `Testing` has functions for automated testing of parallel and sequential processing and includes two subdirectories:
`TestDatatypes` contains code which tests data for NaN and Text datatypes.
`GenerateTestData` holds files which will generate NetCDF files with errors and save them in the `ModelTesting` directory.
- `Graphing` includes code related to the plotting of outputs from the processing and automated tests.
- `Comparison` contains scripts to compare parallel and sequential processing and plot results onto a graph.
- `Other` holds files related to code planning and other files that are not related to the execution of the code.
### Files Ignored From Git
- `Model` is a space for data which needs processing.
**NOTE: Data files must be placed there manually once cloned.**
- `ModelTesting` is a space for data files which have been generated using code.
- `Logs` stores any .log files generated from the code.
### Required Files
The **only** required file is **`o3_surface_20180701000000.nc`** which should be stored in the **`Model`** directory once cloned. Erroneous NetCDF files used for testing are generated using this file.
### Installation Instructions
Below are instructions on how to clone and prepare this repository for the project.
The commands are valid for a system running **Windows 10** using **git bash**.
**MATLAB R2021a** is required to install and run the code and the `/bin` directory must be added to the `PATH` system variable (Example: `E:\Program Files\MATLAB\R2021a\bin`)
1. Navigate to the Documents/MATLAB folder and open a terminal
You can use the `Git Bash Here` option in the context menu to do this.
2. Clone the repository
Copy and paste `git clone https://github.coventry.ac.uk/5011CEM-2122JanMay/5011CEM2022_masudm6.git --depth 1` into the terminal.
The option `--depth 1` reduces the size of the download from ~300MB to ~60KB.
3. Switch into the newly cloned repository's directory
Type `cd 5011CEM2022_masudm6/` to change the current directory.
4. Open MATLAB from this directory
Type `matlab` into the terminal.
5. Paste the file `o3_surface_20180701000000.nc` into the `Model` directory.
6. (Optional) Generate the Text and NaN testing files ready for use
Run `CreateTestData_Text` and `CreateTestData_NaN` in the MATLAB command window.
MATLAB will now load all files ready for use using the `startup.m` script.
## Post CW Note
This was my first time using gantt charts and SMART targets, and even MATLAB, but they were all necessary for the coursework.
In the end, I grew used to how they work, but still did not enjoy using them.
My final grade for this report was 75%, based off of the coursework brief provided.
I learned a lot of additional things during this coursework which were not required of me, such as using GitHub issues, pull requests and projects. This improved my project management and organisation skills and motivated me to work more frequently.
Using MATLAB software was difficult at the start, but became easier over time as I embarked on personal projects, making use of some of the toolboxes (e.g. Computer Vision Toolbox). The documentation for MATLAB (MATLAB Help Center) was especially useful for this project as it is neatly organised. This boosted my "documentation reading" skills as a result.