版块导航
正在加载中...
客户端APP下载
论文辅导
申博辅导
登录
注册
帖子
帖子
用户
本版
应《网络安全法》要求,自2017年10月1日起,未进行实名认证将不得使用互联网跟帖服务。为保障您的帐号能够正常使用,请尽快对帐号进行手机号验证,感谢您的理解与支持!
24小时热门版块排行榜
>
论坛更新日志
(3844)
>
文献求助
(440)
>
导师招生
(328)
>
虫友互识
(323)
>
休闲灌水
(159)
>
考博
(138)
>
招聘信息布告栏
(91)
>
博后之家
(88)
>
硕博家园
(86)
>
公派出国
(66)
>
基金申请
(61)
>
教师之家
(51)
>
论文投稿
(51)
>
SciFinder/Reaxys
(34)
>
考研
(34)
>
论文道贺祈福
(32)
小木虫论坛-学术科研互动平台
»
计算模拟区
»
程序语言
»
C/C++
»
1000金币求把下面MATLAB代码专为C语言
1
1/1
返回列表
查看: 1253 | 回复: 5
只看楼主
@他人
存档
新回复提醒
(忽略)
收藏
在APP中查看
本帖产生 1 个 程序强帖 ,点击这里进行查看
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖
libralibra
至尊木虫
(著名写手)
骠骑将军
程序强帖: 40
应助: 817
(博后)
金币: 12914.1
红花: 64
帖子: 2238
在线: 287.3小时
虫号: 696514
注册: 2009-02-05
专业: 计算机软件
【答案】应助回帖
★ ★
xzhdty(金币+2): 欢迎常来程序语言讨论 2011-11-11 10:48:28
dubo(金币+1000): 100,明天我测试一下给其他的金币,呵呵,辛苦了!!! 2011-11-11 23:33:21
ben_ladeng(程序强帖+1): 专家考核存档 2011-11-12 23:28:11
非常抱歉,看错了gx和gx2,帖子无法修改,重贴了
CODE:
#include
#include
#include
// --------------------------
// load data from xvg file
// --------------------------
void loadData(FILE *fid, float data[797][2])
{
int i=0;
while(fscanf(fid,"%f %f\n",&data[i][0],&data[i][1])!=EOF)
i++;
}
// --------------------------
// write back to xvg file
// --------------------------
void saveData(float data[1501][7])
{
FILE *fout;
int i,j;
fout = fopen("table_CR1_CR1.xvg","w");
if(fout==NULL)
return;
for (i=0;i<1501;++i)
{
for (j=0;j<7;++j)
{
fprintf(fout,"%f ",data[i][j]);
}
fprintf(fout,"\n");
}
fclose(fout);
}
// --------------------------
// zeros vector
// --------------------------
void zeros(float vec[797])
{
int i;
for (i=0;i<797;++i)
vec[i] = 0.0;
}
// --------------------------
// smooth the array with
// default span 5
// --------------------------
void smooth(float vec[797])
{
float sum;
int i,j;
for (i=0;i<797;++i)
{
sum = 0.0;
if (i<3)
{
for (j=0;j<=i;++j)
sum += vec[j];
vec[i] = sum/(i+1);
}
else if (i>=797-3)
{
for (j=i;j<797;++j)
sum += vec[j];
vec[i] = sum/(797-i);
}
else
{
for (j=i-2;j<=i+2;++j)
sum += vec[j];
vec[i] = sum/5;
}
}
}
// --------------------------
// main entry
// --------------------------
int main(int argc, char *argv[])
{
FILE *fid;
float eps = 2.2204e-16;
float data[797][2], tablenon[1501][7];
float x[797], dx[797],
fx[797], fx2[797],
hx[797], hx2[797],
gx[797], gx2[797];
double xfrom = 0.0, xto = 1.592, xtobig = 3.0, jingdu = 0.002, kbt;
int T = 500, multi = 500, from = 1, to = 797, len = 797;
int i,j;
fid = fopen("rdf.xvg","r");
if(fid==NULL)
return -1;
// read to data 797*2
loadData(fid,data);
fclose(fid);
// make x and dx
for (i=0;i<797;++i)
{
x[i] = i*jingdu;
dx[i] = data[i][1];
}
// update dx
kbt = T*8.3145/1000;
smooth(dx);
for (i=0;i<797;++i)
{
dx[i] += eps;
dx[i] = -1*kbt*log(dx[i]);
}
// smooth 10 times
for (i=0;i<10;++i)
smooth(dx);
zeros(fx);
zeros(fx2);
zeros(hx);
zeros(hx2);
zeros(gx);
zeros(gx2);
for (i=0;i<797;++i)
gx[i] = dx[i];
smooth(gx2);
// first 797 row
for (i=0;i<797;++i)
{
tablenon[i][0] = x[i];
tablenon[i][1] = fx[i];
tablenon[i][2] = fx2[i];
tablenon[i][3] = gx[i];
tablenon[i][4] = gx2[i];
tablenon[i][5] = hx[i];
tablenon[i][6] = hx2[i];
}
// the rest
for (i=797;i<1501;++i)
{
tablenon[i][0] = xto+(i+1-797)*jingdu;
for (j=1;j<7;++j)
tablenon[i][j] = 0;
}
saveData(tablenon);
system("PAUSE");
return 0;
}
赞
一下
(2人)
回复此楼
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
3楼
2011-11-11 07:49:13
已阅
回复此楼
关注TA
给TA发消息
送TA红花
TA的回帖
智能机器人
Robot
(super robot)
我们都爱小木虫
找到一些相关的精华帖子,希望有用哦~
如何用matlab画出两组实验测定数据概率密度曲线,求两条曲线重叠部分面积
已经有8人回复
一步一步学习C语言
已经有19人回复
求MATLAB清华版的教学视频
已经有14人回复
怎么样设置matlab在excel中的输出位置
已经有10人回复
急求一个matlab编码,各位如果知道一定要帮我一把啊
已经有10人回复
倾我所有金币,再求定位分析,底气不足。
已经有19人回复
先自己祝福自己 出国成了金币回帖全散
已经有6人回复
Matlab求解偏微分方程组
已经有22人回复
求回归方程参数估计的最优化算法matlab代码
已经有9人回复
求高人指点用matlab求解非线性方程组,解决了追加100金币;
已经有11人回复
【求助】请各位高手告诉我:这种想法能不能用matlab实现?200金币求助
已经有16人回复
【求助】如何将matlab中的randn函数转变为C语言形式的啊?
已经有3人回复
【求助】帮我编个程啊~C语言,C++,Matlab,VB...都行~
已经有14人回复
点击这里搜索更多相关资源
科研从小木虫开始,人人为我,我为人人
相关版块跳转
第一性原理
量子化学
计算模拟
分子模拟
仿真模拟
程序语言
我要订阅楼主
dubo
的主题更新
1
1/1
返回列表
如果回帖内容含有宣传信息,请如实选中。否则帐号将被全论坛禁言
普通表情
龙
兔
虎
猫
百度网盘
|
360云盘
|
千易网盘
|
华为网盘
在新窗口页面中打开自己喜欢的网盘网站,将文件上传后,然后将下载链接复制到帖子内容中就可以了。
信息提示
关闭
请填处理意见
关闭
确定