24小时热门版块排行榜    

查看: 1568  |  回复: 14

bohdshen

银虫 (初入文坛)

[交流] 【求助】求助 程序我问题 解决送80金币 已有3人参与

这个非常简单是我太笨 请帮忙看下  如我写有问题  请大侠帮我改写
输入DEN AC已知。 计算POR,初值PORI=0.029
公式如下:
问题:只能计算一小段的POR 再往下就不能算 函数关系表达式无误
提示错误:
run-time error M6201: MATH
- **: DOMAIN error
    未加粗体是该程序的头尾 固定部分,不用改写。粗体部分为我加的程序。


      BLOCK DATA
      IMPLICIT INTEGER*4(I-N)
      INTEGER*2 NUMLOG,IZ, IDC, IZ2
      Character*4 NameI,NameO,NameC
      COMMON /INPC/NOI,NAMEI(2)
      COMMON /OUTC/NOO,NAMEO(1)
      COMMON /CONC/NOC,NAMEC(1)
      COMMON /INP /AC  ,DEN
      COMMON /OUTP/POR
      COMMON /CON /ZZ(1)
      COMMON /UNIT/IU,JU,KU,LU,MU
      COMMON /HD  /DEP,DEPO,SDEP,EDEP,ECC,ICO(20),IWELL(20),
     & NUMLOG,IZ,LOG1(20),STDEP,ENDEP,RLEV,IDC,IZ2,FEET,
     & LOG2(20),IDUM1(118)
      DATA IU,JU,KU,LU,MU/1,2,4,3,0/
      DATA NoI,NoO,NoC/2,1,1/
      DATA NAMEI/'AC  ','DEN '/
      DATA NAMEO/'POR '/
      DATA NAMEC/'PORI'/
      DATA ZZ   /0.029/
      END
      
      Program MyProgram
      
      IMPLICIT INTEGER*4(I-N)
      INTEGER*2 NUMLOG,IZ, IDC, IZ2
      Character*4 NameI,NameO,NameC
      COMMON /INPC/NOI,NAMEI(2)
      COMMON /OUTC/NOO,NAMEO(1)
      COMMON /CONC/NOC,NAMEC(1)
      COMMON /INP /AC  ,DEN
      COMMON /OUTP/POR
      COMMON /CON /PORI
      COMMON /INPB/BUFI(25600)
      COMMON /OUTB/BUFO(25600)
      COMMON /UNIT/IU,JU,KU,LU,MU
      COMMON /HD  /DEP,DEPO,SDEP,EDEP,ECC,ICO(20),IWELL(20),
     & NUMLOG,IZ,LOG1(20),STDEP,ENDEP,RLEV,IDC,IZ2,FEET,
     & LOG2(20),IDUM1(118)
      CALL PART
      CALL RDFLNM
         
      CALL CONST
      CALL IN
      CALL OUT
1     CALL IN
      AS=92414*DEN/(AC**2)
      CALL WASAT(AS,PORI,POR)
  


      CALL OUT
      GOTO 1
      END
      SUBROUTINE WASAT(AS,PORI,POR)
9     AA=(1-PORI)**(3/(1-PORI))
      AM=10.17*((1-AA)**2)
      AN=AS-47.317*AA
      AT=(AM/AN)-PORI
      IF(ABS(AT) .LE. 0.001) THEN
      POR=PORI*100
      ELSE
      PORI=PORI+0.002
      GOTO 9
      ENDIF                                                        
      RETURN                                                                    
      END
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)


resonant(金币+1):感谢回复:-) 2010-05-10 13:54:40
你的公式与你的子程序表达的似乎不是一样的东西呀……

你是求那个公式的值还是别的?
2楼2010-05-10 12:46:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)


resonant(金币+1):感谢建设性指导:-) 2010-05-10 14:11:18
我猜问题可能出在 WASAT 这个子程中,也就是 PORI = PORI + 0.002 这一步,如果 PORI 等于或大于 1 时, AA 这个表达式还有意义吗?

在这一句后面加个判断好了,比如:

IF (PORI .GE. 1.0) STOP

另外,你的 WASAT 这个子程中,修改一下下面两句话:
     
      AA=(1.0-PORI)**(3.0/(1.0-PORI))
      AM=10.17*((1.0-AA)**2.0)
3楼2010-05-10 14:00:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bohdshen

银虫 (初入文坛)

nono2009:建议通过“引用回复该帖”,以便别人收到你的message. 2010-05-10 15:12:05
您好
这个PORI是初始孔隙度
最后POR应该在0~1之间
我做的这段深度内孔隙度POR实际值已经知道在0.09到0.25之间
我开是没用wasat直接写 问题也一样是做了1米就不做了
无加深处是FoRWARD测井软件的固定部分
它是顺序结构 逐点深度计算 后来别人说我直接写怕有冲突 就让我用wasat
我现在因为下午要去开会
所以晚上来探讨您的回复
谢谢
4楼2010-05-10 14:53:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bohdshen

银虫 (初入文坛)

resonant:nano区长已经提示过,不过朋友没有完全理解,必须引用你想要通知的人的言论,才是有效的。引用自己的发言对方还是不会知道... 2010-05-10 21:06:39
引用回帖:
Originally posted by bohdshen at 2010-05-10 14:53:23:
您好
这个PORI是初始孔隙度
最后POR应该在0~1之间
我做的这段深度内孔隙度POR实际值已经知道在0.09到0.25之间
我开是没用wasat直接写 问题也一样是做了1米就不做了
无加深处是FoRWARD测井软件的固定部分
它 ...

