@@ -3958,11 +3958,11 @@ subroutine c_dapri(ina,iunit)
39583958 if (inva.eq. 0 ) then
39593959 write (iunit,' (A)' ) ' I VALUE '
39603960 do i = ipoa,ipoa+ illa-1
3961- write (iunit,' (I6,2X,G20.13 )' ) i- ipoa, c_clean_complex(c_cc(i))
3961+ write (iunit,' (I6,2X,ES23.16 )' ) i- ipoa, c_clean_complex(c_cc(i))
39623962 enddo
39633963 elseif (c_nomax.eq. 1 ) then
3964- if (illa.ne. 0 ) write (iunit,' (A)' ) ' I COEFFICIENT ORDER EXPONENTS'
3965- if (illa.eq. 0 ) write (iunit,' (A)' ) ' ALL COMPONENTS 0.0_dp '
3964+ if (illa.ne. 0 ) write (iunit,' (A)' ) ' I COEFFICIENT ORDER EXPONENTS'
3965+ if (illa.eq. 0 ) write (iunit,' (A)' ) ' ALL COMPONENTS 0.0_dp '
39663966 do i= 1 ,illa
39673967 do k= 1 ,inva
39683968 j(k)= 0
@@ -3972,12 +3972,18 @@ subroutine c_dapri(ina,iunit)
39723972 j(i-1 )= 1
39733973 ioa= 1
39743974 endif
3975- write (iunit,' (I6,2X,G20.13,1x,G20.13,I5,4X,18(2i2,1X))' ) iout,c_clean_complex(c_cc(ipoa+ i-1 )),ioa,(j(iii),iii= 1 ,c_nvmax)
3976- write (iunit,* ) c_clean_complex(c_cc(ipoa+ i-1 ))
3975+ if (madxprint) then
3976+ write (iunit,' (I6,2X,ES23.16,1x,ES23.16,I5,4X,18(2I2,1X))' ) iout, &
3977+ c_clean_complex(c_cc(ipoa+ i-1 )),ioa,(j(iii),iii= 1 ,c_nvmax)
3978+ else
3979+ write (iunit,' (I6,2X,G20.13,1x,G20.13,I5,4X,18(2i2,1X))' ) iout, &
3980+ c_clean_complex(c_cc(ipoa+ i-1 )),ioa,(j(iii),iii= 1 ,c_nvmax)
3981+ write (iunit,* ) c_clean_complex(c_cc(ipoa+ i-1 ))
3982+ endif
39773983 enddo
39783984 else
3979- if (illa.ne. 0 ) write (iunit,' (A)' ) ' I COEFFICIENT ORDER EXPONENTS'
3980- if (illa.eq. 0 ) write (iunit,' (A)' ) ' ALL COMPONENTS 0.0_dp '
3985+ if (illa.ne. 0 ) write (iunit,' (A)' ) ' I COEFFICIENT ORDER EXPONENTS'
3986+ if (illa.eq. 0 ) write (iunit,' (A)' ) ' ALL COMPONENTS 0.0_dp '
39813987 do ioa = 0 ,inoa
39823988 do ii= ipoa,ipoa+ illa-1
39833989 if (c_ieo(c_ia1(c_i_1(ii))+ c_ia2(c_i_2(ii))).ne. ioa) goto 100
@@ -3988,13 +3994,14 @@ subroutine c_dapri(ina,iunit)
39883994 if (abs (real (c_cc(ii)))> epsprint) a= c_cc(ii)
39893995 if (abs (aimag (c_cc(ii)))> epsprint) b= aimag (c_cc(ii))
39903996 ccc= a+ (0.0_dp ,1.0_dp )* b
3991-
39923997 ! ETIENNE
3993-
39943998 iout = iout+1
3995- write (iunit,' (I6,2X,G20.13,1x,G20.13,I5,4X,18(2i2,1X))' ) iout,ccc,ioa,(j(iii),iii= 1 ,c_nvmax)
3996- ! ETIENNE
3997- write (iunit,* ) c_cc(ii)
3999+ if (madxprint) then
4000+ write (iunit,' (I6,2X,ES23.16,1x,ES23.16,I5,4X,18(2I2,1X))' ) iout, ccc,ioa,(j(iii),iii= 1 ,c_nvmax)
4001+ else
4002+ write (iunit,' (I6,2X,G20.13,1x,G20.13,I5,4X,18(2i2,1X))' ) iout, ccc,ioa,(j(iii),iii= 1 ,c_nvmax)
4003+ write (iunit,* ) c_cc(ii)
4004+ endif
39984005 endif
39994006 ! ETIENNE
40004007 !
@@ -4010,7 +4017,7 @@ subroutine c_dapri(ina,iunit)
40104017 end subroutine c_dapri
40114018
40124019function c_clean_complex (c )
4013- implicit none
4020+ implicit none
40144021complex (dp) c_clean_complex,c
40154022real (dp) cr,ci
40164023
@@ -4020,7 +4027,7 @@ function c_clean_complex(c)
40204027if (abs (ci)<epsprint) ci= 0
40214028c_clean_complex= cr+ i_* ci
40224029
4023- end function c_clean_complex
4030+ end function c_clean_complex
40244031
40254032
40264033 subroutine c_dapri77 (ina ,iunit )
@@ -4060,7 +4067,6 @@ subroutine c_dapri77(ina,iunit)
40604067 ilma = c_idalm(ina)
40614068 illa = c_idall(ina)
40624069 !
4063-
40644070 if (longprint) then
40654071 write (iunit,' (/1X,A10,A6,I5,A6,I5,A7,I5/1X,A/)' ) c_daname(ina),' , NO =' ,inoa,' , NV =' ,inva,' , INA =' ,ina,&
40664072 ' *********************************************'
@@ -4069,12 +4075,14 @@ subroutine c_dapri77(ina,iunit)
40694075 ' *********************************************'
40704076 endif
40714077 !
4072- if (illa.ne. 0.and .longprint) write (iunit,' (A)' ) ' I COEFFICIENT ORDER EXPONENTS'
4073- if (illa.eq. 0.and .longprint) write (iunit,' (A)' ) ' ALL COMPONENTS 0.0_dp '
4078+ if (illa.ne. 0.and .longprint) write (iunit,' (A)' ) ' I COEFFICIENT ORDER EXPONENTS'
4079+ if (illa.eq. 0.and .longprint) write (iunit,' (A)' ) ' ALL COMPONENTS 0.0_dp '
40744080 !
4075- c10= ' NO ='
4076- k10= ' NV ='
4077- if (longprint)write (iunit,' (A10,I6,A10,I6)' ) c10,inoa,k10,inva
4081+ if (.not. madxprint) then
4082+ c10= ' NO ='
4083+ k10= ' NV ='
4084+ if (longprint) write (iunit,' (A10,I6,A10,I6)' ) c10,inoa,k10,inva
4085+ endif
40784086 iout = 0
40794087 !
40804088 ! DO 100 IOA = 0,INOA
@@ -4094,7 +4102,7 @@ subroutine c_dapri77(ina,iunit)
40944102 if (abs (aimag (c_cc(ii)))> epsprint) then
40954103 b= aimag (c_cc(ii))
40964104 imprime= .true.
4097- endif
4105+ endif
40984106 ccc= a+ (0.0_dp ,1.0_dp )* b
40994107! ccc=c_cc(ii)
41004108 if (c_nomax.ne. 1 ) then
@@ -4133,9 +4141,9 @@ subroutine c_dapri77(ina,iunit)
41334141 j(i)= 0
41344142 enddo
41354143 if (iout.eq. 0 ) iout= 1
4136- if (longprint) write (iunit,502 ) - iout,0.0_dp ,0.0_dp ,(j(i),i= 1 ,inva)
4144+ if (longprint.and. ( .not. madxprint) ) write (iunit,502 ) - iout,0.0_dp ,0.0_dp ,(j(i),i= 1 ,inva)
41374145 if ((.not. longprint).and. (.not. some)) write (iunit,* ) " Complex Polynomial is zero "
4138- if (.not. longprint) write (6 ,* ) " "
4146+ if (( .not. longprint) .and. ( .not. madxprint) ) write (6 ,* ) " "
41394147 !
41404148 return
41414149longprint= long
@@ -4263,7 +4271,7 @@ subroutine c_darea(ina,iunit)
42634271 integer ,dimension (c_lnv):: j
42644272 complex (dp) c
42654273 character (10 ) c10
4266-
4274+
42674275 if ((.not. C_STABLE_DA)) then
42684276 if (C_watch_user) then
42694277 write (6 ,* ) " big problem in dabnew " , sqrt (crash)
@@ -4303,19 +4311,22 @@ subroutine c_darea(ina,iunit)
43034311 read (iunit,' (A10)' ) c10
43044312 read (iunit,' (A10)' ) c10
43054313 read (iunit,' (A10)' ) c10
4306-
4314+
43074315 !
43084316 !
43094317 iin = 0
43104318 !
4311431910 continue
43124320 iin = iin + 1
4313- ! read(iunit,'(I6,2X,G20.13,I5,4X,18(2i2,1X))') ii,c,io,(j(i),i=1,inva)
4314- read (iunit,* ) ii,c,io,(j(i),i= 1 ,inva)
4321+ if (madxprint) then
4322+ read (iunit,' (I6,2X,ES23.16,1x,ES23.16,I5,4X,18(2I2,1X))' ) ii,c,io,(j(i),i= 1 ,inva)
4323+ else
4324+ read (iunit,' (I6,2X,G20.13,1x,G20.13,I5,4X,18(2I2,1X))' ) ii,c,io,(j(i),i= 1 ,inva)
4325+ endif
43154326 !
43164327 if (ii.eq. 0 ) goto 20
43174328 ! ETIENNE
4318- read (iunit,* ) c
4329+ if ( .not. madxprint) read (iunit,* ) c
43194330 ! ETIENNE
43204331 if (ii.ne. iin) then
43214332 iwarin = 1
@@ -4356,7 +4367,6 @@ subroutine c_darea(ina,iunit)
43564367 if (c_nomax.ne. 1 ) call dapac(ina)
43574368 !
43584369 return
4359-
43604370 end subroutine c_darea
43614371 ! FF
43624372 !
0 commit comments