| 查看: 260 | 回复: 0 | ||
冉冉升起93新虫 (初入文坛)
|
[求助]
不能求出解析解的方程求数值解,新手求指导
|
|
#include<stdio.h> #include<math.h> #define step 0.01 void fm(); double fs(double); double ki; FILE *fp1; main() { fp1=fopen("fig2a.txt","w" ;ki=0.0; fm(); fclose(fp1); fp1=fopen("fig2b.txt","w" ;ki=1000.0; fm(); fclose(fp1); fp1=fopen("fig2c.txt","w" ;ki=3000.0; fm(); fclose(fp1); fp1=fopen("fig2d.txt","w" ;ki=6000.0; fm(); fclose(fp1); } //////////////////////////////////////////////////////////////////// void fm() { float a; double t=0.0; double a0=0.01; long int i; fprintf(fp1,"t\t a\n",t,a); for(i=0;i<=150;i++)//对时间t的循环 { //a=a0+fs(a0)*step; double result; double ks=0.000001, n0=1000,i0=3000,k=200; double A,B,C,res1,res2,res3,res4,res,m,mn,a; //for(i=0;i<1000;i++)//a { A=(k/ki)*((ki+i0)/k*(1+k*n0)-i0/(1+k*ki+k*n0)); B=(1+i0/ki)/(1+k*n0); C=-i0/(ki*(1+k*ki+k*n0)); res1=pow((1+k*a),(-A/k)); res2=pow((n0-a),B); res3=pow((n0-a+ki),C); res4=exp(-ks*t-m); res=res1*res2*res3; mn=res-res4; if(mn<0.00001) { fprintf(fp1,"%f\t %f\n",t,a); } a=a+0.01; } t=t+step; a0=a; |
» 猜你喜欢
今年春晚有几个节目很不错,点赞!
已经有6人回复
基金正文30页指的是报告正文还是整个申请书
已经有3人回复
球磨粉体时遇到了大的问题,请指教!
已经有15人回复
过年走亲戚时感受到了所开私家车的鄙视链
已经有5人回复
情人节自我反思:在爱情中有过遗憾吗?
已经有5人回复
江汉大学解明教授课题组招博士研究生/博士后
已经有3人回复














;
回复此楼