ENGGEN 131 Matlab Project
代写oop | 作业project | lab代写 | matlab代写 – 这是一个关于matlab的题目, 主要考察了关于matlab相关的内容,是一个比较经典的题目, 该题目是值得借鉴的lab代写的题目
Submitted code is marked for style (is it well written?), functionality (does it work?) and speed (how long does it take to execute?).
Style marks are awarded based on the eight specified functions. If you submit fewer than eight specified functions it is still possible to earn full marks in the majority of the style sections (with the exceptions being the Function names and Function Headers sections). For example, if all your submitted code is indented correctly, you would get full marks for indentation even if you only submitted a few of the specified functions. It is in your best interests to submit correctly named functions containing function headers for ALL eight functions, even if one or more of your functions doesnt work, as then it is possible to earn full marks for style.
Functionality marks are awarded for each of the eight specified functions. To get the functionality marks associated with a function your code must work EXACTLY as specified in the project document including the number, type(s) and order of any specified inputs/outputs.
The speed marks are awarded based on how fast your PixelDistance, RemoveAction and ActionShot functions execute, when running supplied timing scripts on the lab computers. The timing scripts time how long these functions take to run using various test arrays. Some test timing scripts will be released prior to the due date. To earn the timing marks you must have correct implementations of your timed functions (i.e. if your code executes quickly but does not give you the correct answers you will not earn the timing marks).
Style (12 marks)
Examine the submitted m files for the eight functions and review the following style categories. Select one of the options underneath each heading. The marks awarded for each option are shown in brackets.
When peer reviewing on Aropa remember that if you mark someone down for any style element you need to include some written feedback as to why.
Function names (2)
As specified (2) The eight specified functions are named correctly, using the exact specified names, including the correct spelling and case ( GenerateFrameList, GenerateImageList, ReadImages, RemoveAction, ActionShot, PixelDistance, MedianPixel, MostDistantPixel )
Correct filenames for four to seven of the eight specified function files (1) At least four of the specified functions are named correctly. A function may be lacking a correct name because it was not submitted or it was submitted but the filename and/or function name were not correct.
Correct filenames for three (or fewer) of the eight specified function files (0) Fewer than four of the specified functions are named correctly. A function may be lacking a correct name because it was not submitted or it was submitted but the filename and/or function name were not correct.
Headers for functions (2)
Well written headers for all the eight specified function files (2) There is a well written, easy to understand, header for each of the eight specified function files. The header describes the purpose of the file, including the inputs and outputs.
Well written headers for four to seven of the eight specified function files (1) There is a well written, easy to understand, header which describes the purpose of each function file for between four and seven files (inclusive).
Well written headers for three (or fewer) of the eight specified function files (0). Note a function may lack a well written header for the following reasons;
- The function was not submitted
- The function was submitted but lacks a header entirely
- The function was submitted with a header but it is poorly written and hard to understand (or is missing important information such as a description of the inputs and outputs)
Other comments (2)
Well commented (2) The comments clearly describe the purpose of the code
Commented but not to a great standard (1) The comments use language which is unprofessional and/or are not sufficiently descriptive
None (0) There is no commenting in the code (other than the headers). Functions which contain only a header comment, a function definition line and the end keyword need not have any other comments present, assuming at least some commented code has been written in at least one file.
Indentation (2)
Perfect (2) All of the code is indented correctly according to the standard code conventions
One file incorrectly indented (1) There is one file which contains lines of code that are not correctly indented
Inconsistent (0) There are two or more files which contain lines of code are not correctly indented, according to the standard code conventions
Layout (1)
Code is nicely spaced out (1) Code grouped into logical chunks, as seen in Summary Programs.
Poor layout (0) No blank lines used to group codes in chunks and/or comment lines are hard to read due to being overly long
Variable names (1)
Well chosen (1) All variable names either give a good indication of what the variable is used for, use a sensible abbreviation (with a comment to indicate what is stored in the variable) or follow standard conventions (e.g. using i for l oop variables)
Poorly chosen variable names (0) Some variable names are not easily understood and are not well commented
Code repetition (2)
Lines of code are not unnecessarily repeated (2) Loops and/or functions have been used to avoid unnecessary repetition of lines of code within a function. Variables have not been needlessly duplicated.
One chunk of code repeated (1) There is one chunk of code which should have been written using a loop, that has been done without one (e.g. if four or more lines in a row are identical or similar, you should have used a loop). Alternatively there may be repetition of code from another function (e.g. cutting and pasting several lines of code from another function rather than calling the original function note using just a line or two from a function is ok as that may be more efficient in terms of execution time and also it is expected that ActionShot and RemoveAction will look quite similar – this is fine).
Very similar lines of code repeated (0) There is more than one chunk of code which should have been written using a loop, or made use of an existing function.
Functionality (24 marks)
To test functionality, you will run a supplied master test script. The test script will test each specified function with a range of inputs and compare the outputs against the expected results. This will then generate a mark for each function.
Note that if functions have not been named correctly you may need to manually edit the name in order to be able to use the test script (remember to deduct appropriate marks in the style section if the names dont exactly match).
If a function does not take the specified input type(s) and return the specified output type(s) in the specified order it will fail the tests and they will get zero marks for that function.
The test scripts supplied before the due date will be similar but not necessarily identical to the ones that will be used to mark the project (in particular the marking script may use a range of different elevation arrays).
The following functions will be marked out of 2: GenerateFrameList, MedianPixel
The following functions will be marked out of 3: GenerateImageList, ReadImages, PixelDistance, MostDistantPixel
The following functions will be marked out of 4: RemoveAction ActionShot
GenerateFrameList (2)
Implemented exactly as specified in the project document (2)
Partially implemented, failing some tests but passing at least half of them (1)
It has not been implemented as specified (0)
MedianPixel (2)
Implemented exactly as specified in the project document (2)
Partially implemented, failing some tests but passing at least half of them (1)
It has not been implemented as specified (0)
GenerateImageList (3)
Implemented exactly as specified in the project document (3)
Partially implemented, failing some tests but passing at least two thirds of them (2)
Partially implemented, failing some tests but passing at least one third of them (1)
It has not been implemented as specified (0)
ReadImages (3)
Implemented exactly as specified in the project document (3)
Partially implemented, failing some tests but passing at least two thirds of them (2)
Partially implemented, failing some tests but passing at least one third of them (1)
It has not been implemented as specified (0)
PixelDistance (3)
Implemented exactly as specified in the project document (3)
Partially implemented, failing some tests but passing at least two thirds of them (2)
Partially implemented, failing some tests but passing at least one third of them (1)
It has not been implemented as specified (0)
MostDistantPixel (3)
Implemented exactly as specified in the project document (3)
Partially implemented, failing some tests but passing at least two thirds of them (2)
Partially implemented, failing some tests but passing at least one third of them (1)
It has not been implemented as specified (0)
RemoveAction (4)
Implemented exactly as specified in the project document (4)
Partially implemented, failing some tests but passing at least three quarters of them (3)
Partially implemented, failing some tests but passing at least half of them (2)
Partially implemented, failing some tests but passing at least one quarter of them (1)
It has not been implemented as specified (0)
ActionShot (4)
Implemented exactly as specified in the project document (4)
Partially implemented, failing some tests but passing at least three quarters of them (3)
Partially implemented, failing some tests but passing at least half of them (2)
Partially implemented, failing some tests but passing at least one quarter of them (1)
It has not been implemented as specified (0)
Speed (4 marks)
As well as the marks for individual tasks, there are 4 marks associated with your execution time (as measured using the provided timing script, which uses tic and toc to time your code). Execution time is marked by calling a function a set number of times between calls to tic and toc. In the case of PixelDistance this function is called many, many times inside a loop. Note that your code must also produce the CORRECT output to earn the timing marks (i.e. the functions must have earned full marks for functionality in order for you to be eligible for the respective timing marks)
Overall performance when timing PixelDistance: (1)
Test calls processed in under 1 second (1)
Test calls not processed in under 1 second (0)
Overall performance when timing RemoveAction: (1)
Test calls processed in under 1 second (1)
Test calls not processed in under 1 second (0)
Overall performance when timing ActionShot: (2)
Test call processed in under 1 seconds (2)
Test array processed in 1 to 5 seconds (1)
Test array not processed in under 5 seconds (0)