24小时热门版块排行榜    

查看: 501  |  回复: 0

hbxcyys

铜虫 (小有名气)

[求助] Fortran转化 C++

1、试将下列描述大气对流的洛伦兹微分方程组用C 语言实现出来,要求编写出完整的程序代码。(时间步长取0.001)
   其中参数值分别为: ,
=====================================================================
2、罗斯勒设计了一个新的吸引子方程组,如下:
  其中参数值分别为: ,
时间步长取0.001。试将该微分方程组用C 语言实现出来,要求编写出完整的程序代码。
==============================================================================
3.将杜芬方程组用C 语言实现出来,要求编写出完整的程序代码。时间步长取0.001。



下面是用Fortran 语言编写的程序代码,拜托转化为C++语言代码。




program lorenz
implicit none
integer  N
real x, y, z, dx, dy, dz, dt
Real r, sigma, b
integer  i,j
   sigma=10.0;b=8/3; N=1E6;dt=0.001; r=28.0
open (unit=1,file='1.dat',status='unknown')

x=0.10;  y=0.30;  z=0.2

do         i=1,100000         
                dx=dt*( sigma*(y-x) )
        dy=dt*(  r*x-y-x*z   )
        dz=dt*(  x*y - b*z    )
        x=x+dx
        y=y+dy
        z=z+dz
   if  (         MOD( i, 20 )==0) then          
   write (1,'(1x, 3f12.5)')   x, y, z
   end if
end do
  close (1)       
end program lorenz
  
================================================================!!!
program rossler

implicit none
integer  N
integer, parameter:: NN=7
real x, y, z, dx, dy, dz, dt
Real a, b, c, x_c(NN),c1,c2
integer  i,j,k
! The values of parameters about the sy(i)s
character aa*1,  bb*1, cc*2
!------------------------------------------------------------------------------------!
a=0.2; b=0.2; N=1E6;  dt=0.01; !c=2.6 !,3.5, 4.1, 4.18, 4.21, 4.6, 5.7
x_c(1:7) =(/2.6, 3.5, 4.1, 4.18, 4.21, 4.6, 5.7/)  
!------------------------------------------------------------------------------------!
  x=0.10;   y=0.30;   z=0.2

do k=1,NN
           c=x_c(k)
         c1=(c*100)/100
         c2=c*100.0-100*int(c)
        write(aa, '(i1.1)')  int(k)       
    write(bb, '(i1.1)')  int(c1)
        write(cc, '(i2.2)')  int(c2*1.01)
   open (unit=1,file='Data\rossler_c'//aa//'='//bb//'.'//cc//'.dat',status='unknown')
  do         i=1,40000         
        dx=dt*(  -y-z      )
        dy=dt*(  x+a*y     )
        dz=dt*(  b+(x-c)*z  )
        x=x+dx
        y=y+dy
        z=z+dz
      if(         MOD( i, 40 )==0   ) then          
         write (1,'(1x, 3f12.5)')   x, y, z
      end if
   end do
   
  close (1)
   
  end do
end program rossler


integer  i, j, ii
character  aa*1, bb*1, cc*2
! The values of parameters about the sy(i)s
  pi=3.14; N=1E6
  x_k(1:8)=(/0.5, 0.7, 0.9, 1.0, 1.2, 1.3, 1.4, 1.5/)

do ii=1, NN
   k=x_k(ii)
   k1=(k*10.0)/10
   k2=k*10.0-10*int(k)
        write(aa, '(i1.1)')  ii
    write(bb, '(i1.1)')  int(k1)
        write(cc, '(i1.1)')  int(k2*1.01)
open (unit=1,file='Data\bzys_k'//aa//'='//bb//'.'//cc//'.dat',status='unknown')         

do j=1, 20
  x_0(j)=2*pi*j/20
  y_0(j)=1.0*pi

do         i=1,100000
        x(1)=x_0(j)
        y(1)=y_0(j)

    if( x(i)>=2*pi ) then
      x(i)=x(i)-2*pi
        else if( x(i)<=0.0 ) then
          x(i)=x(i)+2*pi
   end if
             
    if( y(i)>=2*pi ) then
     y(i)=y(i)-2*pi
        else if( y(i)<=0.0 ) then
          y(i)=y(i)+2*pi
    end if       
       
            dx=dt* y
        dy=dt*(  k*x-x**3     )
        
        x=x+dx
        y=y+dy
        
     if  (         MOD( i, 40 )==0) then          
          write (1,'(1x, 2f12.5)')  x,          y
     end if
end do
end do
  close (1)       
end do
end program duff
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

找到一些相关的精华帖子,希望有用哦~

科研从小木虫开始,人人为我,我为人人
相关版块跳转 我要订阅楼主 hbxcyys 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 基金啊基金 +3 longfie172 2026-08-20 3/150 2026-08-21 00:04 by wuchongjun
[基金申请] 让我中一个面上吧! +8 大萍1987 2026-08-20 10/500 2026-08-20 21:48 by 大萍1987
[基金申请] 言之凿凿,明天官网会通知放榜? +15 医学老男孩 2026-08-20 17/850 2026-08-20 20:35 by CaoLG
[基金申请] 时间戳又变了 +12 wuchongjun 2026-08-20 17/850 2026-08-20 20:05 by spzhao
[基金申请] 时间戳变了,能看出什么问题? +18 基诺咪客 2026-08-17 23/1150 2026-08-20 17:19 by Godzela
[基金申请] 放榜前的不淡定 40+3 snowwithsea 2026-08-19 12/600 2026-08-20 15:56 by lfy8008
[基金申请] 重要消息,中午系统在维护 +11 yuleib84 2026-08-18 12/600 2026-08-20 11:09 by xskun
[基金申请] filecode,4个jtjc了 +11 ziyangfang 2026-08-19 13/650 2026-08-19 21:28 by aasahr
[教师之家] 为什么余额宝的年化利率越来越低?主要原因有哪些? +5 瞬息宇宙 2026-08-15 5/250 2026-08-19 20:23 by super2002521
[基金申请] 今天放榜没戏了吧 +4 yuleib84 2026-08-19 5/250 2026-08-19 19:52 by hhs666
[基金申请] 今天放榜吗? +14 布布和一二 2026-08-19 15/750 2026-08-19 18:07 by gltch
[基金申请] filecode=后面第一个是大写字母 +10 wangze12014 2026-08-14 12/600 2026-08-19 16:56 by 苦难博士
[基金申请] 2027广东省杰青 +4 奶牛小黑 2026-08-15 10/500 2026-08-19 11:02 by wanfengnew
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +6 Tide man 2026-08-14 7/350 2026-08-19 09:56 by ZJTJZ
[基金申请] 什么时候开奖? +6 CrisMessi 2026-08-18 6/300 2026-08-19 08:06 by Equinoxhua
[基金申请] 明天放榜? +5 Shxjjxjkx 2026-08-18 5/250 2026-08-18 18:14 by -大大大大大-
[论文投稿] 投稿咨询 +4 wwm09 2026-08-17 6/300 2026-08-18 15:36 by wwm09
[基金申请] 时间戳又变了8-15 +14 archvillain 2026-08-15 26/1300 2026-08-18 13:37 by phantomgost
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
信息提示
请填处理意见