zoukankan      html  css  js  c++  java
  • FVCOM泥沙模块河流边界处理

    简介

    入流河流携带泥沙可以按照节点和边界两种形式给定,这两种方法都是在相关的节点上进行直接赋值,并不能保证进入计算域内泥沙总体积。

    相关设置

    XX_run.nml 河流参数设置

     &NML_RIVER_TYPE
     RIVER_NUMBER    = 101,
     RIVER_TS_SETTING        = 'specified'
     RIVER_INFLOW_LOCATION   = 'node'
    

    XX_sediment.inp 泥沙参数设置

    SED_PTSOURCE = T
    

    相关变量

    variable type meaning
    NUMQBC_GL integer GLOBAL NUMBER OF FRESHWATER INFLOW NODES (RIVERS)
    NUMQBC integer LOCAL NUMBER OF FRESHWATER INFLOW NODES
    sed(i)%cdis(1:numqbc) real(sp), allocatable :: & allocate(sed(i)%cdis(500 )) 河流入流节点泥沙边界给定值

    河流入流边界

    入流边界处理
    mod_sed.F: Advance_Sed

      if(sed_source .and. .not. oned_model)then
        do i=1,nsed
          call bcond_scal_PTsource(sed(i)%conc, &
                                   sed(i)%cnew, &
                                   sed(i)%cdis) 
        end do
      endif
    

    函数bcond_scal_PTsource中直接给边界节点赋值

    mod_scal: Bcond_Scal_PTsource

      if(RIVER_TS_SETTING == 'specified') then
        if(numqbc > 0) then
          if(RIVER_INFLOW_LOCATION == 'node') then
            do i=1,numqbc
              j11=inodeq(i)
              do k=1,kbm1
                fn(j11,k)=fdis(i)
              end do
            end do
          else if(RIVER_INFLOW_LOCATION == 'edge') then
            do i=1,numqbc
              j11=n_icellq(i,1)
              j22=n_icellq(i,2)
              do k=1,kbm1
                fn(j11,k)=fdis(i)
                fn(j22,k)=fdis(i)
              end do
            end do
          end if
        end if
      end if
    
      return
    
  • 相关阅读:
    html悬停文字
    在线表单验证
    无法定位ul列表的下拉选项
    HDU 4576 Robot(概率dp+滚动数组)
    HDU 4405 Aeroplane chess(期望dp)
    CodeForces 401C Team(简单构造)
    POJ 2253 Frogger(最短路Dijkstra or flod)
    HDU 4763 Theme Section(kmp)
    【JZOJ5462】好文章【哈希】
    【JZOJ5462】好文章【哈希】
  • 原文地址:https://www.cnblogs.com/li12242/p/5114429.html
Copyright © 2011-2022 走看看