加勒比久久综合,国产精品伦一区二区,66精品视频在线观看,一区二区电影

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

ECM3446代做、代寫Python/C++編程
ECM3446代做、代寫Python/C++編程

時間:2025-02-09  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



ECM3446: CA
This continuous assessment is for the ECM3446 version of the High Performance Computing
module. If you are an undergraduate student you should follow these in- structions. If you are a
student on an MSc programme please refer to the “ECMM461: Continuous assessment 1”
instructions instead.
1 The Atmospheric Boundary Layer
The part of the Earth’s atmosphere nearest the surface is known as the “Atmospheric Boundary
Layer”, and in this part of the atmosphere the wind speed increases with height. This causes
material emitted from a chimney to be advected at di↵erent horizontal speeds depending on its
height. Figure 1 shows material from a chimney being advected by the wind.
Figure 1: Material emitted from a chimney being advected by a horizontal wind
The wind in the Atmospheric Boundary Layer can be approximated as a horizontal velocity which
depends only on the height (z) and zero vertical velocity. The horizontal velocity as a function of height
vx(z) can be represented by a logarithmic profile
(1)
where u is a parameter called the “friction velocity”, z0 is a parameter called the “roughness
length”, and = 0.41 is a constant called Von K´arm´an’s constant.
2 The assignment
In this assignment you will calculate a numerical solution to the advection equation to simulate the
movement of a cloud of material in the atmospheric boundary layer. There are four parts to this assignment:
• Task 1: For the first part of this assignment you will parallelise a program which calculates a
numerical solution to the 2D advection equation. You have been provided with the program
1
-
-ECM3446: CA
and you will need to parallelise it using OpenMP. This part of the assignment is described
in Section 2.1.
• Task 2: For the second part of this assignment you will modify the program to change
the parameters of the test problem into a more realistic configuration. This is described in
Section 2.2.
• Task 3: For the third part of this assignment you will add a logarithmic velocity profile to
the program. This is described in Section 2.3.
• Task 4: For the fourth part of the assignment you will calculate the horizontal profile of the
advected material by calculating a vertical average. This is described in Section 2.4.
This assignment assesses the following Intended Learning Outcomes:
• Demonstrate skills in parallel processing algorithm design and the practical implementation
of such algorithms
• Demonstrate an awareness of numerical e↵ects and the influence of floating point number
representation in high-performance computing applications.
• Interpret an informal requirement specification
• Systematically analyse information and make appropriate design choices
2.1 Task 1: Parallelising the program
The advection equation for a two-dimensional scalar field u(x, y) is
(2)
where vx and vy are the velocities in the x and y direction, respectively. You have been
provided with a C program which calculates a numerical solution to the advection equation
for a two- dimensional scalar field u(x, y) using finite di↵erence approximations. The program
uses one-sided di↵erences to calculate the spatial derivatives
dy (4)
where ui,j is the value of the scalar field u(x, y) at grid point (i, j), dx is the spacing of grid points
in the x direction and dy is the spacing of grid points in the y direction. The solution starts
from specified initial conditions at time t = 0 and is updated from time t to time t + t using
forward-Euler time steps
t (5)
The program uses 1000 ⇥ 1000 grid points covering a unit square computational domain 0 &#***3;
x &#***3; 1.0 and 0 &#***3; y &#***3; 1.0. The initial conditions are a Gaussian given by the expression
(6)
The Gaussian is centred at x0 = 0.1, y0 = 0.1 and has a width x = y = 0.03. The boundary
conditions are u = 0 on all boundaries. The program calculates 1500 time steps, and the time step
size is calculated from the Courant condition with a CFL number of 0.9. The velocities in the x
and y directions are vx = 0.01 and vy = 0.01 respectively.
The first part of the assignment is to parallelise the program provided using OpenMP. There
are 10 loops or loop nests (a loop over j inside a loop over i) in the program and these have been
identified with a comment of the form
2ECM3446: CA
/* LOOP N */
where N is an integer between 1 and 10 inclusive. For each loop or loop nest you should decide
whether it can be correctly parallelised by adding an OpenMP directive:
• If the loop can be correctly parallelised then you should parallelise it by adding an OpenMP
directive, ensuring that all variables are correctly scoped. You do not need to scope variables
which have the const qualifier.
• If the loop cannot be parallelised then you should add a comment in the program to say that
the loop cannot be parallelised and explain why.
To build the serial program in ISCA use the command
gcc -o advection2D -std=c99 advection2D.c -lm
To build the program with OpenMP enabled in ISCA use the command
gcc -fopenmp -o advection2D -std=c99 advection2D.c -lm
A gnuplot script which plot the final values of u(x, y) has been provided.
The parallelised version of the program must produce exactly the same output as
the original program.
2.2 Task 2: Modifying the calculation
In this section you will modify the example program to change the test problem so that it more
closely resembles a cloud of material emitted from a chimney. This requires changing the size of
the computational domain, the initial conditions, the velocities and the number of time steps.
In the following instructions distances are measured in metres (m) and velocities in metres per
second (m/s).
• The test problem uses a computational domain which is a unit square (it covers the range
0 &#***3; x &#***3; 1.0 and 0 &#***3; y &#***3; 1.0). Change the computational domain so that it covers the range
0 &#***3; x &#***3; 30.0 m and 0 &#***3; y &#***3; 30.0 m
• For this calculation we require the Gaussian to be on the left hand side of the domain and
vertically centred. Change the centre of the Gaussian to x0 = 3.0 m, y0 = 15.0 m
• The cloud of material will have a larger vertical extent than horizontal extent. This will be
represented by a Gaussian which has di↵erent widths in the x and y directions. Change the
widths of the Gaussian specified in the initial conditions to x = 1.0 m and y = 5.0 m
• The material in the atmospheric boundary layer advects horizontally but not vertically.
Change the horizontal velocity to vx = 1.0 m/s and change the vertical velocity to vy = 0.
• Change the maximum number of time steps to 800 so that the material does not advect out
of the computational domain.
After you have made these changes re-compile and re-run the program. If necessary update
the OpenMP directives to ensure that the program produces identical results with and without
OpenMP.
Now plot the initial and final values of u(x, y). The initial values are in the file initial.dat
and the final values are in the file final.dat. You can use the example gnuplot script provided
but you will need to change the axis limits to match the new computational domain size. Plots of
the initial and final values of u(x, y) are shown in Figure 2 for comparison.
3ECM3446: CA
Figure 2: Initial (left) and final (right) values of u(x, y) from the calculation in Section 2.2
2.3 Task 3: Adding vertical shear
In this section you will modify the program so that the horizontal velocity varies with height
according to the logarithmic profile given in equation 1. The logarithmic profile should only be
used if z is greater than the roughness length z0. If z > z0 calculate the horizontal velocity using
equation 1, and if z &#***3; z0 set the horizontal velocity to zero. The parameters of the profile should
be set to u⇤ = 0.2 m/s, z0 = 1.0 m and &#***3; = 0.41.
In the program the variable y represents the height z in equation 1. The computational domain,
the initial conditions and the number of time steps should be kept at the values specified in the
previous section (Section 2.2).
Modify the horizontal velocity as described above and re-run the program. If necessary update
the OpenMP directives to ensure that the program produces identical results with and without
OpenMP.
Now plot the final values of u(x, y) (the initial values are the same as in the previous
section). Plots of the initial and final values of u(x, y) are shown in Figure 3.
Figure 3: Initial (left) and final (right) values of u(x, y) from the calculation in Section 2.3
2.4 Task 4: Calculating the vertically averaged distribution
In this last section you should calculate the vertically averaged distribution of u(x, y) at the end
of the calculation in Section 2.3. The vertical average should cover the whole vertical domain but
should not include the boundary values. The code you add to the program does not need to be
4ECM3446: CA
parallelised. Plot the vertically averaged values of u as a function of x using a line
graph.
3 Deliverables
The deliverables for this assignment are the source code for the program with your modifications,
and the four plots showing your results:
1. Source code for the final version of the program. The program should include the OpenMP
directives added in Section 2.1 with any changes required to ensure the modified program
continues to work correctly. The computational domain, the initial conditions, the velocities
and the number of time steps should be set to the values used in Section 2.3.
2. Four plots showing the output from running the program. The required plots are:
• A plot of the initial conditions u(x, y) from Section 2.2
• A plot of the final values of u(x, y) from Section 2.2
• A plot of the final values of u(x, y) from Section 2.3
• A plot showing the vertically averaged profile of u from Section 2.4
The plots may be generated using the gnuplot script provided, or alternative plotting software
of your choice provided the data values in the plot are clearly represented. Your plots should
be delivered as PNG or PDF files.
The deliverables should uploaded to ELE a single zip or tar file containing the
source code for the final version of the program, and the four plots. The deadline for
submission is 12 noon 20 February 2025.
4 Mark scheme
A total of 100 marks are available for this assignment:
1. Task 1: Parallelising the program (30 marks)
(a) For each of the 10 loops or loop nests identified in the program there are two marks to
be awarded according to the following criteria:
• The loop has been correctly identified as either one that can be parallelised or one
that cannot be parallelised (1 mark)
• If the loop can be parallelised then an appropriate OpenMP directive has been
added which unambiguously and correctly scopes all variables. Variables with the
const qualifier do not need to be scoped (1 mark)
OR
• If the loop cannot be parallelised then a comment has been added with a correct
explanation of why the loop cannot be parallelised (1 mark).
(b) An additional 10 marks are awarded if the parallelised program produces results which
exactly match the original serial program.
2. Task 2: Modifying the calculation (20 marks)
10 marks are awarded for correctly modifying the computational domain, the initial conditions
 and the number of time steps, as specified in Section 2.2. 5 marks are awarded for the
plot of the initial conditions and 5 marks are awarded for the plot of the final results.
3. Task 3: Adding vertical shear (25 marks)
20 marks are awarded for correctly modifying the velocity profile as specified in Section 2.3.
5 marks are awarded for the plot of the final results.
5ECM3446: CA
4. Task 4: Calculating the vertically averaged distribution (25 marks)
20 marks are awarded for correctly modifying the program to calculate the vertically averaged
distribution of u as specified in Section 2.4. 5 marks are awarded for the plot of the final
results.


請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp



 

掃一掃在手機打開當前頁
  • 上一篇:代寫CCBS4020、代做c/c++,Python設計程序
  • 下一篇:代寫INT2067、代做Python編程語言
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    2025年10月份更新拼多多改銷助手小象助手多多出評軟件
    2025年10月份更新拼多多改銷助手小象助手多
    有限元分析 CAE仿真分析服務-企業/產品研發/客戶要求/設計優化
    有限元分析 CAE仿真分析服務-企業/產品研發
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
  • 短信驗證碼 目錄網 排行網

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    美女爽到呻吟久久久久| 日韩成人在线一区| 91精品在线观看国产| 亚洲天堂一区二区三区四区| 麻豆视频在线观看免费网站黄| 欧美sss在线视频| 国产欧美日韩| 日精品一区二区| 日韩欧美视频| 在线视频日韩| 久久一区二区三区电影| 秋霞一区二区| 成人永久在线| 久久在线精品| 国产精成人品2018| 蜜桃视频在线观看一区| 91久久高清国语自产拍| 成人午夜网址| 久久gogo国模啪啪裸体| 国内精品久久久久久久影视蜜臀 | 日韩亚洲精品在线观看| 欧美日本免费| 日韩综合在线视频| 亚洲精品第一| 日韩欧美不卡| 国产福利电影在线播放| 久久综合中文| 99伊人成综合| jlzzjlzz亚洲女人| 91精品国产自产在线观看永久∴ | 日韩影视高清在线观看| 欧美激情 亚洲a∨综合| 美女视频一区在线观看| 日韩和的一区二在线| 色综合久久网| 91欧美日韩| 久久久久看片| 日韩av专区| 人人爽香蕉精品| 日av在线不卡| 国产精品成久久久久| 视频在线在亚洲| 妖精视频成人观看www| 伊人成年综合电影网| 不卡视频在线| 日韩香蕉视频| 免费日韩视频| 蜜臀av一区二区三区| 日韩在线观看一区二区| 老司机午夜免费精品视频 | 黄色免费成人| 亚洲免费精品| 噜噜爱69成人精品| 在线国产一区| 婷婷亚洲图片| 天天影视天天精品| 日韩视频一区| 日韩精品一二三四| 免费成人在线网站| 午夜av不卡| 国产美女久久| 日本伊人午夜精品| 亚洲一区二区日韩| 欧美激情在线精品一区二区三区| 99精品国产九九国产精品| 综合欧美精品| 精品国产亚洲一区二区三区大结局 | 欧美a级片一区| 亚洲一区二区三区免费在线观看| 免费观看在线色综合| 中文字幕色婷婷在线视频| 欧美日韩精品免费观看视完整| 成人在线观看免费播放| 亚洲精品乱码久久久久久蜜桃麻豆| 久久视频在线观看| 日韩av字幕| 久久精品av| 99亚洲一区二区| 日韩精品久久| 日韩精品电影在线观看| 国产精区一区二区| 高清日韩中文字幕| 免费视频亚洲| 麻豆理论在线观看| 一区二区精品| 日韩精品成人| 天天插综合网| 伊人久久国产| 亚洲精品系列| 福利在线一区| 亚洲一区亚洲| 成人久久网站| 亚洲人成网www| 999精品在线| 色777狠狠狠综合伊人| 欧美在线二区| 精品入口麻豆88视频| 免费观看久久av| 中文av在线全新| 国产一区二区三区免费在线| 欧美三级第一页| 最新国产乱人伦偷精品免费网站| 日韩电影二区| 国产精品一区高清| 91精品天堂福利在线观看| 国产精品videosex性欧美| 日韩精品成人一区二区三区| 亚洲宅男一区| 亚洲一区久久| 麻豆国产精品视频| 成人免费电影网址| www.色在线| 国产精选一区| 九九久久精品| 久久婷婷五月综合色丁香| 三级欧美日韩| 天堂成人国产精品一区| 乱一区二区av| 91精品蜜臀一区二区三区在线| av中文在线资源库| 成年永久一区二区三区免费视频| 色综合久久中文| 小黄鸭精品aⅴ导航网站入口| 国产欧美激情| 中文欧美日韩| 亚洲乱亚洲高清| 成人动漫免费在线观看| 成人国产精选| 欧美亚洲tv| 日本在线精品| 免费精品一区二区三区在线观看| 老司机精品导航| 成人动漫视频在线观看| 最新日韩欧美| www.成人| 国产精品日韩久久久| 亚洲国产一区二区三区a毛片| 91精品综合| 欧美伊人影院| 亚洲不卡av不卡一区二区| 成人国产一区| 少妇一区二区三区| 欧美一区二区三区久久精品| 精品国产一区探花在线观看 | 99re8这里有精品热视频8在线| 免费在线看成人av| 日韩中出av| 亚洲美女炮图| 成人在线亚洲| 欧美一区影院| 一区在线播放| 成人午夜888| 欧美h版在线| 欧美视频不卡| 久久精品国产77777蜜臀| 久久社区一区| 欧美国产日本| 石原莉奈在线亚洲二区| 日韩电影在线一区二区三区| 中文在线а√在线8| 欧美午夜寂寞| 麻豆精品视频在线| 日韩主播视频在线| 日韩成人一级大片| 欧美日韩尤物久久| 久久裸体网站| 国产精品白丝久久av网站| 蜜桃视频在线观看一区二区| 精品久久久久久久久久岛国gif| 伊人久久av| 欧美日韩精品在线一区| 中文精品久久| 日韩欧美高清在线播放| 91精品国产调教在线观看| 欧美精品国产| 久久爱91午夜羞羞| 久久一区二区三区喷水| 国产精品亚洲欧美一级在线| 国产在线美女| 欧美一级精品片在线看| 国产欧美日韩视频在线| 蜜桃精品在线| 国产农村妇女毛片精品久久莱园子| 欧美美乳视频| 99精品国自产在线| 亚洲美女网站| 精品久久久中文字幕| 欧美日韩在线大尺度| 中文在线免费视频| 婷婷久久一区| 一区二区三区亚洲变态调教大结局 | 免费永久网站黄欧美| 丝袜美腿高跟呻吟高潮一区| 精品国精品国产自在久国产应用 | 久久人人99| 精品国产亚洲一区二区三区大结局| 狠狠久久综合| 成人一级毛片| 不卡在线一区| 精品99在线|