文件名称:mpi_wave
介绍说明--下载内容均来自于网络,请自行研究使用
mpi fortran wave equation solver code
!cc MAIN is the main program for WAVE_MPI.
!c
!c Discussion:
!c
!c WAVE_MPI solves the wave equation in parallel using MPI.
!c
!c Discretize the equation for u(x,t):
!c d^2 u/dt^2 - c^2 * d^2 u/dx^2 = 0 for 0 < x < 1, 0 < t
!c with boundary conditions:
!c u(0,t) = u0(t) = sin ( 2 * pi * ( 0 - c * t ) )
!c u(1,t) = u1(t) = sin ( 2 * pi * ( 1 - c * t ) )
!c and initial conditions:
!c u(x,0) = g(x,t=0) = sin ( 2 * pi * ( x - c * t ) )
!c dudt(x,0) = h(x,t=0) = - 2 * pi * c * cos ( 2 * pi * ( x - c * t ) )
!c
!c by:
!c
!c alpha = c * dt / dx.
!c
!c U(x,t+dt) = 2 U(x,t) - U(x,t-dt)
!c + alpha^2 ( U(x-dx,t) - 2 U(x,t) + U(x+dx,t) ).
!c
!c Licensing:
!c
!c This code is distributed under the GNU LGPL license.
!c
!c Modified:
!c
!c 17 November 2013
!c
!c Author:
!c
reza-mpi fortran wave equation solver code
!cc MAIN is the main program for WAVE_MPI.
!c
!c Discussion:
!c
!c WAVE_MPI solves the wave equation in parallel using MPI.
!c
!c Discretize the equation for u(x,t):
!c d^2 u/dt^2 - c^2 * d^2 u/dx^2 = 0 for 0 < x < 1, 0 < t
!c with boundary conditions:
!c u(0,t) = u0(t) = sin ( 2 * pi * ( 0 - c * t ) )
!c u(1,t) = u1(t) = sin ( 2 * pi * ( 1 - c * t ) )
!c and initial conditions:
!c u(x,0) = g(x,t=0) = sin ( 2 * pi * ( x - c * t ) )
!c dudt(x,0) = h(x,t=0) = - 2 * pi * c * cos ( 2 * pi * ( x - c * t ) )
!c
!c by:
!c
!c alpha = c * dt / dx.
!c
!c U(x,t+dt) = 2 U(x,t) - U(x,t-dt)
!c + alpha^2 ( U(x-dx,t) - 2 U(x,t) + U(x+dx,t) ).
!c
!c Licensing:
!c
!c This code is distributed under the GNU LGPL license.
!c
!c Modified:
!c
!c 17 November 2013
!c
!c Author:
!c
reza
!cc MAIN is the main program for WAVE_MPI.
!c
!c Discussion:
!c
!c WAVE_MPI solves the wave equation in parallel using MPI.
!c
!c Discretize the equation for u(x,t):
!c d^2 u/dt^2 - c^2 * d^2 u/dx^2 = 0 for 0 < x < 1, 0 < t
!c with boundary conditions:
!c u(0,t) = u0(t) = sin ( 2 * pi * ( 0 - c * t ) )
!c u(1,t) = u1(t) = sin ( 2 * pi * ( 1 - c * t ) )
!c and initial conditions:
!c u(x,0) = g(x,t=0) = sin ( 2 * pi * ( x - c * t ) )
!c dudt(x,0) = h(x,t=0) = - 2 * pi * c * cos ( 2 * pi * ( x - c * t ) )
!c
!c by:
!c
!c alpha = c * dt / dx.
!c
!c U(x,t+dt) = 2 U(x,t) - U(x,t-dt)
!c + alpha^2 ( U(x-dx,t) - 2 U(x,t) + U(x+dx,t) ).
!c
!c Licensing:
!c
!c This code is distributed under the GNU LGPL license.
!c
!c Modified:
!c
!c 17 November 2013
!c
!c Author:
!c
reza-mpi fortran wave equation solver code
!cc MAIN is the main program for WAVE_MPI.
!c
!c Discussion:
!c
!c WAVE_MPI solves the wave equation in parallel using MPI.
!c
!c Discretize the equation for u(x,t):
!c d^2 u/dt^2 - c^2 * d^2 u/dx^2 = 0 for 0 < x < 1, 0 < t
!c with boundary conditions:
!c u(0,t) = u0(t) = sin ( 2 * pi * ( 0 - c * t ) )
!c u(1,t) = u1(t) = sin ( 2 * pi * ( 1 - c * t ) )
!c and initial conditions:
!c u(x,0) = g(x,t=0) = sin ( 2 * pi * ( x - c * t ) )
!c dudt(x,0) = h(x,t=0) = - 2 * pi * c * cos ( 2 * pi * ( x - c * t ) )
!c
!c by:
!c
!c alpha = c * dt / dx.
!c
!c U(x,t+dt) = 2 U(x,t) - U(x,t-dt)
!c + alpha^2 ( U(x-dx,t) - 2 U(x,t) + U(x+dx,t) ).
!c
!c Licensing:
!c
!c This code is distributed under the GNU LGPL license.
!c
!c Modified:
!c
!c 17 November 2013
!c
!c Author:
!c
reza
(系统自动生成,下载前可以参看下载内容)
下载文件列表
mpi_test.f90