Znn3bq.jpeg
²é¿´: 1648  |  »Ø¸´: 7
±¾Ìû²úÉú 1 ¸ö ³ÌÐòÇ¿Ìû £¬µã»÷ÕâÀï½øÐв鿴

kathy2008

ľ³æ (ÕýʽдÊÖ)

[ÇóÖú] ÈçºÎ´Ó¸ß˹Êä³öÎļþ¿ìËÙÌá³ö pai ¹ìµÀÐÅÏ¢¡£

ÈçÌâ¡£´Ó¸ß˹Êä³öÎļþÌá³öÁËeigenvectorÄÇÒ»²¿·Ö³öÀ´£¬¼´¸½¼þ1¡£ÏÖÔÚÐèÒªµÃµ½ pai ¹ìµÀÐÅÏ¢¡£¼´¸½¼þ2¡£ ¸½¼þ2 ¶ÔÓ¦ÓÚ¸½¼þ1µÄ32ºÅ£¬35ºÅ£¬38ºÅ£¬39ºÅ£¬40ºÅ£¬41ºÅ¹ìµÀ£¨Õ¼¾Ý¹ìµÀ£©£¬42ºÅÒ»Ö±µ½47ºÅ£¨·ÇÕ¼¾Ý¹ìµÀ£©µÄ2PxÖµ¡£ÇóһС³ÌÐò¡£ÇëÖ¸µã¡£Ð»Ð»¡£
»Ø¸´´ËÂ¥
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

snoopyzhao

ÖÁ×ðľ³æ (Ö°Òµ×÷¼Ò)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

¡ï ¡ï
ben_ladeng(½ð±Ò+2): ºÜÏêϸ£¬´ýÂ¥Ö÷ÆÀ¶¨ºó½±Àø³ÌÐòÇ¿Ìû 2011-06-18 17:42:21
kathy2008(½ð±Ò+10): 2011-06-19 13:00:43
΢³¾¡¢ÃÎÏë(³ÌÐòÇ¿Ìû+1): 2011-06-19 17:04:28
´ó¸ÅÕâ¸öÑù×Ó¡£Ö»ÊÇÐèÒªÊÖ¹¤ÊäÈë¹ìµÀºÅ£¨ÕâÑù¿ÉÄÜÁé»îһЩ£©£¬Ã¿´ÎÊäÈëÒ»¸ö¹ìµÀÐòºÅ£¬»Ø³µ£¬ÊäÈë 0 Ôò½áÊøÕû¸ö³ÌÐò¡­¡­
CODE:
program ei
real, dimension(:,:), allocatable :: px,ppx
character(len=256) :: line
character(len=40) :: fm
integer :: nrow, ncol, i, j, k, ios

open(unit=12, file='eigenvector.out', status='old')
open(unit=13, file='2px.out', status='new')

do
   read(12,'(a)', iostat=ios) line
   if (ios /= 0) exit
   if (index(line,'EIGENVALUES') /= 0) then
      nrow=0
      ncol=0
      do
         read(12,'(a)', iostat=ios) line
         if (ios /= 0) exit
         if (line(1:4) == '    ') exit
         ncol=ncol+1
         if (index(line, '2PX') /= 0) nrow=nrow+1
      end do
      exit
   end if
end do

!write (*,*) nrow, ncol
rewind (12)

allocate(px(nrow,ncol),ppx(nrow,ncol))

i=0
j=0
do
   read(12,'(a)', iostat=ios) line
   if (ios /= 0) exit
   if (i == nrow) then
       i=0
       j=j+n
   end if
   if (index(line, '2PX') /= 0) then
       line = line(21:)
!      write(*,*) trim(line)
       i=i+1
       n = len_trim(line)/10
       write(fm,'(a,i0,a)') '(', n, 'f10.5)'
!      write(*,*) j
       read(line,fm) px(i,(j+1):(j+n))
   end if
end do

k=0
do
   write(*,*) 'please input a number between 1 and ', nrow, 'end the program by 0.'
   read(*,*) i
   if(i==0) exit
   k=k+1
   ppx(:,k) = px(:,i)
end do

!write(*,*) k/5, mod(k,5)

if (k>=5) then
   do j=1,k/5
      do i=1,nrow
         write(13,'(5f10.5)') ppx(i,(j-1)*5+1:j*5)
      end do
      write(13,*)
   end do
