----赖格英-----

记忆不好了,记录工作中的点点滴滴....

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  编程语言

摘要:最近写水动力的程序,体系太大,必须用并行才能算的动,无奈只好找了并行编程的资料学习了。我想我没有必要在博客里开一个什么并行编程的教程之类,因为网上到处都是,我就随手记点重要的笔记吧。这里主要是openmp的~1 临界与归约 在涉及到openmp的并行时,最需要注意的就是被并行的区域中的公共变量,对于需要reduce的变量,尤其要注意,比如这段代码:program mainimplicit noneinclude 'omp_lib.h'integer N,M,ireal(kind=8) tN=20000t=0.0!$OMP PARALLEL DOdo i=1,Nt=t+float 阅读全文
posted @ 2013-12-31 22:07 向北方 阅读(23517) 评论(2) 推荐(0) 编辑

摘要:采用fortran进行数值计算的朋友们都应该听说过大名鼎鼎的lapack库,我就不多做介绍了,在此,我只是介绍一个编译好的lapack二进制包ACML(AMD Core Math Library),并且我强烈推荐,有几个原因: 1. ACML是预编译好的二进制文件,省去了许多重新编译的麻烦; 2. AMD对ACML中的许多函数针对x86构架进行了优化,执行效率很高; 3. ACML中有专门针对SMP(不要告诉我你不知道SMP是什么东东)的库,可以实现并行多处理,如果你是多核多线程处理器的话可以最大程度发挥处理器的效能,针对我的电脑我进行了一个测试,分别链接到libacml_mp_dll.... 阅读全文
posted @ 2013-12-30 18:27 向北方 阅读(4319) 评论(0) 推荐(0) 编辑

摘要:对于数组的排序有好多种方法,上面这种是最常规的方法,当然在Array类中有两个方法就是专门来完成排序的,一会我们再来看这两方法,下面我们还是来看一下语法吧,只要搞懂语法了,就可以自己随便排序了。冒泡排序语法: for (int i = 0; i ”就可以了。刚才我们说到了Array类中的两个排序的方法,下面我们就简单的介绍一下Array类中的这两个方法。在Array中实现升序排列的方法是Array.Sort(数组名),比如:Array.Sort(change).当然了降序也有Array.Reverse(数组名),比如:Array.Reverse(change),这个Reve... 阅读全文
posted @ 2013-12-29 09:10 向北方 阅读(22575) 评论(0) 推荐(1) 编辑

摘要:正则表达式语法一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。这里有一些可能会遇到的正则表达式示例:Visual Basic Scripting EditionVBScript匹配/^\[ \t]*$/"^\[ \t]*$"匹配一个空白行。/\d{2}-\d{5}/"\d{2}-\d{5}"验证一个ID 号码是否由一个2位数字,一个连字符以及一个5位数字组成。/.*/".*" 阅读全文
posted @ 2013-12-08 22:41 向北方 阅读(400) 评论(0) 推荐(0) 编辑

摘要:在对EFDC模型进行系统集成时,虽然可以通过一行一行读来进行解析处理,但那将是一个繁琐的工作。我们经过xml格式化处理后,再经xsd转成Dataset类对象,那么整个主控文件就是一个数据库表集合,对其的处理完全可以对象化进行。如下为方法测试: 阅读全文
posted @ 2013-12-02 20:54 向北方 阅读(859) 评论(0) 推荐(0) 编辑

摘要:双击代码全选12345678910111213141516unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObj... 阅读全文
posted @ 2013-12-01 23:26 向北方 阅读(604) 评论(0) 推荐(0) 编辑

摘要:根据一个已有的点集合,想画出一条光滑的曲线有很多种算法。其中一种比较快捷的是使用贝塞尔曲线,有成熟的PolyBezier方法可以直接调用。但是有一个问题需要注意,就是贝塞尔曲线对点集合是有要求的,如果不满足要求,就不会得到你想要的曲线。如何满足要求呢,先要理解贝塞尔曲线的原理。简单点说:贝赛尔曲线的每一段曲线都要一个起点,一个终点,两个控制点(用于控制曲线的弧度)。所以点数组的记录方式是:起点+控制点+控制点+终点+控制点+控制点+终点+……。也就是说,点的数量应该是3×n+1.明白了道理,我们就可以修正任何一个点数组了,我实现的算法如下://贝塞尔曲线点位修正function Ad 阅读全文
posted @ 2013-12-01 22:03 向北方 阅读(1493) 评论(0) 推荐(0) 编辑

摘要:如今开发手机短信的文章可多了,下面的地址更绝,收集了好多.net开发手机的技术文章(串口编程文章列表: http://www.mcuchina.com/Article/Communication/SMS/Index.html〕C#开发终端式短信原理及方法: http://www.mcuchina.com/Article/Interface/COM/COMPRG/200411/83.html), 对于不懂开发手机短信原理的同仁,看了上面的文章就应该知道了。俺在这里是要作个总结,好以后复习,^_^。 开发手机短信程序有3种方式:通过电信部门的网关、通过终端、利用一些网站提供的Webservice. 阅读全文
posted @ 2013-12-01 00:27 向北方 编辑

摘要:多线程应用多线程应用很广泛,简单总结了一下:1)不阻断主线程,实现即时响应,由后台线程完成特定操作2)多个线程,完成同类任务,提高并发性能3)一个任务有多个独立的步骤,多个线程并发执行各子任务,提高任务处理效率下面我们通过几个小例子做简单介绍。1、进度条分析:页面动态刷新,主页面正常可操作。我们通过后台线程来实现进度条。首先,创建Winform页面,然后拖入进度条控件,将页面的代码改为以下代码即可。这里只是个简单的例子,其实我们可以做的更好,将进度条封装为一个自定义控件,设计为一个通用好看的进度条。这里只讲技术和方向,大家可以自己研究研究。相关代码:using System;using Sys 阅读全文
posted @ 2013-12-01 00:19 向北方 阅读(827) 评论(0) 推荐(0) 编辑

