24小时热门版块排行榜    

查看: 2579  |  回复: 7

569340337

银虫 (小有名气)

[交流] 求助:(拟)弧长算法(pseudo arclength method) 程序 已有3人参与

我需要求解一个非线性方程组
需用到拟弧长的程序(matlab,fortran等皆可)
谢谢!
回复此楼

» 收录本帖的淘帖专辑推荐

收藏

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

即使输掉了一切,也不能输掉微笑!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pippi6

铁杆木虫 (著名写手)

工程和科学数值计算咨询


小木虫: 金币+0.5, 给个红包,谢谢回帖
问题提的含混。什么形式的输入也不说。曲线的表达是一系列平面点的坐标吗?还是空间点的坐标?这个问题并不简单啊。
2楼2013-06-08 11:40:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

569340337

银虫 (小有名气)

引用回帖:
2楼: Originally posted by pippi6 at 2013-06-08 11:40:46
问题提的含混。什么形式的输入也不说。曲线的表达是一系列平面点的坐标吗?还是空间点的坐标?这个问题并不简单啊。

空间点的坐标。我用预测-矫正的牛顿迭代编程求解,过程中出现分岔点,不知道如何判断分岔点和判别分岔方向?你是否遇到过这类问题?非线性方程组求解!谢谢!
即使输掉了一切,也不能输掉微笑!
3楼2013-06-08 21:23:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

michyang

银虫 (正式写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
加我QQ吧我给你,21172485
4楼2013-06-08 21:39:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pippi6

铁杆木虫 (著名写手)

工程和科学数值计算咨询


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
3楼: Originally posted by 569340337 at 2013-06-08 21:23:40
空间点的坐标。我用预测-矫正的牛顿迭代编程求解,过程中出现分岔点,不知道如何判断分岔点和判别分岔方向?你是否遇到过这类问题?非线性方程组求解!谢谢!...

解决了吗?我有一个2维的fortran subroutine,你要是感兴趣可以给你。不知道你为什么谈牛顿迭代编程?看不出为什么要解方程。不就是弧长吗?有直接的公式。
5楼2013-06-10 11:23:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

569340337

银虫 (小有名气)

引用回帖:
5楼: Originally posted by pippi6 at 2013-06-10 11:23:53
解决了吗?我有一个2维的fortran subroutine,你要是感兴趣可以给你。不知道你为什么谈牛顿迭代编程?看不出为什么要解方程。不就是弧长吗?有直接的公式。...

问题还没有解决。你的程序能否发到我的邮箱?kylinme@163.com
即使输掉了一切,也不能输掉微笑!
6楼2013-06-10 13:37:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pippi6

铁杆木虫 (著名写手)

工程和科学数值计算咨询


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
6楼: Originally posted by 569340337 at 2013-06-10 13:37:33
问题还没有解决。你的程序能否发到我的邮箱?kylinme@163.com。...

就这里吧,注意N必须是偶数。

! flag
subroutine arc_length_new(x,y,len,n1,n2)
  integer :: i,n1,n2,i0,i1,i2
  real*8, dimension(n1:n2) :: x,y,len
  real*8 :: xt1,yt1,st1,xt2,yt2,st2,xtt,ytt,stt1,stt2,k1,k2,dt1,dt2 &
       ,cc1,cc2


  len(n1)=0
  do i=n1+2,n2,2
     i0=i-2
     i1=i-1
     i2=i

     xt1=x(i1)-x(i0)
     yt1=y(i1)-y(i0)
     st1=sqrt(xt1*xt1+yt1*yt1)
     xt2=x(i2)-x(i1)
     yt2=y(i2)-y(i1)
     st2=sqrt(xt2*xt2+yt2*yt2)
     xtt=x(i2)-2*x(i1)+x(i0)
     ytt=y(i2)-2*y(i1)+y(i0)
     stt1=(xt1*xtt+yt1*ytt)/st1
     stt2=(xt2*xtt+yt2*ytt)/st2

     k1=(xtt*xtt+ytt*ytt)*st1*st1-(xt1*xtt+yt1*ytt)**2
     if(abs(k1) < 1.d-14*st1**4) k1=0
     if(k1 < 0.d0) then
        print*,' i=',i,' k1=',k1
        stop
     else
        k1=sqrt(k1)/st1**3
     end if
     k2=(xtt*xtt+ytt*ytt)*st2*st2-(xt2*xtt+yt2*ytt)**2
     if(abs(k2) < 1.d-14*st2**4) k2=0
     if(k2 < 0.d0) then
        print*,' i=',i,' k2=',k2
        stop
     else
        k2=sqrt(k2)/st2**3
     end if

     !     k1=sqrt((xtt*xtt+ytt*ytt)*st1*st1-(xt1*xtt+yt1*ytt)**2)/st1**3
     !     k2=sqrt((xtt*xtt+ytt*ytt)*st2*st2-(xt2*xtt+yt2*ytt)**2)/st2**3
     dt1=st1*k1/2
     if(dt1==0.d0) then
        cc1=1.d0
     else
        cc1=dt1/sin(dt1)
     end if

     dt2=st2*k2/2
     if(dt2==0.d0) then
        cc2=1.d0
     else
        cc2=dt2/sin(dt2)
     end if

     len(i1)=len(i0)+st1*cc1
     len(i2)=len(i1)+st2*cc2
     !     len(i1)=len(i0)+st1+stt1/2
     !     len(i2)=len(i1)+st2+stt2/2
     !     len(i1)=len(i0)+st1
     !     len(i2)=len(i1)+st2
  end do

end subroutine arc_length_new
7楼2013-06-11 12:10:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

坚不可摧111

新虫 (正式写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
你好,请问你的问题解决了吗

发自小木虫IOS客户端
8楼2019-01-24 21:18:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 569340337 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 HFw0lei2R37i 2026-08-14 6/300 2026-08-14 22:32 by 4wMiSEwB6436
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +6 Tide man 2026-08-14 7/350 2026-08-14 18:36 by 正能量1斤
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +6 majunge000 2026-08-11 8/400 2026-08-14 14:44 by 医学老男孩
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +23 Lanmanbaby 2026-08-09 37/1850 2026-08-14 13:40 by Equinoxhua
[基金申请] 好奇怪的filecode +6 布布和一二 2026-08-08 7/350 2026-08-14 13:38 by Equinoxhua
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +10 Tide man 2026-08-10 11/550 2026-08-14 10:30 by 沁言学术
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +11 yufeiwaner 2026-08-09 13/650 2026-08-12 08:17 by yufeiwaner
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] fileCode有新解读? +10 Tide man 2026-08-08 18/900 2026-08-09 12:55 by 仁砚薪传
信息提示
请填处理意见