end if
if (mod(k,5) /=0) then
   write(fm,'(a,i0,a)') '(', mod(k,5), 'f10.5)'
   do i=1,nrow
      write(13, fm) ppx(i,(k/5*5+1):k)
   end do
end if

end program ei

2Â¥2011-06-18 16:41:08
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

kathy2008

ľ³æ (ÕýʽдÊÖ)

¡ï
dubo(½ð±Ò+1): »¶Ó­³£À´³ÌÐòÓïÑÔ°æÌÖÂÛ 2011-07-31 13:36:05
ÒýÓûØÌû:
Originally posted by snoopyzhao at 2011-06-18 16:41:08:
´ó¸ÅÕâ¸öÑù×Ó¡£Ö»ÊÇÐèÒªÊÖ¹¤ÊäÈë¹ìµÀºÅ£¨ÕâÑù¿ÉÄÜÁé»îһЩ£©£¬Ã¿´ÎÊäÈëÒ»¸ö¹ìµÀÐòºÅ£¬»Ø³µ£¬ÊäÈë 0 Ôò½áÊøÕû¸ö³ÌÐò¡­¡­

[code]
program ei
real, dimension(:,, allocatable :: px,ppx
character(len=256 ...

ÀûÓøóÌÐòÌáÈ¡¦Ð¹ìµÀÐÅÏ¢£¬±¨´í¡£ÐÅÏ¢ÈçÏÂ
At line 48 of file eigen-pai-nc3h7-r2.f
Fortran runtime error: Bad value during floating point read

googleҲûÓÐÕÒµ½Ó¦¶ÔÖ®²ß£¬Çë¸ßÊÖÖ¸µã¡£
3Â¥2011-07-03 15:06:57
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

snoopyzhao

ÖÁ×ðľ³æ (Ö°Òµ×÷¼Ò)

¡ï
dubo(½ð±Ò+1): »¶Ó­³£À´³ÌÐòÓïÑÔ°æÌÖÂÛ 2011-07-31 13:36:26
ÄãµÄ .out ÎļþÊÇÕ¦Éú³ÉµÄ£¬Õâ´ÎµÄÕâ¸öÎļþ±ÈÉϴεÄÎļþÿһÐÐÇ°Ãæ¶àÁËÒ»¸ö¿Õ¸ñ¡­¡­

ËùÒÔ£¬Äã°Ñ³ÌÐòÖУº
CODE:
line = line(21:)

¸Ä³É
CODE:
line = line(22:)

¾Í¿ÉÒÔÁË¡­¡­
4Â¥2011-07-03 22:28:17
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

snoopyzhao

ÖÁ×ðľ³æ (Ö°Òµ×÷¼Ò)

¡ï
dubo(½ð±Ò+1): »¶Ó­³£À´³ÌÐòÓïÑÔ°æÌÖÂÛ 2011-07-31 13:36:35
ÕâÑù¿ÉÄܸüºÃһЩ£º
CODE:
      program ei
      implicit none
      real, dimension(:,:), allocatable :: px,ppx
      character(len=256) :: line
      character(len=40) :: fm
      integer :: nrow, ncol, i, j, k, ios, n, m
      
      open(unit=12, file='nc3h7-r2-sto-eiv.out', status='old')
      open(unit=13, file='nc3h7-r2-sto-pai.out', status='new')
      
      do
         read(12,'(a)', iostat=ios) line
         if (ios /= 0) exit
         if (index(line,'Eigenvalues') /= 0) then
            nrow=0
            ncol=0
            do
               read(12,'(a)', iostat=ios) line
               if (ios /= 0) exit
               if (line(1:4) == '    ') exit
               ncol=ncol+1
               if (index(line, '2PZ') /= 0) nrow=nrow+1
            end do
            exit
         end if
      end do
      
      write (*,*) nrow, ncol
      rewind (12)
      
      allocate(px(nrow,ncol),ppx(nrow,ncol))
      
      i=0
      j=0
      do
         read(12,'(a)', iostat=ios) line
         if (ios /= 0) exit
         if (i == nrow) then
             i=0
             j=j+n
         end if
         if (index(line, '2PZ') /= 0) then
             line = line(21:)
!            write(*,*) trim(line)
             i=i+1
             n = len_trim(line)/10
             m = mod(len_trim(line),10)
!            write (*,*) m, n
             if (m /= 0) then
                write(fm,'(a,i0,a,i0,a)') '(tr',m,',',n,'f10.5)'
             else
                write(fm,'(a,i0,a)') '(',n,'f10.5)'
             end if
!            write (*,*) fm
!            write(*,*) j
             read(line,fm) ppx(i,(j+1):(j+n))
         end if
      end do
      
      k=0
      do
         write(*,*) 'please input a number between 1 and ',nrow,',
     & end the program by 0.'
         read(*,*) i
         if(i==0) exit
         k=k+1
         ppx(:,k) = px(:,i)
      end do
      
      !write(*,*) k/5, mod(k,5)
      
      if (k>=5) then
         do j=1,k/5
            do i=1,nrow
               write(13,'(5f10.5)') ppx(i,(j-1)*5+1:j*5)
            end do
            write(13,*)
         end do
      end if
      if (mod(k,5) /=0) then
         write(fm,'(a,i0,a)') '(', mod(k,5), 'f10.5)'
         do i=1,nrow
            write(13, fm) ppx(i,(k/5*5+1):k)
         end do
      end if
      
      end program ei

5Â¥2011-07-03 22:59:20
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

kathy2008

ľ³æ (ÕýʽдÊÖ)

¡ï
dubo(½ð±Ò+1): »¶Ó­³£À´³ÌÐòÓïÑÔ°æÌÖÂÛ 2011-07-31 13:36:56
ÒýÓûØÌû:
Originally posted by snoopyzhao at 2011-07-03 22:28:17:
ÄãµÄ .out ÎļþÊÇÕ¦Éú³ÉµÄ£¬Õâ´ÎµÄÕâ¸öÎļþ±ÈÉϴεÄÎļþÿһÐÐÇ°Ãæ¶àÁËÒ»¸ö¿Õ¸ñ¡­¡­

ËùÒÔ£¬Äã°Ñ³ÌÐòÖУº
CODE:
line = line(21:)

¸Ä³É
CODE:
line = line(22:)

¾Í¿ÉÒÔÁË¡­¡­

ÔËÐк󱨴íÐÅÏ¢ÈçÏÂ:
*** glibc detected *** ./a.out: double free or corruption (out): 0x00000000079e2980 ***
======= Backtrace: =========
/lib64/libc.so.6[0x3e64871ce2]
/lib64/libc.so.6(cfree+0x8c)[0x3e6487590c]
./a.out[0x4012c5]
./a.out[0x4019de]
/lib64/libc.so.6(__libc_start_main+0xf4)[0x3e6481d974]
./a.out[0x400a99]
6Â¥2011-07-04 07:23:29
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

snoopyzhao

ÖÁ×ðľ³æ (Ö°Òµ×÷¼Ò)

¡ï
jjdg(½ð±Ò+1): ¸Ðл²ÎÓë 2011-07-04 12:46:36
ÎÒ²Å×¢Òâµ½£¬Äã°ÑÎÒÔÚ¶þÂ¥¸ø³öµÄ³ÌÐòÖеÄ
CODE:
read(line,fm) px(i,(j+1):(j+n))

¸Ä³ÉÁË
CODE:
read(line,fm) ppx(i,(j+1):(j+n))

º¦µÃÎÒŪÁ˰ëÌì²ÅÖªµÀΪɶ³öÀ´µÄ½á¹û×ÜÊDz»¶Ô¡£
7Â¥2011-07-04 09:48:55
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

snoopyzhao

ÖÁ×ðľ³æ (Ö°Òµ×÷¼Ò)

¡ï ¡ï
jjdg(½ð±Ò+2): ÐÁ¿àÁË 2011-07-04 12:46:22
ÁíÍ⣬ԭ³ÌÐòÖÐ
CODE:
write(*,*) 'please input a number between 1 and ', nrow, 'end the program by 0.'

Ó¦¸Ã¸ÄΪ
CODE:
write(*,*) 'please input a number between 1 and ', ncol, 'end the program by 0.'

8Â¥2011-07-04 09:50:20
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ kathy2008 µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 308Çóµ÷¼Á +5 VvvvL 2026-04-10 5/250 2026-04-12 10:17 by babysonlkd
[¿¼ÑÐ] Çóµ÷¼Á£¬262»úеר˶ +8 àÅyyl 2026-04-08 8/400 2026-04-12 02:31 by Çï¶¹²ËÑ¿
[¿¼ÑÐ] 332Çóµ÷¼Á +14 ½¶½¶123 2026-04-10 14/700 2026-04-12 00:27 by À¶ÔÆË¼Óê
[¿¼ÑÐ] Çóµ÷¼Á +6 µçÆø300Çóµ÷¼Á²» 2026-04-08 6/300 2026-04-11 20:14 by ÄæË®³Ë·ç
[¿¼ÑÐ] 285Çóµ÷¼Á +8 ¶ñ·¨´ó¶þµÄÆøÎ¶ß 2026-04-05 11/550 2026-04-11 11:28 by ×ÏêØ×ÏÆå
[¿¼ÑÐ] 085402ͨÐŹ¤³Ìµ÷¼Á£¬ÓÐ4Ïîѧ¿Æ¾ºÈü¹ú½±£¨µçÈü¹ú¶þ£©£¬Ë¶Ê¿Ñо¿Éúµ÷¼Á×Ô¼öÐÅ¡£ +5 mÓÀo²»vÑÔoÆúm 2026-04-09 5/250 2026-04-11 09:33 by zhq0425
[¿¼ÑÐ] ±¾9 Ò»Ö¾Ô¸Î÷¹¤´ó085601 324Çóµ÷¼Á +5 wysyjs25 2026-04-10 5/250 2026-04-10 16:57 by luoyongfeng
[¿¼ÑÐ] ³õÊÔ261 +3 AshtÉÙ 2026-04-10 6/300 2026-04-10 16:38 by AshtÉÙ
[¿¼ÑÐ] Çൺ¿Æ¼¼´óѧ²ÄÁÏѧԺ£¬»·¾³Ñ§Ôºµ÷¼Á²¹Â¼4ÔÂ10ÈÕÒÔǰ¶¼¿ÉÒÔ +3 1Çà¿Æ´ó¡£ 2026-04-09 5/250 2026-04-10 09:58 by ôæôæÒ»ÊéÉú
[¿¼ÑÐ] Ò»Ö¾Ô¸Öпƴó070300»¯Ñ§£¬314·ÖÇóµ÷¼Á +12 wakeluofu 2026-04-09 12/600 2026-04-10 09:57 by liuhuiying09
[¿¼ÑÐ] ¿¼ÑжþÂÖµ÷¼Á +8 ¹ÊÈË?? 2026-04-09 8/400 2026-04-10 09:44 by Çà÷duoduo
[¿¼ÑÐ] 070300»¯Ñ§ Çóµ÷¼Á +13 73372112 2026-04-08 13/650 2026-04-09 20:22 by maddjdld
[¿¼ÑÐ] 332£¬085601Çóµ÷¼Á +12 ydfyh 2026-04-09 14/700 2026-04-09 17:28 by wp06
[¿¼ÑÐ] 086004 Çóµ÷¼Á 309 +7 Yin DY 2026-04-08 7/350 2026-04-09 13:59 by Delta2012
[¿¼ÑÐ] 0860004 Çóµ÷¼Á 309·Ö +6 Yin DY 2026-04-09 6/300 2026-04-09 10:19 by °¡Àî999
[¿¼ÑÐ] 327Çóµ÷¼Á +12 Xxjc1107. 2026-04-06 12/600 2026-04-08 16:46 by luoyongfeng
[¿¼ÑÐ] Ò»Ö¾Ô¸211£¬»¯Ñ§Ñ§Ë¶£¬310·Ö£¬±¾¿ÆÖصãË«·Ç£¬Çóµ÷¼Á +10 ŬÁ¦·Ü¶·112 2026-04-07 10/500 2026-04-08 15:01 by screening
[¿¼ÑÐ] 388Çóµ÷¼Á +6 ËÄ´¨ÍõÌÎ 2026-04-07 8/400 2026-04-08 00:17 by JourneyLucky
[¿¼ÑÐ] 081200-11408-367ѧ˶Çóµ÷¼Á +4 1_2_3111 2026-04-06 4/200 2026-04-07 08:13 by jp9609
[¿¼ÑÐ] ¿¼Ñе÷¼Á +3 WwwwwwwÍÛ 2026-04-06 3/150 2026-04-06 20:55 by lbsjt
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û