摘要:微信公众账号开发教程基本原理在开始做之前,大家可能对这个很感兴趣,但是又比较茫然。是不是很复杂?很难学啊?其实恰恰相反,很简单。为了打消大家的顾虑,先简单介绍了微信公众平台的基本原理。微信服务器就相当于一个转发服务器,终端(手机、Pad等)发起请求至微信服务器,微信服务器,然后将请求转发给自定义服务(这就里就是我们的具体实现)。服务处理完毕,然后挥发给微信服务器,微信服务器再将具体响应回复到终端。通信协议为:HTTP数据格式为:XML具体的流程如下图所示:其实,我们需要做的事情,就是对HTTP请求,做出响应。具体的请求内容,我们按照特定的XML格式去解析,处理完毕后,也要按照特定的XML格式返 阅读全文
posted @ 2013-12-01 00:14 向北方 阅读(4312) 评论(2) 推荐(0) 编辑

摘要:上一章,我们已经初步讲解了微信公众账号开发的基本原理,今天我们来探索设计实现。首先我们设计了模块层次图,当然图中只是给出一种实现方式,不局限于此。具体见下图。主要功能介绍如下:1)请求接口层。处理HTTP请求,及响应2)分发层。由接口层传入请求,然后具体分析请求类型,分发至不同的处理器3)业务逻辑层。这里是我们的具体业务逻辑了,根据请求,实现具体的业务逻辑。4)数据层。我们在实现某个应用时可能需要访问数据,可以是数据库或者是文件。如果是简单应用,可能没有这一层。其实,具体的应用可以在这个结构上去扩展,可以扩展消息对象层、业务对象层、数据访问层、功能管理层等。这里只是提供一种思路,不局限于此。根 阅读全文
posted @ 2013-12-01 00:13 向北方 阅读(2126) 评论(0) 推荐(0) 编辑

摘要:一、功能介绍通过微信公众平台实现在线客服机器人功能。主要的功能包括:简单对话、查询天气等服务。这里只是提供比较简单的功能,重在通过此实例来说明公众平台的具体研发过程。只是一个简单DEMO,如果需要的话可以在此基础上进行扩展。当然后续我们还会推出比较复杂的应用实例。二、具体实现1、提供访问接口这里不再赘述,参照上一章,微信公众账号开发教程(二) 基础框架搭建http://www.cnblogs.com/yank/p/3392394.html2、签名认证和分发请求这里不再赘述,参照上一章,微信公众账号开发教程(二) 基础框架搭建http://www.cnblogs.com/yank/p/33923 阅读全文
posted @ 2013-12-01 00:11 向北方 阅读(2277) 评论(1) 推荐(1) 编辑

摘要:微信公众账号开发教程(四)自定义菜单请尊重作者版权,如需转载,请标明出处。应大家强烈要求,将自定义菜单功能课程提前。一、概述:如果只有输入框,可能太简单,感觉像命令行。自定义菜单,给我们提供了很大的灵活性,更符合用户的操作习惯。在一个小小的微信对话页面,可以实现更多的功能。菜单直观明了,不仅能提供事件响应,还支持URL跳转,如果需要的功能比较复杂,我们大可以使用URL跳转,跳转至我们的网页即可。注意:自定义菜单,只有服务号才有此功能如何注册,见第一章:微信公众账号开发教程(一) 基本原理及微信公众账号注册效果如下,接着我们详细介绍,如何实现自定义菜单?二、详细步骤:1、首先获取access_t 阅读全文
posted @ 2013-12-01 00:09 向北方 阅读(20749) 评论(4) 推荐(2) 编辑

