当前位置:文档之家› 北航并行计算矩阵相乘作业

北航并行计算矩阵相乘作业

北航并行计算矩阵相乘作业
北航并行计算矩阵相乘作业

矩阵相乘并行实现

1、算法描述:

设有如下矩阵相乘:

C=A×B

其中A,B分别是m×k和k×n矩阵,C是m×n矩阵。若处理器个数为p,且它们的编号依次是0,1,…,p-1,则设可将矩阵A、B、C分成p个大小为mxm的子

块,其中A=(Aij)m

×m ,B=(Bij)m

×m

,和C=(Cij)m

×m

,其中A?ij,Bij和Cij是n×n矩

阵。同时假设和。

定义对角块矩阵,则

其中,。利用此关系式,将节点编号从一维映射到二维,数据,,存放在中,可得到下面的在处理机

结点上的算法。该算法数据交量

算法流程如下:

流程图如下所示:

2、程序代码:

#include

#include

#include

#include

#include

#include

float **A, **B, **C;

float *a, *b, *c, *tmp_a, *tmp_b;

int dg=1000, dl, dl2,p, sp;

int my_rank, my_row, my_col;

MPI_Status status;

int get_index(int row, int col, int sp)

{

return ((row+sp)%sp)*sp + (col+sp)%sp; }

void random_A_B()