首先感谢你
我试验了你的方法 加了stop
确实运行了 但是结果除了开始的1米没有问题
下面的结果都是0
这说明是真的PORI超出了1了吧。。
可是这段范围在结论上应该在0.03到0.3之间才对
这我该怎么修改呢
敬请指教 非常之感谢
5楼2010-05-10 19:46:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)


余泽成(金币+1):谢谢应助! 2010-05-10 20:25:21
你把 WASAT 需要的参数给出来,你现在给出的程序没有办法运行啊……或者你给一个可以运行的,可以反映你的问题的程序……
6楼2010-05-10 19:59:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bohdshen

银虫 (初入文坛)

引用回帖:
Originally posted by snoopyzhao at 2010-05-10 19:59:23:
你把 WASAT 需要的参数给出来,你现在给出的程序没有办法运行啊……或者你给一个可以运行的,可以反映你的问题的程序……

我给你传数据和说明公式,这样可能方便些
qq798858957,或者传给你的邮箱
十分感谢
7楼2010-05-10 21:26:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)


resonant(金币+1):谢谢。 2010-05-10 23:02:23
我给你的信息中有我的信箱。俺没有 QQ……
8楼2010-05-10 21:31:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

★ ★
wangen994(金币+2):非常热心,辛苦了。 2010-05-11 08:42:01
看到了你的数据了。由于时间的关系,还没有来得及仔细研究。但初步的计算结果表明,AT值过小,以致于在0.029~1这样的区间里,所有的值都不能满足 AT 这样的限制要求。

换一种思路看看如何:

如果你确信 POR 在什么样的范围之内,那么以非常小的步长,遍历整个区间,然后以 AT 最小的那个 POR 为你的结果。
9楼2010-05-11 07:48:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

bohdshen(金币+88):感谢你的付出 2010-05-11 10:28:05
下面是修改后的程序,小写字母部分是我改写的。主要的目的在于打印出符合要求的 POR, 对于不能获得的 POR,给出一个提示。

zzz 是一个包括 AC 和 DEN 两列数据的文件。
CODE:
      program main
      open(10,file='zzz',status='old')
      do 5 i=1,509
        read(10,*) ac, den
        pori = 0.029
        AS=92414*DEN/(AC**2)
        CALL WASAT(AS,PORI,POR, ind)
        if(ind .ne. 1) write(*,*) por
5     continue
      END
      SUBROUTINE WASAT(AS,PORI,POR, ind)
      ind = 0
9     AA=(1.0-PORI)**(3.0/(1.0-PORI))
      AM=10.17*((1.0-AA)**2.0)
      AN=AS-47.317*AA
      AT=(AM/AN)-PORI
      IF(ABS(AT) .LE. 0.001) THEN
        POR=PORI*100
      ELSE
        pori=pori+0.000001
        if (pori .ge. .3) then
          write(*,*) 'i can not get the correct value!'
          ind = 1
          return
        endif
        GOTO 9
      ENDIF                                                        
      RETURN
      END

10楼2010-05-11 09:56:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 bohdshen 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 h4CP7TrQR8Lg 2026-08-22 4/200 2026-08-23 20:55 by 0p9y1isJp2jM
[基金申请] 让我中一个面上吧! +12 大萍1987 2026-08-20 15/750 2026-08-23 20:44 by 大萍1987
[基金申请] 2026年的国家社科基金项目通讯评审的新规则与新动向、新挑战 +4 process2012 2026-08-23 5/250 2026-08-23 19:58 by jurkat.1640
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 2JOx3r2CYEgw 2026-08-22 6/300 2026-08-23 19:31 by lXgU0RvNTDC9
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 2JOx3r2CYEgw 2026-08-22 4/200 2026-08-23 19:22 by lXgU0RvNTDC9
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 2JOx3r2CYEgw 2026-08-21 5/250 2026-08-23 14:33 by KM5EcsNQRBPn
[教师之家] 跳槽后在研项目怎么办? +5 简单化xn 2026-08-22 10/500 2026-08-23 12:38 by 简单化xn
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 h4CP7TrQR8Lg 2026-08-22 5/250 2026-08-23 12:09 by LR9qGULyN2ew
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 2JOx3r2CYEgw 2026-08-21 10/500 2026-08-23 07:17 by OEbVnUOu01ol
[论文投稿] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 2JOx3r2CYEgw 2026-08-22 4/200 2026-08-23 04:04 by OEbVnUOu01ol
[论文投稿] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 2JOx3r2CYEgw 2026-08-22 5/250 2026-08-23 03:52 by OEbVnUOu01ol
[论文投稿] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 QTy3jDtz1uLt 2026-08-21 9/450 2026-08-23 03:04 by OEbVnUOu01ol
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 QTy3jDtz1uLt 2026-08-21 11/550 2026-08-23 02:55 by OEbVnUOu01ol
[基金申请] filecode,4个jtjc了 +13 ziyangfang 2026-08-19 16/800 2026-08-22 17:08 by WH3796
[教师之家] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 2JOx3r2CYEgw 2026-08-21 4/200 2026-08-22 16:52 by sunzitan
[基金申请] 人气不行了 +8 fansofjerry 2026-08-21 8/400 2026-08-22 16:30 by zyqchem
[基金申请] 放榜前的不淡定 40+4 snowwithsea 2026-08-19 14/700 2026-08-21 23:51 by cratir
[基金申请] 我面上完蛋了 +7 且听虎啸 2026-08-20 8/400 2026-08-21 12:31 by 酷酷墨镜
[基金申请] 应该是下周三26日公布了吧? +4 哈哈蛤? 2026-08-21 4/200 2026-08-21 10:58 by Vivilian
[基金申请] 基金啊基金 +4 longfie172 2026-08-20 4/200 2026-08-21 08:58 by mark mao
信息提示
请填处理意见