请问一下的循环迭代,,执行1.5秒,,算是正常么??有什么好办法优化到毫秒级么? 
NoSteadySolutionIter=100 
size(Elems)=10000 
 
[Fortran] syntaxhighlighter_viewsource syntaxhighlighter_copycode 
do while(iter < NoSteadySolutionIter)
  iter=iter+1
  LastIter=iter
  call IniFrnt
  do k=1,size(Points)
    Points(k).dU=0
  enddo
  do ixelem=1,size(Elems)
    ielem = Front_Order(ixelem)
    if(ielem == 0) cycle
    if(Elems(ielem).infront == 0) cycle
    if(Elems(ielem).tip == PIPE_OBJ) then
      call SteadyPipeMtx(ielem)
    endif
    call FrontU(ielem,LunFrn)
  enddo
  call FrontB(LunFrn)
  call IncVar()
  if (HnorMx <= EpsH .and. QnorMx <= EpsQ .and. OnorMx <= EpsO) then
    if(InitSolution()) then
      call SaveSolutionStage(kstage,curtim)
      call ConvergenceReport(0d0)
      Steady = .true.
      return
    else
      Steady = .false.
      return
    endif
  endif
enddo 
 |