@@ -31,7 +31,7 @@ subroutine mtgeti(vect,dvect)
3131 parameter (eps = 1.0d-10 ,eps2 = 1.0d-1 ,stplim = 2.0d-1 )
3232 parameter (vmax= 1.e+20 ,vmin=- 1.e+20 )
3333 character * (name_len) name
34-
34+ character tmp_c
3535 psum= get_option(' match_summary ' ) .ne. 0
3636 1 continue
3737 j = next_vary(name,name_len,c_min,c_max,step,slope,opt)
@@ -110,20 +110,27 @@ subroutine collect(ncon,fsum,fvect)
110110 &flag,get_option,restart_sequ,advance_to_pos,double_from_table_row, &
111111 &string_from_table_row
112112 double precision fsum,fvect(* ),val,valhg,c_min,c_max,weight,f_val
113- character * (name_len) name, node_name
113+ ! character*(name_len) name, node_name
114+ character (len= name_len) name, name_of_node, towire
115+ character (len= name_len) estring
116+ character tmp_c
114117 integer n_pos, next_constr_namepos, advance_node
118+ external :: node_name_f_lower
119+
115120 local= get_option(' match_local ' ) .ne. 0
116121 fprt= get_option(' match_print ' ) .ne. 0
117122 psum= get_option(' match_summary ' ) .ne. 0
118123 slow_match = get_option(' slow_match ' ) .ne. 0
119124 if (local) then
120125 j= restart_sequ()
121126 pos= 1
127+
122128 do while (j .gt. 0 )
123129 if (slow_match) j= advance_to_pos(' twiss ' ,pos) ! (expensive) NOP?
124130 do while (next_constraint( &
125131 & name,name_len,type, valhg,c_min,c_max,weight, &
126- & pos,val,node_name,name_len).ne. 0 )
132+ & pos,val,name_of_node,name_len).ne. 0 )
133+
127134 select case (type)
128135 case (1 ); f_val= weight* dim (c_min,val)
129136 case (2 ); f_val= weight* dim (val,c_max)
@@ -142,11 +149,12 @@ subroutine collect(ncon,fsum,fvect)
142149 end select
143150 endif
144151 if (psum) then
152+ call node_name_f_lower(estring,name_len)
145153 select case (type)
146- case (4 ); write (* ,830 ) node_name ,name,type,valhg,val,f_val** 2
147- case (2 ); write (* ,830 ) node_name ,name,type,c_max,val,f_val** 2
148- case (1 ); write (* ,830 ) node_name ,name,type,c_min,val,f_val** 2
149- case (3 ); write (* ,832 ) node_name ,name,type,c_min,c_max,val,f_val** 2
154+ case (4 ); write (* ,830 ) estring ,name,type,valhg,val,f_val** 2
155+ case (2 ); write (* ,830 ) estring ,name,type,c_max,val,f_val** 2
156+ case (1 ); write (* ,830 ) estring ,name,type,c_min,val,f_val** 2
157+ case (3 ); write (* ,832 ) estring ,name,type,c_min,c_max,val,f_val** 2
150158 end select
151159 endif
152160 end do
0 commit comments