1
*----------------------------------------------------------------------*
2
* $Id: regpr.f 150 2003-07-03 13:08:58Z vflegel $
3
*----------------------------------------------------------------------*
4
* Version: File under developpment for release 2.3
5
*----------------------------------------------------------------------*
9
* CPID,CPAC,CPDE,NABC,CABC,LPRF,LPCI,
10
* CDIS,JDIP,MDIS,NDIP,
11
* CNOR,JNOP,JNOR,MNOR,NNOR,NNPR,CNTX,RNOP,
12
* JCUT,MCLE,CCUT,ICUT,JCNM,RCUT,MCUT,
13
* IDMP,CHIP,IIPP,CHMP,IMPP,
14
* CHID,IIPD,CHMD,IMPD,
43
1 Open(NGPR,Status='SCRATCH',Err=901)
46
If(Getc(B).NE.0) go to 3
47
If(Ichar(B).EQ.10) then
48
Write(NGPR,'(512A)',Err=903)(RCIN(ii1:ii1),ii1=1,I1-1)
57
Open(NGPR,File=FGPR,Status='OLD',Err=900)
66
CPDE='Automatically reformatted from file '''
67
* // FGPR(1:Lblnk(FGPR))
90
* - defaults for match and insert position
135
25 Read(NGPR,'(A)',End=905,Err=902) RCIN
136
If(RCIN( 1: 4).NE.'Cons') go to 25
138
IC1=Index(RCIN,'Gap')
141
If(RCIN(I1:I1).NE.' ') then
151
30 Read(NGPR,'(A)',End= 50,Err=902) RCIN
152
If(RCIN( 1: 1).EQ.'!') go to 30
156
C RCIN(1024:1024)='@'
158
Read(RCIN(3:512),*,Err=910,End= 50)
159
* (IPRF(ii1),ii1=1,NABC+2)
161
IPRF(I2)=NINT(Real(IPRF(I2))/100*RF+RO)
164
NGO=-NINT(Real(IPRF(NABC+1))/200*RF*RG)
166
NGO=-NINT(Real(IPRF(NABC+1))/100*RF*RG)
168
NGE=-NINT(Real(IPRF(NABC+2))/100*RF*RE)
170
* - build insert position
186
* - build match position
189
If(K1.GT.IDMP) go to 915
200
If(LPRF.LE.0) go to 920
202
* - disjointness definition
208
* - defaults for gap weights
213
NGO=MIN(NGO,IIPP(MI,I1))
214
NGE=MIN(NGE,IMPP( D,I1+1))
229
* - last insert position
236
* - domain global mode:
241
* - move DM scores one position forward:
246
IIPP(DM,I1)=IIPP(DM,I1-1)
254
900 Write(NERR,*) 'Error: Unable to open profile file'//
255
* ' ''',FGPR(1:Lblnk(FGPR)),'''.'
258
901 Write(NERR,*) 'Error: Unable to create temporary file.'
261
902 Write(NERR,*) 'Error: Unable to read profile file.'
264
903 Write(NERR,*) 'Error: Unable to write to temporary file.'
267
905 Write(NERR,*) 'Error: Unexpected end of file. '//
268
* 'Unable to find profile alphabet.'
271
910 Write(NERR,*) 'Error: Unable to read profile values.'
272
Write(NERR,*) ' at line: ',
273
* RCIN(1:Lblnk(RCIN))
276
915 Write(NERR,*) 'Error: Profile length exceeds buffer size (',
280
920 Write(NERR,*) 'Error: Unexpected end of profile. Profile has '//
281
* 'zero length. Check profile syntax.'