摘要:一、功能介绍在进行推广时,我们可以告诉对方,我们的微信公众账号是什么,客户可以去搜索,然后关注。二维码给我们提供了极大的便捷,只要简单一扫描,即可关注。如果已经关注过,立刻跳入对话画面。在我们进行推广时,不再是简陋的文字,可以是一个有个性的二维码,想必会很生动。微信对二维码提供了很好的支持,而且还可以根据需要生成不同场景的二维码。下面我们将介绍如何获取和使用二维码。注意:限服务号,且进行了微信认证,费用300二、相关接口为了满足用户渠道推广分析的需要,公众平台提供了生成带参数二维码的接口。使用该接口可以获得多个带不同场景值的二维码,用户扫描后,公众号可以接收到事件推送。目前有2种类型的二维码, 阅读全文
posted @ 2013-12-01 00:05 向北方 阅读(15235) 评论(1) 推荐(0) 编辑

摘要:一 前言 很少接触HashTable晚上回来简单看了看,然后做一些增加和移除的操作,就想和List 与Dictionary比较下存数据与取数据的差距,然后便有了如下的一此测试,当然我测的方法可能不是很科学,但至少是我现在觉得比较靠谱的方法。如果朋友们有什么好的方法,欢迎提出大家来交流下。先来简单介绍这三个容器的各自特点吧 1 hashtable散列表(也叫哈希表),是根据关键字(Key value)而直接访问在内存存储位置的数据结构。 2 List是针对特定类型、任意长度的一个泛型集合,实质其内部是一个数组。 3Dictionary泛型类提供了从一组键到一组值的映射。字典中的每个添加项都由一. 阅读全文
posted @ 2013-11-30 23:57 向北方 阅读(1095) 评论(0) 推荐(0) 编辑

摘要:一 前言 对于正则表达式,相信很多人都知道,但是很多人的第一感觉就是难学,因为看第一眼时,觉得完全没有规律可寻,而且全是一堆各种各样的特殊符号,完全不知所云。其实只是对正则不了解而以,了解了你就会发现,原来就这样啊正则所用的相关字符其实不多,也不难记,更不难懂,唯一难的就是组合起来之后,可读性比较差,而且不容易理解,本文旨在让大家对正则有一个基本的了解,能看得懂简单的正则表达式,写得出简单的正则表达式,用以满足日常开发中的需求即可。0\d{2}-\d{8}|0\d{3}-\d{7} 先来一段正则,如果你对正则不了解,是不是完全不知道这一串字符是什么意思?这不要紧文章会详细解释每个字符的含义的. 阅读全文
posted @ 2013-11-30 23:49 向北方 阅读(91947) 评论(11) 推荐(22) 编辑

摘要:声明:本文中涉及到的序列号及更新方法均来自互联网,请支持正版。 微软为业余爱好者、热衷者和学生提供了免费版——Express Edition (轻型、易学、易用的开发工具)。 如不想支付任何费用,建议您使用Visual Studio 2008 Express Edition Visual Studio 2008 Express Edition All-in-One DVD ISO 下载: VS2008ExpressENUX1397868.iso 最新Express Edition版下载地址(目前为VS2010版本) http://www.microsoft.com/express/Downlo 阅读全文
posted @ 2013-11-28 13:25 向北方 阅读(18676) 评论(2) 推荐(2) 编辑

摘要:DateUtils时间单元说明CompareDate函数比较两个日期时间值日期部分的大小CompareDateTime函数比较两个日期时间值的大小CompareTime函数比较两个日期时间值时间部分的大小DateOf函数去除日期时间值的时间部分DateTimeToJulianDate函数转换日期时间值为儒略日DateTimeToModifiedJulianDate函数转换日期时间值为改进的儒略日DateTimeToUnix函数转换日期时间值为Unix/Linus日期时间值Dayofweek函数常量*ISO8601标准中一周各天顺序的常量DayOf函数返回一个日期时间值的天DayOfTheMon 阅读全文
posted @ 2013-10-05 19:20 向北方 阅读(1530) 评论(0) 推荐(0) 编辑

摘要:HLA高级汇编语言环境的搭建与设置我的操作系统:WINDOWS7需要下载的东西:MASM32:http://www.masm32.com/masmdl.htm HLA:http://webster.cs.ucr.edu/ MASM32和HLA你可以随意安装在任何目录,最好不要安装在带空格的目录下.然后复制MASM32\bin目录下的ml.exe, ml.err, link.exe, mspdb50dll到hla目录下。然后把hla目录加入到系统的环境变量中就OK啦!然后编辑环境我们就随便选择1款,或者记事本就可以了。三 HELLOWORLD的运行 以前我们学PYTHON啊,C... 阅读全文
posted @ 2013-09-03 22:47 向北方 阅读(1849) 评论(0) 推荐(0) 编辑

摘要:如果有一个文件如下:TITLE = "Water Wurface Elevation"VARIABLES = "X", "Y", "WS"Zone N= 384016, E= 96004, DT=(DOUBLE DOUBLE SINGLE), F=FEPOINT, ET=QUADRILATERAL, T="Flow 54.000 @ 290.00 Days"417183.062 3121115.75 25.17824 417387.938 3121108.75 25.17824 417381.7 阅读全文
posted @ 2013-08-30 23:46 向北方 阅读(582) 评论(0) 推荐(0) 编辑