代写 C++ algorithm math matlab python AM4613b Major Project Version 2019.v1

AM4613b Major Project Version 2019.v1
Project:
Undergrads:
You are required to write and document a program that implements the finite element method for solving the heat equation in two dimensions on a general polygonal domain created using Gmsh.
Grads:
You are required to write and document a program that implements the finite element method for solving general second order, linear DE¡¯s in two dimensions on a polygonal domain created using Gmsh.
More details, requirements and marking criteria:
1. I would prefer for the program to be written in a compiled language, such as C, C++ or Fortan90, however I will accept codes written in Python, Matlab or similar environments (octave) without penalty. Maple or Mathematica is unacceptable.
2. You must document your code both within the code itself and with a 8-10 page written paper.
3. All program files, functions, subroutines etc. must contain a header that documents the purpose of the code, the inputs and the outputs. This is a standard part of creating a usable scientific code.
4. Your program must (compile and) run. If it fails to do either there will be a penalty. You should provide a basic guide on how to compile your code and how to run your code within your write up as a separate section.
5. Your code should use gmsh or an equivalent program to create a mesh of elements for your program. Therefore your code must read in the format used by gmsh!!
6. Your mark will be based on the quality of your code and the quality of your write up, but also
on how general your code is or the number of different types of problems it can be used to solve. You may use pre-written routines or libraries calls in your code, but it will reduce your mark. An ideal project will include only routines written by the student. Students should use their best judgment on what pre-written code to use in any initial version of their project. I recommend using a prewritten routine to solve the linear algebra problem.
7. A code that provides correct answers will receive a better mark than one that does not!
8. I do not want a copy of your executable, but you must submit an electronic copy of all source code. ( See #4 )

Requirements and Marking Criteria specific to your write up:
9. Your project will include a 8-10 page written paper. In this paper you must outline your basic algorithm, and provide appropriate references.
10. The written write up must include a cover page that includes the students name, student number, email address, the date, the course name and my name. (This is because I will keep the project).
11. 12pt font and 1.5 line spacing please and stapled.
12. Equations must be clearly typed with all characters of sufficient size and defined within the text. Latex is a good skill to have.
13. Figures should be well thought out and labelled appropriately with a caption.