{

int i,j;

srand((unsigned int)time(NULL));

for(i=0; i

for(j=0; j

{

A[i][j] = rand();

B[i][j] = rand();

C[i][j] = 0.0;

}

}

void scatter_A_B()

{

int i,j,k,l;

int p_imin,p_imax,p_jmin,p_jmax;

for(k=0; k

{

p_jmin = (k % sp ) * dl;

p_jmax = (k % sp + 1) * dl-1;

p_imin = (k - (k % sp))/sp * dl;

p_imax = ((k - (k % sp))/sp +1) *dl -1;

l = 0;

for(i=p_imin; i<=p_imax; i++)

{

for(j=p_jmin; j<=p_jmax; j++)

{

tmp_a[l] = A[i][j];

tmp_b[l] = B[i][j];

l++;

}

}

if(k==0)

{

memcpy(a, tmp_a, dl2 * sizeof(float));

memcpy(b, tmp_b, dl2 * sizeof(float));

} else

{

MPI_Send(tmp_a, dl2, MPI_FLOAT, k, 1, MPI_COMM_WORLD);

MPI_Send(tmp_b, dl2, MPI_FLOAT, k, 2, MPI_COMM_WORLD);

}

}

}

void init_alignment()

{

MPI_Sendrecv(a, dl2, MPI_FLOAT, get_index(my_row,my_col-my_row,sp), 1,

tmp_a, dl2, MPI_FLOAT, get_index(my_row,my_col+my_row,sp), 1,

MPI_COMM_WORLD, &status);

memcpy(a, tmp_a, dl2 * sizeof(float) );

MPI_Sendrecv(b, dl2, MPI_FLOAT, get_index(my_row-my_col,my_col,sp), 1,

tmp_b, dl2, MPI_FLOAT, get_index(my_row+my_col,my_col,sp), 1,

MPI_COMM_WORLD, &status);

memcpy(b, tmp_b, dl2 * sizeof(float) );

}

void main_shift()

{

int i,j,k,l;

for(l=0; l

{

for(i=0; i

for(j=0; j

for(k=0; k

c[i*dl+j] += a[i*dl+k]*b[k*dl+j];

MPI_Send(a , dl2, MPI_FLOAT, get_index(my_row, my_col-1, sp), 1, MPI_COMM_WORLD);

MPI_Recv(a , dl2, MPI_FLOAT, get_index(my_row, my_col+1, sp), 1, MPI_COMM_WORLD, &status);

MPI_Send(b , dl2, MPI_FLOAT, get_index(my_row-1, my_col, sp), 1, MPI_COMM_WORLD);

MPI_Recv(b , dl2, MPI_FLOAT, get_index(my_row+1, my_col, sp), 1, MPI_COMM_WORLD, &status);

}

}

void collect_C()

{

int i,j,i2,j2,k;

int p_imin,p_imax,p_jmin,p_jmax;

for (i=0;i

for(j=0;j

C[i][j]=c[i*dl+j];

for (k=1;k

{

MPI_Recv(c, dl2, MPI_FLOAT, k, 1, MPI_COMM_WORLD, &status);

p_jmin = (k % sp ) *dl;

p_jmax = (k % sp + 1) *dl-1;

p_imin = (k - (k % sp))/sp *dl;

p_imax = ((k - (k % sp))/sp +1) *dl -1;

i2=0;

for(i=p_imin; i<=p_imax; i++)

{

j2=0;

for(j=p_jmin; j<=p_jmax; j++)

{

C[i][j]=c[i2*dl+j2];

j2++;

}

i2++;

}

}

}

void print(float **m,char *str)

{

int i,j;

printf("%s",str);

for(i=0;i

{

for(j=0;j

printf("%15.0f ",m[i][j]);

printf("\n");

}

printf("\n");

}

int main(int argc, char *argv[])

{

int i;

MPI_Init(&argc, &argv);

MPI_Comm_size(MPI_COMM_WORLD, &p);

MPI_Comm_rank(MPI_COMM_WORLD, &my_rank);

sp = sqrt(p);

if (sp*sp != p)

{

if (my_rank == 0)

printf("Number of processors is not a quadratic number!\n");

MPI_Finalize();

exit(1);

}

if (argc != 2)

{

if (my_rank == 0)

printf("usage: mpirun -np ProcNum cannon MatrixDimension\n");

MPI_Finalize();

exit(1);

}

dg = atoi(argv[1]);

dl = dg / sp;

dl2 = dl * dl;

my_col = my_rank % sp ;

my_row = (my_rank-my_col) / sp ;

a = (float *)malloc( dl2 * sizeof(float) );

b = (float *)malloc( dl2 * sizeof(float) );

c = (float *)malloc( dl2 * sizeof(float) );

for(i=0; i

c[i] = 0.0;

tmp_a = (float *)malloc( dl2 * sizeof(float) );

tmp_b = (float *)malloc( dl2 * sizeof(float) );

if (my_rank == 0)

{

A = (float **)malloc( dg * sizeof(float*) );

B = (float **)malloc( dg * sizeof(float*) );

C = (float **)malloc( dg * sizeof(float*) );

for(i=0; i

{

A[i] = (float *)malloc( dg * sizeof(float) );

B[i] = (float *)malloc( dg * sizeof(float) );

C[i] = (float *)malloc( dg * sizeof(float) );

}

random_A_B();

scatter_A_B();

} else

{

MPI_Recv(a, dl2, MPI_FLOAT, 0 , 1, MPI_COMM_WORLD, &status);

MPI_Recv(b, dl2, MPI_FLOAT, 0 , 2, MPI_COMM_WORLD, &status);

}

init_alignment();

main_shift();

if(my_rank == 0)

{

collect_C();

print(A,"random matrix A : \n");

print(B,"random matrix B : \n");

print(C,"Matrix C = A * B : \n");

} else

{

MPI_Send(c,dl2,MPI_FLOAT,0,1,MPI_COMM_WORLD);

}

MPI_Barrier(MPI_COMM_WORLD);

MPI_Finalize();

return 0;

}

2015北航工程力学考博(航空科学与工程学院)参考书、历年真题、报录比、研究生招生专业目录、复试分数线

2015北京航空航天大学工程力学考博(航空科学与工程学院)参考 书、历年真题、报录比、研究生招生专业目录、复试分数线 一、学院介绍 航空科学与工程学院(以下简称航空学院)是北航最具航空航天特色的学院之一,主要从事大气层内各类航空器(飞机、直升机、飞艇等)、临近空间飞行器、微小型飞行器等的总体、气动、结构、强度、飞行力学与飞行安全、人机环境控制、动力学与控制等方面的基础性、前瞻性、工程性以及新概念、新理论、新方法研究与人才培养工作。 航空学院前身是清华大学航空系,是1952年北航成立时最早的两个系之一,当时称飞机系(设飞机设计和飞机工艺专业),1958年更名为航空工程力学系,1970年更名为五大队,1972年更名为五系,1989年定名为飞行器设计与应用力学系,2003年成立航空科学与工程学院。早期的航空学院荟萃了一批当时国内著名的航空领域的专家,如屠守锷、王德荣、陆士嘉、沈元、王俊奎、吴礼义、张桂联、徐鑫福、徐华舫、何庆芝、伍荣林、史超礼、叶逢培等教授,屠守锷院士(两弹一星元勋)是首任系主任,他们为本院发展奠定了坚实基础。在北航发展史上,航空学院不断输出专业和人才,先后参与组建七系、三系、十四系、宇航学院、飞行学院、无人机所、土木工程系、交通学院等院系。 自建校以来60多年,学院已培养本科毕业生万余人,硕士毕业生两千余人,博士毕业生近千人。毕业生中涌现出王永志、戚发韧、崔尔杰、乐嘉陵、王德臣、张福泽、王浚、钟群鹏、陶宝祺、郭孔辉、赵煦、唐西生、郭孔辉、唐长红等14位两院院士,改革开放后毕业生中也涌现出了“航空报国英模”/原沈飞董事长罗阳、中国商飞董事长金壮龙、第十一届“中国十大杰出青年”/原“神舟”飞船总指挥袁家军、歼15等飞机型号总师孙聪、C919大型客机总师吴光辉以及李玉海、耿汝光、姜志刚、屠恒章、孙聪、方玉峰、王永庆、孙兵、曲景文、李东、余后满、傅惠民、秦福光、陈元先、宋水云、吴宗琼、陈敏、高云峰等一批航空航天院所的年轻总师、总指挥、省市及部门负责人、民营企业家,为我国航空航天、国防事业及国家发展做出突出贡献。 学院作为主力曾先后研制成功我国第一架轻型旅客机“北京一号”、国内第一架高空高速无人侦察机、靶机、蜜蜂系列轻型飞机和第一架共轴式双旋翼直升机等,创造了多项全国第一。学院参与了所有国家重点航空型号以及大部分导弹型号的攻关工作。60多年来,学院取得了上百项国家和省部级教学与科研成果,其中国家级奖20多项。 学院师资力量雄厚,在北航乃至全国同类及相近学院中名列前茅。学院有教授56名(其中博士生导师51名),副教授50名,青年教师中有博士学位的比例为97%。拥有许多国内外著名专家学者,如中国科学院院士高镇同教授、李天教授,中国工程院院士李椿萱教授、王浚教授,“长江学者”特聘教授傅惠民、孙茂、杨嘉陵、高以天、武哲、王晋军、向锦武教授,国家教学名师及“万人计划”王琪教授,杰出青年基金获得者4名,跨/新世纪优秀人才的获得者10名,全国百篇优秀博士学位论文获得者2名;有国家级教学基地2个、国

并行计算-实验二-矩阵乘法的OpenMP实现及性能分析

深圳大学 实验报告 课程名称:并行计算 实验名称:矩阵乘法的OpenMP实现及性能分析姓名: 学号: 班级: 实验日期:2011年10月21日、11月4日

一. 实验目的 1) 用OpenMP 实现最基本的数值算法“矩阵乘法” 2) 掌握for 编译制导语句 3) 对并行程序进行简单的性能 二. 实验环境 1) 硬件环境:32核CPU 、32G 存计算机; 2) 软件环境:Linux 、Win2003、GCC 、MPICH 、VS2008; 4) Windows 登录方式:通过远程桌面连接192.168.150.197,用户名和初始密码都是自己的学号。 三. 实验容 1. 用OpenMP 编写两个n 阶的方阵a 和b 的相乘程序,结果存放在方阵c 中,其中乘法用for 编译制导语句实现并行化操作,并调节for 编译制导中schedule 的参数,使得执行时间最短,写出代码。 方阵a 和b 的初始值如下: ????????? ? ??????????-++++=12,...,2,1,..2,...,5,4,31,...,4,3,2,...,3,2,1n n n n n n n a ???????? ? ???????????= 1,...,1,1,1..1,...,1,1,11,...,1,1,11,..., 1,1,1b 输入: 方阵的阶n 、并行域的线程数 输出: c 中所有元素之和、程序的执行时间 提示: a,b,c 的元素定义为int 型,c 中所有元素之各定义为long long 型。 Windows 计时: 用中的clock_t clock( void )函数得到当前程序执行的时间 Linux 计时: #include

北航考博辅导班:2019北京航空航天大学飞机适航设计考博难度解析及经验分享

北航考博辅导班:2019北京航空航天大学飞机适航设计考博难度解 析及经验分享 根据教育部学位与研究生教育发展中心最新公布的第四轮学科评估结果可知,全国开设飞机适航设计专业的大学参与了2017-2018飞机适航设计专业大学排名,其中排名第一的是北京航空航天大学,排名第二的是南京航空航天大学,排名第三的是中国民用航空航天学院。 作为北京航空航天大学实施国家“211工程”和“985工程”的重点学科,北京航空航天大学的飞机适航设计一级学科在历次全国学科评估中均名列第一。 下面是启道考博辅导班整理的关于北京航空航天大学飞机适航设计考博相关内容。 一、专业介绍 飞行器适航技术专业主要培养具有扎实的基础理论知识和工程实践能力,掌握航空专业知识、适航法规、适航验证与审定技术以及适航工程管理等理论和工程实践能力的高级技术人才。 北京航空航天大学航空科学与工程学院博士招生专业 专业代码及名称:0801J1 飞机适航设计 考试科目详细内容,请咨询招生学院。 二、综合考核 综合考核一般由笔试和面试环节组成。 笔试考察学生的英语和数理基础(满分200分)。 数理基础是在高等数学、矩阵论、数值分析中三选二(在笔试试卷中标注),数理基础的大纲请见附件,按照教育部相关要求不指定教材。 面试主要评价学生的视野、实际应用知识的能力及培养潜力。 面试内容和形式(满分:200分): 1)外语水平:英语口语与听力(满分:50分) 随机的英语提问和回答,考核英语听、说能力。 2)专业知识考核(满分:100分) 全面考核考生对所学学科(专业)理论知识和应用技能的掌握程度,利用所学理论发现、分析和解决问题的能力,以及对所学和报考学科发展动态的了解、在报考专业领域发展的潜力。

并行计算矩阵分块乘法

目录 一、题目及要求 (1) 1、题目 (1) 2、要求 (1) 二、设计算法、算法原理 (1) 三、算法描述、设计流程 (2) 3.1算法描述 (2) 3.2设计流程 (4) 四、源程序代码及运行结果 (6) 1、超立方 (6) 1.1超立方的源程序代码 (6) 1.2运行结果 (11) 2、网孔连接 (11) 2.1源程序代码 (11) 2.2运行结果 (18) 3、在数学软件中的计算结果 (19) 五、算法分析、优缺点 (19) 1、简单的并行分块乘法的过程为 (19) 2、使用Cannon算法时的算法分析 (20) 3、算法的优缺点 (21) 六、总结 (22) 参考文献 (23)

一、题目及要求 1、题目 简单并行分块乘法:(1)情形1: 超立方连接;(2)情形2:二维环绕网孔连接 已知,177511195310135411274329,7563895712314 2120143321 ?????? ? ??----=??????? ??----=B A 求B A C ?=。 2、要求 (1)题目分析、查阅与题目相关的资料; (2)设计算法; (3)算法实现、代码编写; (4)结果分析和性能分析与改进; (5)论文撰写、答辩; 二、设计算法、算法原理 要考虑的计算问题是C=AB,其中A 与B 分别是n n ?矩阵。 ①A 、B 和C 分成p p p ?=的方块阵ij A ,ij B 和ij C ,大小均为p n p n ? ,p 个处理器编号为1 ,1, (1) 0,....,0,0---p p p p p p , ij P 存放ij A ,ij B 和ij C 。 ②通讯:每行处理器进行A 矩阵块的多到多播送(得到ik A , k=0~1-p ) 每列处理器进行B 矩阵块的多到多播送(得到kj B , k=0~ 1-p ) ③乘-加运算: ij P 做kj p k ik ij B A C ∑-== 1

矩阵相乘并行算法

并行处理技术 课程设计分析报告 课程设计题目矩阵相乘并行算法设计姓名廖杰 学号M201372880 专业计算机技术 任课教师金海石宣化 所在学院计算机科学与技术学院报告提交日期2014-01-13

一、实验目的 1、学习使用集群; 2、掌握并行处理或分布计算的编程方法; 3、学会以并行处理的思想分析问题。 二、实验要求 1、自行生成矩阵作为算法的输入; 2、使用并行处理技术编程,例如:MPI、OpenMP、MR; 3、矩阵大小至少为1000*1000; 4、加速比越大成绩越高。 三、实验内容 3.1、矩阵的划分: 对于矩阵相乘的并行算法,可以有三种:对矩阵按行划分、按列划分和棋盘式分块划分。和按行或列划分相比,棋盘式划分可以开发出更高的并行度。对于一个n×n的方阵,棋盘划分最多可以使用n^2个处理器进行并行计算,但使用按行或列分解最多可以使用n个。对矩阵相乘采用棋盘式划分的算法通常称作Cannon算法。 A)行列划分 又叫带状划分(Striped Partitioning),就是将矩阵整行或者整列分成若干个组,每个组指派给一个处理器。下图所例为4个CPU,8×8矩阵的带状划分。

在带状划分情况下,每个CPU将会均匀分配到2行(列)数据。8×8矩阵变成了一个1×4或4×1的分块矩阵,每个CPU所属的分块矩阵大小为8×2或2×8。

B)棋盘划分 就是将矩阵分成若干个子矩阵,每个子矩阵指派给一个处理器,此时任一处理器均不包含整行或者整列。下图所示即为4个处理器情况下8×8矩阵的棋盘划分,其中处理器阵列为2×2,每个处理器分配到的子矩阵大小为4×4。 矩阵划分成棋盘状可以和处理器连成二维网孔相对应。对于一个n×n维矩阵和p×p的二维处理器阵列,每个处理器均匀分配有(n/p)×(n/p)=n^2/p^2个元素。使用棋盘式划分的矩阵相乘算法一般有两种,Cannon算法和Summa算法。SUMMA算法能够计算 m*l的A矩阵和l*n的B矩阵相乘(m、l、n可不相等),而cannon算法只能实现n*n 的A矩阵和n*n的B矩阵相乘,具有很大的局限性。 3.2、算法原理 A) 行划分法 假设是M*N,计算前,将矩阵N发送给所有从进程,然后将矩阵M分块,将M中数据按行分给各从进程,在从进程中计算M中部分行数据和N的乘积,最后将结果发送给主进程。这里为了方便,有多少进程,就将M分了多少块,除最后一块外的其他数据块大小都相等,最后一块是剩下的数据,大小大于等于其他数据块大小,因为矩阵行数不一定整除进程数。最后一块数据在主进程中计算,其他的在从进程中计算。 定义两个矩阵M和N,N所有进程都需要,M可以只在主进程中定义。其他的变量视主进程和从进程需要按要求定义在合适的位置。

矩阵论定义定理

第1章线性空间与线性变换 线性空间 定义1.1 设V是一个非空集合,F是一个数域。定义两种运算,加法:任意α,β∈V,α+β∈V;数量乘法:任意k∈F,α∈V,kα∈V,并且满足8运算,则称V为数域F上的线性空间,V中元素成为向量 定理1.1 线性空间V的性质:V中的零元素唯一;V中任一元素的负元素唯一 定义1.2 设V是线性空间,若存在一组线性无关的向量组α1…αn,使空间中任一向量可由它们线性表示,则称向量组为V的一组基。基所含的向量个数为V 的维数,记为dimV=n 定理1.2 n维线性空间中任意n个线性无关的向量构成的向量组都是空间的基 定义1.3 设α1…是线性空间的V n(F)的一组基,对于任意β∈V,有β=(α1…)(x1…),则称数x是β在基α1…下的坐标 定理1.3 向量组线性相关≡坐标相关 定义1.4 α,β为两组基,若满足β=αC,则称矩阵C是从基α到基β的过渡矩阵 定理1.4 已知β=αC,V中向量A在两组基下的坐标分别为X,Y,则有X=CY 定义1.5 V为线性空间,W是V的非空子集合。若W的元素关于V中加法与数乘向量法运算也构成线性空间,则称W是V的一个子空间 定理1.5 设W是线性空间V的非空子集合,则W是V的子空间的充分必要条件是α,β∈W,α+β∈W;k∈F,α∈W,kα∈W 零空间:N(A)={X|AX=0}列空间:R(A)=L{A1,A2…} 定理1.6 交空间:W1∩W2={α|α∈W1且α∈W2} 和空间:W1+W2={α|α=α1+α2,α∈W1,α∈W2} 定理1.7 设W1和W2是线性空间V的子空间,则有如下维数公式: DimW1+dimW2 = dim(W1+W2) + dim(W1∩W2) 定义1.6 设W1和W2是线性空间V的子空间,W = W1 + W2,如果W1∩W2 = {0},则称W是W1和W2的直和子空间。记为W = W1⊕W2 定理1.8 设W1和W2是V的子空间,W= W1 +W2,则成立以下等价条件:W = W1⊕W2;W中零向量表达式是唯一的;维数公式:dimW = dimW1 + dimW2

矩阵相乘的并行算法的设计与实现

仲恺农业工程学院实验报告纸 计算机科学与工程学院(院、系)网络工程专业083 班组并行计算应用试验课 学号:200810224311 姓名:李志冬实验日期:2011-05-19 教师评定实验三矩阵相乘的并行算法的设计与实现 一、实验目的 理解和掌握矩阵相乘的并行算法的设计思想以及实现原理 二、实验内容 编译和运行一个两矩阵相乘算法的并行程序 三、实验步骤 1 使用vi编辑器输入并行计算的代码,保存在multi.c中 #include #include "mpi.h" #define NRA 62 #define NCA 15 #define NCB 7 #define MASTER 0 #define FROM_MASTER 1 #define FROM_WORKER 2 MPI_Status status; int main(int argc, char *argv[]) { int numtasks, taskid, numworkers, source, dest, nbytes, mtype,

dbsize, rows, averow,extra,offset, i,j,k, count; double a[NRA][NCA],b[NCA][NCB],c[NRA][NCB]; intsize = sizeof(int); dbsize = sizeof(double); MPI_Init(&argc,&argv); MPI_Comm_rank(MPI_COMM_WORLD,&taskid); MPI_Comm_size(MPI_COMM_WORLD,&numtasks); numworkers = numtasks-1; if(taskid==MASTER) { printf("Number of worker tasks = %d\n",numworkers); for(i=0;i

北航考博辅导班:2019北京航空航天大学模式识别与智能系统考博难度解析及经验分享

北航考博辅导班:2019北京航空航天大学模式识别与智能系统考博 难度解析及经验分享 根据教育部学位与研究生教育发展中心最新公布的第四轮学科评估结果可知,全国开设模式识别与智能系统专业的大学参与了2017-201模式识别与智能系统专业大学排名,其中排名第一的是西安交通大学,排名第二的是清华大学,排名第三的是北京航空航天大学。 作为北京航空航天大学实施国家“211工程”和“985工程”的重点学科,北京航空航天大学的模式识别与智能系统一级学科在历次全国学科评估中均名列第三。 下面是启道考博辅导班整理的关于北京航空航天大学模式识别与智能系统考博相关内容。 一、专业介绍 模式识别与智能系统属控制科学与工程的二级学科,以信息处理与模式识别的理论技术为核心,以数学方法与计算机为主要工具,研究对各种媒体信息进行处理、分类和理解的方法,并在此基础上构造具有某些智能特性的系统。 北京航空航天大学自动化科学与电气工程学院博士招生专业 专业代码及名称:081104模式识别与智能系统 考试科目详细内容,请咨询招生学院。 二、综合考核 综合考核由笔试和面试两个环节组成。综合考核低于 180 分不予录取。 笔试(100 分)全院统一试卷,主要考察考生的英语与矩阵论。 面试(200 分)主要考核评价申请者的思政、视野、创新能力、实际应用知识的能力及培养潜力。面试内容和形式为: (1)思想政治素质和品德考核。不合格者不予录取。 (2)申请者报考专业所属学科基础知识和专业知识水平(100 分)。 (3)综合考察考生英语水平、科研经历、科研道德、创新意识、逻辑思维能力以及语言表达等能力 100 分)。 四、申请材料 A:基本报名材料: (1)《报名信息表》。申请者须按照北京航空航天大学博士招生通知上的要求网上报名、缴费,只有在学院规定时间内交费成功的考生才会出现在学院的报考库里。登录“中国

北航并行计算矩阵相乘作业

矩阵相乘并行实现 1、算法描述: 设有如下矩阵相乘: C=A×B 其中A,B分别是m×k和k×n矩阵,C是m×n矩阵。若处理器个数为p,且它们的编号依次是0,1,…,p-1,则设可将矩阵A、B、C分成p个大小为mxm的子 块,其中A=(Aij)m ×m ,B=(Bij)m ×m ,和C=(Cij)m ×m ,其中A?ij,Bij和Cij是n×n矩 阵。同时假设和。 定义对角块矩阵,则 其中,。利用此关系式,将节点编号从一维映射到二维,数据,,存放在中,可得到下面的在处理机 结点上的算法。该算法数据交量 算法流程如下: 流程图如下所示:

2、程序代码: #include #include #include #include #include #include float **A, **B, **C; float *a, *b, *c, *tmp_a, *tmp_b; int dg=1000, dl, dl2,p, sp; int my_rank, my_row, my_col; MPI_Status status; int get_index(int row, int col, int sp) { return ((row+sp)%sp)*sp + (col+sp)%sp; }

void random_A_B() { int i,j; srand((unsigned int)time(NULL)); for(i=0; i

北航考博辅导班:2019北京航空航天大学工程力学考博难度解析及经验分享

北航考博辅导班:2019北京航空航天大学工程力学考博难度解析及 经验分享 根据教育部学位与研究生教育发展中心最新公布的第四轮学科评估结果可知,全国开设工程力学专业的大学参与了2017-2018工程力学专业大学排名,其中排名第一的是南京航空航天大学,排名第二的是河海大学,排名第三的是大连理工大学。 作为北京航空航天大学实施国家“211工程”和“985工程”的重点学科,北京航空航天大学的工程力学一级学科在历次全国学科评估中均名列第十一。 下面是启道考博辅导班整理的关于北京航空航天大学工程力学考博相关内容。 一、专业介绍 工程力学专业培养具备力学基础理论知识、计算和试验能力,能在各种工程(如机械、土建、材料、能源、交通、航空、船舶、水利、化工等)中从事与力学有关的科研、技术开发、工程设计和力学教学工作的高级工程科学技术人才。 该专业主要学习力学、数学基本理论和知识,受到必要的工程技能训练,具有应用计算机和现代实验技术手段解决与力学有关的工程问题的基本能力。 北京航空航天大学航空科学与工程学院博士招生专业 专业代码及名称:080104 工程力学 考试科目详细内容,请咨询招生学院。 二、综合考核 综合考核一般由笔试和面试环节组成。 笔试考察学生的英语和数理基础(满分200分)。 数理基础是在高等数学、矩阵论、数值分析中三选二(在笔试试卷中标注),数理基础的大纲请见附件,按照教育部相关要求不指定教材。 面试主要评价学生的视野、实际应用知识的能力及培养潜力。 面试内容和形式(满分:200分): 1)外语水平:英语口语与听力(满分:50分) 随机的英语提问和回答,考核英语听、说能力。 2)专业知识考核(满分:100分) 全面考核考生对所学学科(专业)理论知识和应用技能的掌握程度,利用所学理论发现、

2015北航飞行器设计考博(宇航学院)参考书、历年真题、报录比、研究生招生专业目录、复试分数线

2015北京航空航天大学飞行器设计考博(宇航学院)参考书、历年真题、报录比、研究生招生专业目录、复试分数线 一、学院介绍 1956年中央决定建立第一个导弹火箭设计和研究院(国防部第五研究院)的同时,就在北航创建了火箭设计和火箭发动机教研室,由屠守锷,曹传钧担任教研室主任。1958年北京航空学院正式组建了火箭系,设有运载火箭设计、有翼导弹设计、液体火箭发动机设计、固体火箭发动机设计、导弹飞行力学与控制、自动控制、发射装置、遥控遥测等专业,先后为我国航天部门培养并输送了大批毕业生,同时也为其他院校培养了有关此专业的师资。 1958年以火箭系为主,北航研制了我国第一枚液、固两种推进剂的近代两级探空火箭——"北京二号",并于当年国庆期间发射成功。这是我国最早发射的近代火箭,也是亚洲第一次发射成功的近代火箭。 1970年由于领导体制的变革,学校按学科调整学校内部结构,将原火箭系各专业划归有关的系进行管理,并继续为航天技术领域培养人才,进行科学研究。 1988年为适应我国航天工业和科学技术发展的需要,学校决定在原火箭系的基础上成立以培养航天人才,研究航天技术为主的宇航学院,开展教学和科研工作。既培养火箭与空间技术的本科生、硕士与博士研究生,又开展火箭和航天领域的科学研究,组织于国内航天部门及外国同行的学术交流和技术合作。 二、2015北京航空航天大学飞行器设计考博参考书 科目代 科目名称参考书目 码 1001英语不指定参考书 1002俄语不指定参考书 1003日语不指定参考书 1004综合英语能力适用于外国语学院考生,不指定参考书目

2001矩阵理论《矩阵论引论》,北航出版社1997,陈祖明、周家胜;《线性代数》,北航出版社2005,高宗升、周梦 2002数值分析《数值分析》修订版,北航出版社,颜庆津2003数理方程《数理方程》,复旦大学 2004常微方程《常微分方程》,高等教育出版社,王高雄 2005概率统计《概率论与数理统计》(不含方差分析、回归分析、随机过程),高等教育出版社,浙江大学; 《概率统计及随机过程》(1-9章),北航出版社,张福渊 2091复分析《复分析》,上海科技出版社,阿尔福斯著 2092实分析《实分析与复分析》(实分析部分),人民教育出版社,W.Rudin 著 2093泛函分析《泛函分析》,高等教育出版社,江泽坚著 2094抽象代数《近世代数》,科学出版社,熊全淹著 2095微分方程《微分方程定性理论》,科学出版社,张芷芬等著 2096偏微分方程数值解法《偏微分方程数值解法》,科学出版社2003,汤华中、余德浩著 2097计算方法不指定参考书2098数理统计不指定参考书 2103解剖生理学《人体解剖生理学》(第6版),人民卫生出版社,岳利民崔慧先 2104细胞生物学《分子细胞生物学》(第4版),科学出版社,韩贻仁2105微生物学《微生物学教程(第三版)》,高等教育出版社,周德庆2106生物化学《生物化学》,北京大学医学出版社,贾弘提 2107生物力学《生物力学导论》,天津科技翻译出版公司,陶祖莱2108生物医学仪器《生物医学测量与仪器》,复旦大学出版社,王保华 2111公共管理理论与研究方法《公共管理名著导读》,北京航空航天大学出版社,2013年版,胡象明、涂晓芳; 《公共管理导论》,中国人民大学出版社,2001年版,欧文·E·休斯; 《公共部门决策的理论与方法》,高等教育出版社,2007年版,胡象明; 《公共部门经济学》(第三版),中国人民大学出版社,2011年,高培勇、崔军; 《公共行政学》(第三版),北京大学出版社,2007年,张国庆;《公共行政理论》,复旦大学出版社,2008年版,竺乾威;《组织与管理研究的实证方法》,北京大学出版社,2008年版,陈晓萍、徐淑英、樊景立主编; 《社会研究方法教程》,北京大学出版社,1997年版,袁方主编

北航 矩阵论 习题4.2参考答案

习题4.2 1.分别写出下列矩阵的盖尔圆盘,并画出图。 (2)123624612123624612?? ? ? ? ???;(5)10.10.20.30.530.10.210.310.50.20.30.14?? ? ? ?- ?--?? 。 解: (2)该矩阵的4个盖尔圆为: 1234:111,:420,:39,:1212;G z G z G z G z -≤-≤-≤-≤如下图所示 (5)该矩阵的盖尔圆为: 1234:10.6,:30.8,:1 1.8,:40.6G z G z G z G z -≤-≤+≤+≤

6.设矩阵11111111444444441211121155555555,11311131666666661113111477777777???? ? ? ? ? ? ? ? ? == ? ? ? ? ? ? ? ? ? ????? A B 。证明: 谱半径()1ρ

北京航空航天大学2009-2010学年第一学期期末试卷(A)

考试日期:2009年 1 月16 《 矩阵理论 》(A ) 1. (30分)填空 (注意:本试卷中 I , I n 均表示单位矩阵) (1)若2320A A I -+=,则A 相似于( ) (2)若3阶矩阵A I ≠,且220A A I -+=,则A 的极小式=( ); A 的Jordan 标准形=( ) (2)1231, ,010300a A B b c ?? ?? ?== ? ??? ? ?? A B ?的特征值为( ) (3)0 0.8 0.1 , 0 0.5k k A A ∞=??== ???∑设则() (4)0001,1010A B ???? == ? ?-???? 设,则 tA e =( ) ; )t A B e +=(( ); tB e =( ) (5)11661111144411113 3 316A=, x ?? ??? ??? ?=?? ??? ??? ? ?? ? 则1A ( )x = (6)111,,1111A 1D=A=,B= B --?????? ? ? ?-?????? 11A x ??= ???则的最佳极小二乘解是( ) + D =( ) (7)01,10A ??= ?-?? 则 22det()( ), A A e e ππ==( ) (8)1 0 1A 1 1 2 0 2 2?? ?= ? ??? 的满秩分解为 ( ) () tr() A B ?=() +() BA =()||A|| ∞=()1||A|| =

(10)设1?是矩阵1范数, ()1,1,,1, T n α=∈ C n x ∈C 则1H x α=( ) 2.(14分)(1)画出下列矩阵A 的盖尔圆盘; 证明A 至少有两个实数特征值. .9 121081110401 001A ?? ? ? = ? - ? ?? (2)设列满高阵m n A A ?=的QR 分解为A QR =,Q 为次酉阵().H n Q Q I = 验证:公式1H A R Q +-=满足A + 的4个条件. 3.求下列矩阵的Jordan 标准形J (1) 111111042A --?? ? =- ? ?--?? 求3()A +;写出2A 的极小式与A 的Jordan 形. 4.(16分) (1)设A 是n阶正规矩阵,12 , , ,n λλλ 是它的特征值.求A 的奇异值. (2)求111100 A ?? ?= ? ???与122B ?? ? = ? ??? 的简化短奇异值分解. (3) 设 121031020A -?? ?=- ? ??? , 求A 的谱分解,并求2(cos )A π +.

05年北航矩阵论试题

2005年北航考博题目 数学: 矩阵论 1、已知β=(1,3,-3)T ,α1=(1,2,0)T ,α2=(1,a+2,-3a)T ,α3=(-1,-b-2,a+2b)T ,求当a,b 为何值时,(1)β不能用α1…α3线性表示;(2)β能用α1…α3唯一表示,并写出表示式;(3)β能用α1…α3线性表示且不唯一,并写出表示式。 2、f(x 1,x 2,x 3)=2x 12+3x 22+3x 32+2ax 2x 3(a>0),通过正交线性替换化为标准形f=y 12+2y 22+5y 32,求a 及所用的正交线性替换。 3、x 0是Ax=b 的一个解向量,α1…αn-r 为齐线性方程组的基础解系,求:(1)x 0,α1…αn-r 线性无关;(2)x 0,x 0+α1…x 0+αn-r 是Ax=b 的n-r+1 个线性无关的向量;(3)Ax=b 任何一个解可表示成x=x 0k 0+k 1(x 0+α1)+…+k n-r (x 0+αn-r ),且k 0+k 1+…+k n-r =1。 4、A 、B 、C 、D 是n*n 矩阵,A 可逆且AC=CA ,证:A B AD CB C D =- 5、发v1、v2为线性空间,证dim(v1)+dim(v2)=dim(v1+v2)+dim(v1∩v2). 6、画出A 的所有盖氏圆盘,各圆盘表达式,并用盖氏圆盘定理证A 至少有2个实特征值,也至多有2个虚特征值,指出各特征值所在区间。 7、设010 301010 A =可代为对角矩阵,并求A 9 的谱分解式。 8、A= 010001000,计算e At ,t 为实变量。 9、A= 120000001101,求A{1}。

相关主题
文本预览
相关文档 最新文档