99爱在线视频这里只有精品_窝窝午夜看片成人精品_日韩精品久久久毛片一区二区_亚洲一区二区久久

合肥生活安徽新聞合肥交通合肥房產(chǎn)生活服務(wù)合肥教育合肥招聘合肥旅游文化藝術(shù)合肥美食合肥地圖合肥社保合肥醫(yī)院企業(yè)服務(wù)合肥法律

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

時間:2025-02-09  來源:合肥網(wǎng)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 
x  1.0 and 0  y  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  x  1.0 and 0  y  1.0). Change the computational domain so that it covers the range
0  x  30.0 m and 0  y  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  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  = 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



 

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

    合肥圖文信息
    急尋熱仿真分析?代做熱仿真服務(wù)+熱設(shè)計優(yōu)化
    急尋熱仿真分析?代做熱仿真服務(wù)+熱設(shè)計優(yōu)化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發(fā)動機性能
    挖掘機濾芯提升發(fā)動機性能
    海信羅馬假日洗衣機亮相AWE  復(fù)古美學(xué)與現(xiàn)代科技完美結(jié)合
    海信羅馬假日洗衣機亮相AWE 復(fù)古美學(xué)與現(xiàn)代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
    合肥機場巴士2號線
    合肥機場巴士2號線
    合肥機場巴士1號線
    合肥機場巴士1號線
  • 短信驗證碼 豆包 幣安下載 AI生圖 目錄網(wǎng)

    關(guān)于我們 | 打賞支持 | 廣告服務(wù) | 聯(lián)系我們 | 網(wǎng)站地圖 | 免責(zé)聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網(wǎng) 版權(quán)所有
    ICP備06013414號-3 公安備 42010502001045

    99爱在线视频这里只有精品_窝窝午夜看片成人精品_日韩精品久久久毛片一区二区_亚洲一区二区久久

          9000px;">

                亚洲国产高清aⅴ视频| 日韩成人一区二区| 欧美精品一区视频| 日韩免费视频一区二区| 亚洲免费在线看| 成人av网站免费观看| 欧美一区二区三区在线观看视频| 亚洲欧美另类久久久精品| 国产一区啦啦啦在线观看| 91.麻豆视频| 青青草成人在线观看| 欧美一区二区精品在线| 日韩黄色片在线观看| 欧美一级电影网站| 国内久久精品视频| 中文字幕 久热精品 视频在线| 懂色av一区二区三区蜜臀| 中文字幕一区二区视频| 色婷婷亚洲婷婷| 美国十次综合导航| 国产精品狼人久久影院观看方式| 91久久精品一区二区三| 久久国产免费看| 中文字幕欧美三区| 欧美日韩另类一区| 美国欧美日韩国产在线播放| 国产欧美一区二区精品秋霞影院 | 久久精品国产一区二区三区免费看| 久久久久久免费网| 8v天堂国产在线一区二区| 99国产一区二区三精品乱码| 毛片av一区二区| 天天操天天色综合| 中文字幕一区二区三区在线播放| 日韩欧美不卡在线观看视频| 欧美自拍偷拍午夜视频| 色婷婷亚洲精品| 在线观看免费成人| 午夜精品久久久久久久蜜桃app| 欧美一区午夜视频在线观看| 99国产精品久| 91在线观看一区二区| 不卡一区二区在线| 国产精品亚洲一区二区三区妖精| 国产毛片一区二区| 日韩高清一区在线| 精品一区二区三区视频在线观看 | 国产精品久久久久久久久免费相片| 91精品国产综合久久婷婷香蕉| 欧美日韩电影在线| 欧美日韩国产系列| 91成人免费电影| 99久久精品99国产精品| 成人av电影免费观看| aaa欧美色吧激情视频| 欧美丝袜第三区| 日韩无一区二区| 久久久99免费| 一区二区三区精品视频| 免费精品视频在线| 成人激情av网| 欧美日韩一区 二区 三区 久久精品 | 午夜视频一区在线观看| 免费国产亚洲视频| 欧美日韩国产不卡| 中文字幕五月欧美| 国产一区二区久久| 欧美人与禽zozo性伦| 亚洲综合免费观看高清完整版在线| 精品夜夜嗨av一区二区三区| 91黄色免费版| 久久综合久久综合亚洲| 免费观看成人鲁鲁鲁鲁鲁视频| 91尤物视频在线观看| 久久久国际精品| 国产不卡一区视频| 久久久久久**毛片大全| 国产成人亚洲综合a∨婷婷| 欧美日韩免费一区二区三区 | 91免费看视频| 中文字幕欧美一| www.在线欧美| 国产精品第四页| 色噜噜狠狠成人网p站| 中文字幕日韩一区| 91麻豆精品一区二区三区| 亚洲欧洲色图综合| 91在线看国产| 从欧美一区二区三区| 欧美视频一区二区三区四区| 欧美在线高清视频| 国产婷婷色一区二区三区| 91视频精品在这里| 成人激情小说网站| 成人av手机在线观看| 国产精品色婷婷久久58| 色狠狠av一区二区三区| 一区二区免费在线播放| 欧美videossexotv100| 国产精品夜夜爽| 亚洲伊人色欲综合网| 精品欧美一区二区三区精品久久| 国产91丝袜在线播放九色| 水蜜桃久久夜色精品一区的特点| 久久久久综合网| 粉嫩在线一区二区三区视频| 日韩综合在线视频| 7777精品伊人久久久大香线蕉完整版| 国产成人av影院| 国产成人午夜精品5599| 成人免费的视频| 91麻豆6部合集magnet| 91在线国产观看| 一本色道久久综合狠狠躁的推荐| 成人av电影在线播放| 91国内精品野花午夜精品| 在线一区二区三区四区| 欧美电影在哪看比较好| 日韩西西人体444www| 久久夜色精品一区| 亚洲免费三区一区二区| 亚洲bdsm女犯bdsm网站| 久久99精品视频| 欧美怡红院视频| 国产欧美日产一区| 一级日本不卡的影视| 欧美成人猛片aaaaaaa| 精品奇米国产一区二区三区| 婷婷一区二区三区| 欧美丰满高潮xxxx喷水动漫 | 欧美高清视频www夜色资源网| 欧美大片拔萝卜| 亚洲第一成年网| 成人亚洲一区二区一| 欧美在线free| 日本一区二区久久| 免费成人小视频| 欧美三级乱人伦电影| 中文字幕在线免费不卡| 日本三级韩国三级欧美三级| 91福利在线播放| 亚洲欧美偷拍卡通变态| 不卡视频一二三四| 久久免费视频色| 色综合天天综合给合国产| 午夜欧美视频在线观看| 亚洲人成网站精品片在线观看| 国产一区二区按摩在线观看| 91精品国产91久久综合桃花| 日本欧美韩国一区三区| 91精品国产色综合久久不卡蜜臀 | 午夜精品福利视频网站| 国产成人午夜电影网| 久久综合久久99| 肉丝袜脚交视频一区二区| 国产精品99久久久久久似苏梦涵| 26uuu色噜噜精品一区| 国产成人av电影免费在线观看| 亚洲精品一线二线三线无人区| 捆绑调教一区二区三区| 亚洲四区在线观看| 欧美精品亚洲二区| 色av成人天堂桃色av| 韩国一区二区视频| 日产国产高清一区二区三区| 亚洲一区二区三区中文字幕在线| 国产精品免费视频观看| 一本色道久久加勒比精品| 中日韩av电影| 欧美日韩国产美| 另类综合日韩欧美亚洲| 99r国产精品| 日韩黄色在线观看| 亚洲视频一区在线| 久久蜜桃一区二区| 欧美亚洲一区二区在线| 免费久久99精品国产| 国产三级一区二区| 91精品国产综合久久久久久漫画| 成人天堂资源www在线| 国模一区二区三区白浆| 久久精品国产一区二区三区免费看| 91精品国产aⅴ一区二区| 欧美三级在线播放| 欧美日韩一区三区四区| 欧美色欧美亚洲另类二区| 欧美影院午夜播放| 欧美性生活久久| 欧美日韩一区在线| 一本久久a久久精品亚洲 | 国产欧美精品一区二区三区四区| 日韩精品一区二区三区四区视频| 欧美理论电影在线| 欧美一区二区三区播放老司机| 欧美一区二区三区日韩视频| 日韩免费看的电影| 精品欧美乱码久久久久久1区2区| 久久丝袜美腿综合| 国产精品麻豆网站| 天天综合日日夜夜精品|