- 博客(7)
- 收藏
- 关注
原创 Openmp并行比串行还慢的原因
再Linux下使用gcc编译器,O2优化,编译出的openmp并行比不用openmp的串行程序还要慢。然后换了intel2020的icc编译器,原有程序的基础上使用icc编译,发现速度提升飞快,比串行快了大约8s,由于我的程序中并行for循环使用并不是很多,所以效果不是很明显,但解决了并行效率低的问题。另外gcc是免费的,icc是收费的而且装好要20多个G以上,据说icc的bug比较多。...
2020-10-11 02:55:19 2385
原创 Ubuntu直接使用apt快捷安装Intel mkl
我们有时候要用到intel的mkl库,一般的方法是去官网上注册账号,然后下载,一步一步照着安装,最后还可能找不到mkl。再加上Ubuntu使用repo有点问题。这里提供一种非常快捷的方式直接安装最新版本的mkl。首先下载gnupg并且设置keyring:cd /tmpwget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUBapt-key add GPG-PUB-KEY-INTEL-S
2020-10-02 04:17:00 8371 5
原创 石墨烯的电导率和化学势能(费米能级)的关系+附图+程序
石墨烯是一种新型的二维材料,厚度仅有1个原子大小,由石墨中剥离出来,却展现出了与石墨完全不同的新奇特性,在纳米光电子领域,常利用石墨烯带两边加栅电压调控化学势能,然后影响石墨烯的电导率的方法来构造器件。那么很多此方向的研究僧就要作出电导率和化学势能的关系图首先,石墨烯的电导率分为带内跃迁部分和带间跃迁部分:σ=σintra+σinter\sigma {\rm{ = }}{\sigma _{{...
2020-04-28 05:35:12 15512 14
原创 用C语言构建简单的石墨烯六边形模型(附带边界条件)
一个非常简单的石墨烯模型构建,可以做一些小的分子动力学模拟。六边形模型很容易构造,关键是处理周期边界上的原子。可供物理学,材料学方面的本科生和硕士低年级参考。效果图:头文件head.h:#define N 40 //40个原子#define dx 2.4595121 //水平方向上两个原子的距离#define dy 0.71#define bd 1.42 //键长#define ...
2020-02-07 22:39:27 1316 1
原创 C语言使用动态内存分配的链表结构实现输入任意维度(行列)的矩阵
#include<stdio.h>#include<stdlib.h>#include<malloc.h>#define LON sizeof(struct matr)struct matr{double num;struct matr *next;};struct matr *creat(int a,int b){int i=2;str...
2019-08-09 17:34:52 929
原创 利用C语言进行蒙特卡罗模拟圆周率
因为C语言是面向过程语言,进行蒙特卡罗模拟的速度要远远快于Matlab和python,所以是科学模拟的首选,这里简单的写一个C语言模拟圆周率的入门程序。#include<stdio.h>#include<stdlib.h>#include<time.h>#include<math.h>//Monte Carlo simulation of...
2019-04-17 11:43:28 4968
原创 用C语言生成2个随机的矩阵并进行乘法运算
#include<stdio.h>#include<stdlib.h>#include<math.h>#include<time.h>//两个随机矩阵相乘void main(){ double a[2][3], b[3][2],d; //定义一个2×3和3×2的矩阵 srand((unsigned)time(NULL)); //...
2019-04-17 11:31:42 6809 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人