├── bin └── .placeholder ├── obj └── .placeholder ├── rnaml2ps ├── rnaml2ps ├── Makefile ├── nrutil.h ├── ps_image.par └── xml2ps.h ├── test ├── pdb │ ├── test1 │ │ ├── test1.pdb.pdf │ │ ├── test1.pdb_sort.out │ │ ├── test1.pdb.out │ │ └── test1.pdb_new_torsion.out │ ├── tr0001 │ │ ├── tr0001.pdb.pdf │ │ ├── tr0001.pdb.out.out │ │ ├── tr0001.pdb_patt.out │ │ ├── tr0001.pdb_sort.out │ │ ├── tr0001.pdb.out │ │ └── tr0001.pdb_new_torsion.out │ ├── url064 │ │ ├── url064.pdb.pdf │ │ ├── url064.pdb_patt.out │ │ ├── url064.pdb_new_torsion.out │ │ ├── url064.pdb_sort.out │ │ └── url064.pdb.out │ ├── urx053 │ │ └── urx053.pdb.pdf │ ├── pdb1nvy │ │ ├── pdb1nvy.pdb.pdf │ │ ├── pdb1nvy.pdb_new_torsion.out │ │ ├── pdb1nvy.pdb_sort.out │ │ ├── pdb1nvy.ent_sort.out │ │ ├── pdb1nvy.pdb.out │ │ ├── pdb1nvy.ent.out │ │ └── pdb1nvy.pdb.ps │ └── test │ │ └── test.pdb.out └── mmcif │ ├── other │ └── 6pom │ │ ├── 6pom.cif.pdf │ │ └── 6pom.cif_patt.out │ ├── nmr_structure │ └── 8if5 │ │ ├── 8if5.cif.pdf │ │ ├── 8IF5.CIF_patt.out │ │ ├── 8if5.cif_new_torsion.out │ │ ├── 8IF5.CIF_torsion.out │ │ ├── 8IF5.CIF_sort.out │ │ └── 8if5.cif.out │ ├── insertion_code │ ├── 1EFW │ │ ├── 1EFW.CIF.pdf │ │ ├── 1EFW.info │ │ └── 1EFW.CIF_patt.out │ ├── 1VVJ │ │ └── 1VVJ.cif.pdf │ └── 4ARC │ │ ├── 4ARC.CIF.pdf │ │ ├── 4ARC.info │ │ ├── 4ARC.CIF_patt.out │ │ ├── 4ARC.CIF_sort.out │ │ ├── 4ARC.cif.out │ │ └── 4ARC.CIF_torsion.out │ └── x-ray │ ├── 3P4J │ └── assembly-1 │ │ ├── 3P4J-ASSEMBLY1.CIF.pdf │ │ ├── 3P4J-ASSEMBLY1.CIF_torsion.out │ │ ├── 3P4J-ASSEMBLY1.CIF_new_torsion.out │ │ ├── 3P4J-ASSEMBLY1.CIF.out │ │ ├── 3P4J-ASSEMBLY1.CIF_sort.out │ │ ├── 3P4J-ASSEMBLY1.CIF.ps │ │ └── 3p4j-assembly1_gt.cif.ps │ ├── 434D │ ├── assembly-1 │ │ ├── 434D-ASSEMBLY1.CIF.pdf │ │ ├── 434D-ASSEMBLY1.CIF_patt.out │ │ ├── 434D-ASSEMBLY1.CIF_torsion.out │ │ ├── 434D-ASSEMBLY1.CIF.out │ │ ├── 434D-ASSEMBLY1.CIF_sort.out │ │ ├── 434D-ASSEMBLY1.CIF.ps │ │ └── 434d-assembly1_gt.cif.ps │ └── assembly-2 │ │ ├── 434d-assembly2.cif.pdf │ │ ├── 434d-assembly2.cif_patt.out │ │ ├── 434d-assembly2.cif_torsion.out │ │ ├── 434d-assembly2.cif.out │ │ ├── 434d-assembly2.cif_sort.out │ │ ├── 434d-assembly2.cif.ps │ │ └── 434d-assembly2_gt.cif.ps │ └── 4NMG │ └── assembly-1 │ ├── 4NMG-ASSEMBLY1.CIF.pdf │ ├── 4NMG-ASSEMBLY1.CIF_patt.out │ ├── 4NMG-ASSEMBLY1.CIF_torsion.out │ ├── 4NMG-ASSEMBLY1.CIF_sort.out │ └── 4NMG-ASSEMBLY1.CIF.out ├── BASEPARS ├── misc_rna.par ├── Atomic_C.pdb ├── Atomic_P.pdb ├── Atomic_U.pdb ├── Atomic_T.pdb ├── Atomic_A.pdb ├── Atomic_I.pdb ├── Atomic_G.pdb ├── raster3d.par ├── ps_image.par └── vrml_image.par ├── src ├── Makefile └── multiple.c ├── doc ├── Makefile-old └── README ├── include ├── nrutil.h ├── vrml.h ├── rna.h └── xml2ps.h ├── test.sh ├── Makefile ├── README.md └── README /bin/.placeholder: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /obj/.placeholder: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /rnaml2ps/rnaml2ps: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/rnaml2ps/rnaml2ps -------------------------------------------------------------------------------- /test/pdb/test1/test1.pdb.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/pdb/test1/test1.pdb.pdf -------------------------------------------------------------------------------- /test/pdb/tr0001/tr0001.pdb.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/pdb/tr0001/tr0001.pdb.pdf -------------------------------------------------------------------------------- /test/pdb/url064/url064.pdb.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/pdb/url064/url064.pdb.pdf -------------------------------------------------------------------------------- /test/pdb/urx053/urx053.pdb.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/pdb/urx053/urx053.pdb.pdf -------------------------------------------------------------------------------- /test/pdb/pdb1nvy/pdb1nvy.pdb.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/pdb/pdb1nvy/pdb1nvy.pdb.pdf -------------------------------------------------------------------------------- /test/mmcif/other/6pom/6pom.cif.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/mmcif/other/6pom/6pom.cif.pdf -------------------------------------------------------------------------------- /test/mmcif/nmr_structure/8if5/8if5.cif.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/mmcif/nmr_structure/8if5/8if5.cif.pdf -------------------------------------------------------------------------------- /test/mmcif/insertion_code/1EFW/1EFW.CIF.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/mmcif/insertion_code/1EFW/1EFW.CIF.pdf -------------------------------------------------------------------------------- /test/mmcif/insertion_code/1EFW/1EFW.info: -------------------------------------------------------------------------------- 1 | 1EFW has one residue with an insertion code. Chain C residue 20 is followed by residue 20.A. 2 | -------------------------------------------------------------------------------- /test/mmcif/insertion_code/1VVJ/1VVJ.cif.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/mmcif/insertion_code/1VVJ/1VVJ.cif.pdf -------------------------------------------------------------------------------- /test/mmcif/insertion_code/4ARC/4ARC.CIF.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/mmcif/insertion_code/4ARC/4ARC.CIF.pdf -------------------------------------------------------------------------------- /test/mmcif/insertion_code/4ARC/4ARC.info: -------------------------------------------------------------------------------- 1 | 4ARC has one extra inserted residue after 20, 20.A 2 | and 10 extra inserted residues after 47, 47.A through 47.J 3 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/3P4J/assembly-1/3P4J-ASSEMBLY1.CIF.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/mmcif/x-ray/3P4J/assembly-1/3P4J-ASSEMBLY1.CIF.pdf -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-1/434D-ASSEMBLY1.CIF.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/mmcif/x-ray/434D/assembly-1/434D-ASSEMBLY1.CIF.pdf -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif.pdf -------------------------------------------------------------------------------- /test/mmcif/x-ray/4NMG/assembly-1/4NMG-ASSEMBLY1.CIF.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rcsb/RNAView/HEAD/test/mmcif/x-ray/4NMG/assembly-1/4NMG-ASSEMBLY1.CIF.pdf -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-1/434D-ASSEMBLY1.CIF_patt.out: -------------------------------------------------------------------------------- 1 | BEGIN_base-pair 2 | 3 | 0, click this line to see above pattern 4 | 0_0,--------- 5 | END_base-pair 6 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif_patt.out: -------------------------------------------------------------------------------- 1 | BEGIN_base-pair 2 | 3 | 0, click this line to see above pattern 4 | 0_0,--------- 5 | END_base-pair 6 | -------------------------------------------------------------------------------- /test/pdb/tr0001/tr0001.pdb.out.out: -------------------------------------------------------------------------------- 1 | PDB data file name: tr0001.pdb.out 2 | BEGIN_base-pair 3 | END_base-pair 4 | The total base pairs = 0 (from 0 bases) 5 | -------------------------------------------------------------------------------- /BASEPARS/misc_rna.par: -------------------------------------------------------------------------------- 1 | 3.4 0.0 ON A1 # upper H-bond length limits/atoms, alternative location 2 | 26.0 # max. distance between paired base origins (10.0) 3 | 2.5 # max. vertical distance between paired base origins (2.0) 4 | 65.0 # max. angle between paired bases [0-90] (60.0) 5 | 5.4 # MIN. distance between RN9/YN1 atoms (6.0) 6 | 8.0 # max. distance criterion for helix break [0-12] (8.0) 7 | -------------------------------------------------------------------------------- /rnaml2ps/Makefile: -------------------------------------------------------------------------------- 1 | CFLAGS = -O 2 | CC = cc 3 | 4 | # ++++++++++++++++++++++++++++ Program RNADRAW 5 | RNADRAW = rnaml2ps 6 | OBJS_RNADRAW = rnaml2ps.o nrutil.o 7 | 8 | $(RNADRAW): $(OBJS_RNADRAW) 9 | $(CC) -o $(RNADRAW) $(OBJS_RNADRAW) -lm 10 | 11 | nrutil.o : nrutil.c 12 | cc -c nrutil.c 13 | 14 | rnaml2ps.o : rnaml2ps.c 15 | cc -c rnaml2ps.c 16 | 17 | 18 | .PHONY : clean 19 | clean: 20 | rm *.o 21 | -------------------------------------------------------------------------------- /test/mmcif/nmr_structure/8if5/8IF5.CIF_patt.out: -------------------------------------------------------------------------------- 1 | BEGIN_base-pair 2 | 4_23, A: 4 G-C 23 A: +/+ cis XIX 3 | 5_22, A: 5 T-T 22 A: W/W cis XVI 4 | 7_9, A: 7 T-G 9 A: S/S cis n/a 5 | 7_15, A: 7 T-C 15 A: W/W tran XVII 6 | 9_15, A: 9 G-C 15 A: +/+ cis XIX 7 | 9_15,- 8 | 4_23_5_22_7_9_7_15_9_15_0, click this line to see above pattern 9 | 0_0,--------- 10 | END_base-pair 11 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/4NMG/assembly-1/4NMG-ASSEMBLY1.CIF_patt.out: -------------------------------------------------------------------------------- 1 | BEGIN_base-pair 2 | 6_22, A: 2652 C-G 2668 A: +/+ cis XIX 3 | 9_10, A: 2655 G-u 2656 A: S/H cis syn n/a 4 | 10_19, A: 2656 u-A 2665 A: W/H tran XXIV 5 | 11_18, A: 2657 A-G 2664 A: H/S tran XI 6 | 12_17, A: 2658 C-G 2663 A: +/+ cis XIX 7 | 12_17,- 8 | 6_22_9_10_10_19_11_18_12_17_0, click this line to see above pattern 9 | 0_0,--------- 10 | END_base-pair 11 | -------------------------------------------------------------------------------- /test/pdb/url064/url064.pdb_patt.out: -------------------------------------------------------------------------------- 1 | BEGIN_base-pair 2 | 2_22, A: 71 C-G 105 B: +/+ cis XIX 3 | 3_21, A: 72 G-A 104 B: S/H tran XI 4 | 4_20, A: 73 A-U 103 B: H/W tran XXIV 5 | 7_17, A: 76 G-G 100 B: W/W tran III 6 | 8_16, A: 77 U-A 99 B: W/H tran XXIV 7 | 9_15, A: 78 A-G 98 B: H/S tran XI 8 | 10_14, A: 79 G-C 97 B: +/+ cis XIX 9 | 10_14,- 10 | 2_22_3_21_4_20_7_17_8_16_9_15_10_14_0, click this line to see above pattern 11 | 0_0,--------- 12 | END_base-pair 13 | -------------------------------------------------------------------------------- /test/mmcif/nmr_structure/8if5/8if5.cif_new_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | -------------------------------------------------------------------------------- /BASEPARS/Atomic_C.pdb: -------------------------------------------------------------------------------- 1 | REMARK DNA structure generated by the 3DNA package 2 | REMARK By Xiang-Jun Lu , 2000 3 | ATOM 1 C1' C A 1 -2.477 5.402 0.000 4 | ATOM 2 N1 C A 1 -1.285 4.542 0.000 5 | ATOM 3 C2 C A 1 -1.472 3.158 0.000 6 | ATOM 4 O2 C A 1 -2.628 2.709 0.001 7 | ATOM 5 N3 C A 1 -0.391 2.344 0.000 8 | ATOM 6 C4 C A 1 0.837 2.868 0.000 9 | ATOM 7 N4 C A 1 1.875 2.027 0.001 10 | ATOM 8 C5 C A 1 1.056 4.275 0.000 11 | ATOM 9 C6 C A 1 -0.023 5.068 0.000 12 | END 13 | -------------------------------------------------------------------------------- /BASEPARS/Atomic_P.pdb: -------------------------------------------------------------------------------- 1 | REMARK DNA structure generated by the 3DNA package 2 | REMARK By Xiang-Jun Lu , 2000 3 | ATOM 1 C1' PSU A 1 -2.506 5.371 0.000 4 | ATOM 2 N1 PSU A 1 1.087 4.295 0.000 5 | ATOM 3 C2 PSU A 1 1.037 2.915 0.000 6 | ATOM 4 O2 PSU A 1 2.036 2.217 0.000 7 | ATOM 5 N3 PSU A 1 -0.229 2.383 0.000 8 | ATOM 6 C4 PSU A 1 -1.422 3.076 0.000 9 | ATOM 7 O4 PSU A 1 -2.485 2.453 0.000 10 | ATOM 8 C5 PSU A 1 -1.284 4.500 0.000 11 | ATOM 9 C6 PSU A 1 -0.064 5.048 0.000 12 | END 13 | -------------------------------------------------------------------------------- /BASEPARS/Atomic_U.pdb: -------------------------------------------------------------------------------- 1 | REMARK DNA structure generated by the 3DNA package 2 | REMARK By Xiang-Jun Lu , 2000 3 | ATOM 1 C1' U A 1 -2.481 5.354 0.000 4 | ATOM 2 N1 U A 1 -1.284 4.500 0.000 5 | ATOM 3 C2 U A 1 -1.462 3.131 0.000 6 | ATOM 4 O2 U A 1 -2.563 2.608 0.000 7 | ATOM 5 N3 U A 1 -0.302 2.397 0.000 8 | ATOM 6 C4 U A 1 0.989 2.884 0.000 9 | ATOM 7 O4 U A 1 1.935 2.094 -0.001 10 | ATOM 8 C5 U A 1 1.089 4.311 0.000 11 | ATOM 9 C6 U A 1 -0.024 5.053 0.000 12 | END 13 | -------------------------------------------------------------------------------- /BASEPARS/Atomic_T.pdb: -------------------------------------------------------------------------------- 1 | REMARK DNA structure generated by the 3DNA package 2 | REMARK By Xiang-Jun Lu , 2000 3 | ATOM 1 C1' T A 1 -2.481 5.354 0.000 4 | ATOM 2 N1 T A 1 -1.284 4.500 0.000 5 | ATOM 3 C2 T A 1 -1.462 3.135 0.000 6 | ATOM 4 O2 T A 1 -2.562 2.608 0.000 7 | ATOM 5 N3 T A 1 -0.298 2.407 0.000 8 | ATOM 6 C4 T A 1 0.994 2.897 0.000 9 | ATOM 7 O4 T A 1 1.944 2.119 0.000 10 | ATOM 8 C5 T A 1 1.106 4.338 0.000 11 | ATOM 9 C5M T A 1 2.466 4.961 0.001 12 | ATOM 10 C6 T A 1 -0.024 5.057 0.000 13 | END 14 | -------------------------------------------------------------------------------- /BASEPARS/Atomic_A.pdb: -------------------------------------------------------------------------------- 1 | REMARK DNA structure generated by the 3DNA package 2 | REMARK By Xiang-Jun Lu , 2000 3 | ATOM 1 C1' A A 1 -2.479 5.346 0.000 4 | ATOM 2 N9 A A 1 -1.291 4.498 0.000 5 | ATOM 3 C8 A A 1 0.024 4.897 0.000 6 | ATOM 4 N7 A A 1 0.877 3.902 0.000 7 | ATOM 5 C5 A A 1 0.071 2.771 0.000 8 | ATOM 6 C6 A A 1 0.369 1.398 0.000 9 | ATOM 7 N6 A A 1 1.611 0.909 0.000 10 | ATOM 8 N1 A A 1 -0.668 0.532 0.000 11 | ATOM 9 C2 A A 1 -1.912 1.023 0.000 12 | ATOM 10 N3 A A 1 -2.320 2.290 0.000 13 | ATOM 11 C4 A A 1 -1.267 3.124 0.000 14 | END 15 | -------------------------------------------------------------------------------- /BASEPARS/Atomic_I.pdb: -------------------------------------------------------------------------------- 1 | REMARK DNA structure generated by the 3DNA package 2 | REMARK By Xiang-Jun Lu , 2000 3 | ATOM 1 C1' G A 1 -2.477 5.399 0.000 4 | ATOM 2 N9 G A 1 -1.289 4.551 0.000 5 | ATOM 3 C8 G A 1 0.023 4.962 0.000 6 | ATOM 4 N7 G A 1 0.870 3.969 0.000 7 | ATOM 5 C5 G A 1 0.071 2.833 0.000 8 | ATOM 6 C6 G A 1 0.424 1.460 0.000 9 | ATOM 7 O6 G A 1 1.554 0.955 0.000 10 | ATOM 8 N1 G A 1 -0.700 0.641 0.000 11 | ATOM 9 C2 G A 1 -1.999 1.087 0.000 12 | ATOM 10 N3 G A 1 -2.342 2.364 0.001 13 | ATOM 11 C4 G A 1 -1.265 3.177 0.000 14 | END 15 | -------------------------------------------------------------------------------- /BASEPARS/Atomic_G.pdb: -------------------------------------------------------------------------------- 1 | REMARK DNA structure generated by the 3DNA package 2 | REMARK By Xiang-Jun Lu , 2000 3 | ATOM 1 C1' G A 1 -2.477 5.399 0.000 4 | ATOM 2 N9 G A 1 -1.289 4.551 0.000 5 | ATOM 3 C8 G A 1 0.023 4.962 0.000 6 | ATOM 4 N7 G A 1 0.870 3.969 0.000 7 | ATOM 5 C5 G A 1 0.071 2.833 0.000 8 | ATOM 6 C6 G A 1 0.424 1.460 0.000 9 | ATOM 7 O6 G A 1 1.554 0.955 0.000 10 | ATOM 8 N1 G A 1 -0.700 0.641 0.000 11 | ATOM 9 C2 G A 1 -1.999 1.087 0.000 12 | ATOM 10 N2 G A 1 -2.949 0.139 -0.001 13 | ATOM 11 N3 G A 1 -2.342 2.364 0.001 14 | ATOM 12 C4 G A 1 -1.265 3.177 0.000 15 | END 16 | -------------------------------------------------------------------------------- /test/pdb/tr0001/tr0001.pdb_patt.out: -------------------------------------------------------------------------------- 1 | BEGIN_base-pair 2 | 7_66, A: 7 U-A 66 A: -/- cis XX 3 | 8_14, A: 8 U-A 14 A: W/H tran XXIV 4 | 9_23, A: 9 A-A 23 A: H/H tran syn II 5 | 10_25, A: 10 g-C 25 A: +/+ cis XIX 6 | 10_25,- 7 | 7_66_8_14_9_23_10_25_0, click this line to see above pattern 8 | 0_0,--------- 9 | 19_56, A: 19 G-C 56 A: +/+ cis syn XIX 10 | 22_46, A: 22 G-g 46 A: H/W tran syn VII 11 | 26_44, A: 26 g-A 44 A: W/W cis VIII 12 | 27_43, A: 27 C-G 43 A: +/+ cis XIX 13 | 27_43,- 14 | 19_56_22_46_26_44_27_43_0, click this line to see above pattern 15 | 0_0,--------- 16 | 13_22, A: 13 C-G 22 A: +/+ cis XIX 17 | 15_48, A: 15 G-C 48 A: W/W tran XXII 18 | 16_59, A: 16 u-U 59 A: S/W tran syn n/a 19 | 18_55, A: 18 G-P 55 A: W/S tran n/a 20 | 19_56, A: 19 G-C 56 A: +/+ cis syn XIX 21 | 19_56,- 22 | 13_22_15_48_16_59_18_55_19_56_0, click this line to see above pattern 23 | 0_0,--------- 24 | END_base-pair 25 | -------------------------------------------------------------------------------- /src/Makefile: -------------------------------------------------------------------------------- 1 | CFLAGS = -O 2 | CC = cc 3 | 4 | # ++++++++++++++++++++++++++++ Program RNADRAW 5 | RNAVIEW = rnaview 6 | OBJS_RNAVIEW = rnaview.o analyze.o fpair.o fpair_sub.o pair_type.o \ 7 | multiple.o nrutil.o ps-xy.o ps-xy-sub.o pattern.o \ 8 | rnaxml-new.o statistics.o vrml.o xml2ps.o \ 9 | 10 | $(RNAVIEW): $(OBJS_RNAVIEW) 11 | $(CC) -o $(RNAVIEW) $(OBJS_RNAVIEW) -lm 12 | 13 | rnaview.o : rnaview.c 14 | cc -c rnaview.c 15 | fpair.o : fpair.c 16 | cc -c fpair.c 17 | fpair_sub.o : fpair_sub.c 18 | cc -c fpair_sub.c 19 | pair_type.o : pair_type.c 20 | cc -c pair_type.c 21 | nrutil.o : nrutil.c 22 | cc -c nrutil.c 23 | ps-xy.o : ps-xy.c 24 | cc -c ps-xy.c 25 | ps-xy-sub.o : ps-xy-sub.c 26 | cc -c ps-xy-sub.c 27 | vrml.o : vrml.c 28 | cc -c vrml.c 29 | 30 | rnaxml-new.o : rnaxml-new.c 31 | cc -c rnaxml-new.c 32 | analyze.o : analyze.c 33 | cc -c analyze.c 34 | pattern.o : pattern.c 35 | cc -c pattern.c 36 | 37 | xml2ps.o : xml2ps.c 38 | cc -c xml2ps.c 39 | 40 | multiple.o : multiple.c 41 | cc -c multiple.c 42 | 43 | statistics.o : statistics.c 44 | cc -c statistics.c 45 | 46 | 47 | .PHONY : clean 48 | clean: 49 | rm *.o 50 | -------------------------------------------------------------------------------- /doc/Makefile-old: -------------------------------------------------------------------------------- 1 | CFLAGS = -O 2 | CC = cc 3 | 4 | # ++++++++++++++++++++++++++++ Program RNADRAW 5 | RNAVIEW = rnaview 6 | OBJS_RNAVIEW = rnaview.o analyze.o fpair.o fpair_sub.o pair_type.o \ 7 | multiple.o nrutil.o ps-xy.o ps-xy-sub.o pattern.o \ 8 | rnaxml-new.o statistics.o vrml.o xml2ps.o 9 | 10 | $(RNAVIEW): $(OBJS_RNAVIEW) 11 | $(CC) -o $(RNAVIEW) $(OBJS_RNAVIEW) -lm 12 | 13 | rnaview.o : src/rnaview.c 14 | cc -c src/rnaview.c 15 | fpair.o : src/fpair.c 16 | cc -c src/fpair.c 17 | fpair_sub.o : src/fpair_sub.c 18 | cc -c src/fpair_sub.c 19 | pair_type.o : src/pair_type.c 20 | cc -c src/pair_type.c 21 | nrutil.o : src/nrutil.c 22 | cc -c src/nrutil.c 23 | ps-xy.o : src/ps-xy.c 24 | cc -c src/ps-xy.c 25 | ps-xy-sub.o : src/ps-xy-sub.c 26 | cc -c src/ps-xy-sub.c 27 | vrml.o : src/vrml.c 28 | cc -c src/vrml.c 29 | 30 | rnaxml-new.o : src/rnaxml-new.c 31 | cc -c src/rnaxml-new.c 32 | analyze.o : src/analyze.c 33 | cc -c src/analyze.c 34 | pattern.o : src/pattern.c 35 | cc -c src/pattern.c 36 | 37 | xml2ps.o : src/xml2ps.c 38 | cc -c src/xml2ps.c 39 | 40 | multiple.o : src/multiple.c 41 | cc -c src/multiple.c 42 | 43 | statistics.o : src/statistics.c 44 | cc -c src/statistics.c 45 | 46 | 47 | .PHONY : clean 48 | clean: 49 | rm *.o 50 | -------------------------------------------------------------------------------- /test/mmcif/insertion_code/4ARC/4ARC.CIF_patt.out: -------------------------------------------------------------------------------- 1 | BEGIN_base-pair 2 | 3_66, B: 7 A-U 66 B: -/- cis XX 3 | 4_10, B: 8 U-A 14 B: W/H tran XXIV 4 | 5_8, B: 9 G-G 12 B: W/H cis syn VI 5 | 6_22, B: 10 G-C 25 B: +/+ cis XIX 6 | 6_22,- 7 | 3_66_4_10_5_8_6_22_0, click this line to see above pattern 8 | 0_0,--------- 9 | 8_20, B: 12 G-C 23 B: +/+ cis XIX 10 | 9_19, B: 13 G-A 22 B: S/H tran XI 11 | 10_17, B: 14 A-A 20 B: W/S cis n/a 12 | 11_48, B: 15 A-U 48 B: W/W tran XXI 13 | 14_55, B: 18 G-U 55 B: W/S tran n/a 14 | 15_56, B: 19 G-C 56 B: +/+ cis syn XIX 15 | 15_56,- 16 | 8_20_9_19_10_17_11_48_14_55_15_56_0, click this line to see above pattern 17 | 0_0,--------- 18 | 24_33, B: 27 A-U 43 B: -/- cis XX 19 | 25_32, B: 28 G-C 42 B: W/W cis n/a 20 | 26_32, B: 29 G-C 42 B: W/W cis n/a 21 | 28_29, B: 31 A-U 39 B: W/W cis n/a 22 | 35_46, B: 45 G-U 47 B: W/W cis XXVIII 23 | 36_45, B: 46 G-C 47 B: +/+ cis XIX 24 | 36_45,- 25 | 24_33_25_32_26_32_28_29_35_46_36_45_0, click this line to see above pattern 26 | 0_0,--------- 27 | END_base-pair 28 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/3P4J/assembly-1/3P4J-ASSEMBLY1.CIF_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | A C 1 -9999.99 -9999.99 53.28 142.71 -92.81 77.96 -152.26 18 | A G 2 60.26 -169.24 178.16 90.60 -120.17 -68.92 59.24 19 | A C 3 -148.07 -121.28 54.49 148.20 -98.35 71.71 -154.39 20 | A G 4 68.76 -170.23 -179.52 92.36 -177.90 65.61 55.69 21 | A C 5 167.88 167.12 44.12 142.88 -94.51 73.50 -143.61 22 | A G 6 75.15 -179.41 -176.34 147.57 -9999.99 -9999.99 77.28 23 | B C 7 -9999.99 -9999.99 54.17 148.36 -88.03 73.52 -145.07 24 | B G 8 61.08 -172.52 176.83 92.89 -111.15 -77.48 67.27 25 | B C 9 -142.64 -132.12 56.30 146.69 -91.58 73.96 -155.30 26 | B G 10 65.18 -179.52 179.82 98.44 -117.29 -69.23 62.09 27 | B C 11 -148.91 -122.78 54.88 141.14 -96.78 67.25 -155.96 28 | B G 12 78.53 -176.31 -175.23 152.82 -9999.99 -9999.99 77.74 29 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/3P4J/assembly-1/3P4J-ASSEMBLY1.CIF_new_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | A DC 1 -9999.99 -9999.99 53.28 142.71 -92.81 77.96 -152.26 18 | A DG 2 60.26 -169.24 178.16 90.60 -120.17 -68.92 59.24 19 | A DC 3 -148.07 -121.28 54.49 148.20 -98.35 71.71 -154.39 20 | A DG 4 68.76 -170.23 -179.52 92.36 -177.90 65.61 55.69 21 | A DC 5 167.88 167.12 44.12 142.88 -94.51 73.50 -143.61 22 | A DG 6 75.15 -179.41 -176.34 147.57 -9999.99 -9999.99 77.28 23 | B DC 1 -9999.99 -9999.99 54.17 148.36 -88.03 73.52 -145.07 24 | B DG 2 61.08 -172.52 176.83 92.89 -111.15 -77.48 67.27 25 | B DC 3 -142.64 -132.12 56.30 146.69 -91.58 73.96 -155.30 26 | B DG 4 65.18 -179.52 179.82 98.44 -117.29 -69.23 62.09 27 | B DC 5 -148.91 -122.78 54.88 141.14 -96.78 67.25 -155.96 28 | B DG 6 78.53 -176.31 -175.23 152.82 -9999.99 -9999.99 -155.96 29 | -------------------------------------------------------------------------------- /BASEPARS/raster3d.par: -------------------------------------------------------------------------------- 1 | # SQUARE of RGB color code for base residues 2 | 1.000 0.000 0.000 # A red [255 0 0] 3 | 1.000 1.000 0.000 # C yellow [255 255 0] 4 | 0.000 1.000 0.000 # G green [0 255 0] 5 | 0.000 0.154 0.000 # I dark green [0 100 0] 6 | 0.000 0.000 1.000 # T blue [0 0 255] 7 | 0.000 1.000 1.000 # U cyan [0 255 255] 8 | 0.810 0.810 0.810 # X 90% gray [230 230 230] 9 | 1.000 1.000 1.000 # fill color white [255 255 255] 10 | # SQUARE of RGB color code for H-bond, and dashed line parameter 11 | 1.000 0.000 1.000 3.0 # magenta [255 0 255] 12 | # Cylinder radius of bp-center line bps 1 & 2 in stacking 13 | 0.06 0.06 0.18 14 | # SQUARE of RGB color code for atoms [CPK/RasMol convention] 15 | 1.000 0.006 0.332 # Unknown deep pink [255 20 147] 16 | 0.615 0.615 0.615 # C light grey [200 200 200] 17 | 0.785 0.000 0.000 # O red [240 0 0] 18 | 1.000 1.000 1.000 # H white [255 255 255] 19 | 0.314 0.314 1.000 # N light blue [143 143 255] 20 | 1.000 0.615 0.038 # S yellow [255 200 50] 21 | 1.000 0.419 0.000 # P orange [255 165 0] 22 | 0.731 0.419 0.016 # F goldenrod [218 165 32] 23 | 0.000 1.000 0.000 # Cl green [0 255 0] 24 | 0.419 0.027 0.027 # Br brown [165 42 42] 25 | 0.394 0.016 0.886 # I purple [160 32 240] 26 | 0.731 0.419 0.016 # Si goldenrod [218 165 32] 27 | # Label style for the one-letter base name, A, T etc 28 | "Helvetica-Bold" 8. "Center-align" 29 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-1/434D-ASSEMBLY1.CIF_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | A U 1 -9999.99 -9999.99 47.79 75.44 -160.01 -62.40 -164.35 18 | A A 2 -67.34 175.29 51.31 82.19 -158.03 -74.76 -164.09 19 | A G 3 -64.98 -179.54 47.95 73.88 -153.63 -53.35 -160.36 20 | A C 4 -69.95 178.19 47.41 79.86 -142.60 -75.14 -158.21 21 | A U 5 -63.47 157.74 61.90 79.08 -154.48 -71.18 -162.32 22 | A C 6 -72.78 173.52 52.94 78.95 -157.31 -63.42 -161.72 23 | A C 7 -64.85 -179.81 48.42 82.68 -9999.99 -9999.99 -153.64 24 | B G 8 -9999.99 -9999.99 62.36 84.76 -150.14 -69.42 -171.52 25 | B G 9 -71.13 179.71 53.73 79.65 -158.27 -72.45 -166.70 26 | B G 10 -66.70 172.47 54.39 77.42 -145.11 -72.20 -171.36 27 | B G 11 -62.34 174.10 51.49 75.27 -152.78 -71.99 -163.01 28 | B C 12 -65.60 169.71 52.39 77.17 -143.76 -66.90 -165.47 29 | B U 13 -70.34 171.57 62.30 79.73 -156.00 -69.36 -161.44 30 | B A 14 -71.43 -173.49 53.24 85.12 -9999.99 -9999.99 -156.14 31 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | C U 1 -9999.99 -9999.99 57.33 76.87 -154.22 -64.12 -166.33 18 | C A 2 -69.41 175.30 57.43 73.22 -152.47 -52.02 -162.19 19 | C G 3 -93.94 177.51 73.60 80.79 -158.00 -73.76 -163.13 20 | C C 4 -65.46 176.41 48.65 75.78 -155.72 -65.84 -161.63 21 | C U 5 -56.87 172.07 46.96 82.75 -161.71 -72.16 -163.48 22 | C C 6 -73.95 -178.77 53.07 82.86 -146.29 -74.84 -158.12 23 | C C 7 -64.80 173.61 52.44 78.13 -9999.99 -9999.99 -152.16 24 | D G 8 -9999.99 -9999.99 48.15 80.80 -152.26 -71.73 -171.41 25 | D G 9 -66.63 165.61 49.11 71.53 -156.58 -63.87 -167.85 26 | D G 10 -69.28 -175.97 45.28 71.32 -149.60 -66.84 -165.87 27 | D G 11 -64.45 170.89 59.17 73.23 -158.65 -63.05 -162.64 28 | D C 12 -66.76 167.57 62.41 78.19 -154.00 -70.21 -160.44 29 | D U 13 -73.59 179.95 51.64 75.82 -153.79 -66.55 -156.77 30 | D A 14 -67.94 172.89 56.10 75.95 -9999.99 -9999.99 -156.13 31 | -------------------------------------------------------------------------------- /include/nrutil.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef _NR_UTILS_H 3 | #define _NR_UTILS_H 4 | 5 | void nrerror(char error_text[]); 6 | 7 | char *cvector(long nl, long nh); 8 | long *lvector(long nl, long nh); 9 | double *dvector(long nl, long nh); 10 | 11 | char **cmatrix(long nrl, long nrh, long ncl, long nch); 12 | long **lmatrix(long nrl, long nrh, long ncl, long nch); 13 | double **dmatrix(long nrl, long nrh, long ncl, long nch); 14 | 15 | char ***c3tensor(long nrl, long nrh, long ncl, long nch, long ndl, long ndh); 16 | long ***l3tensor(long nrl, long nrh, long ncl, long nch, long ndl, long ndh); 17 | double ***d3tensor(long nrl, long nrh, long ncl, long nch, long ndl, long ndh); 18 | 19 | double **submatrix(double **a, long oldrl, long oldrh, long oldcl, long oldch, 20 | long newrl, long newcl); 21 | double **convert_matrix(double *a, long nrl, long nrh, long ncl, long nch); 22 | 23 | void free_cvector(char *v, long nl, long nh); 24 | void free_lvector(long *v, long nl, long nh); 25 | void free_dvector(double *v, long nl, long nh); 26 | 27 | void free_cmatrix(char **m, long nrl, long nrh, long ncl, long nch); 28 | void free_lmatrix(long **m, long nrl, long nrh, long ncl, long nch); 29 | void free_dmatrix(double **m, long nrl, long nrh, long ncl, long nch); 30 | 31 | void free_c3tensor(char ***m, long nrl, long nrh, long ncl, long nch, 32 | long ndl, long ndh); 33 | void free_l3tensor(long ***m, long nrl, long nrh, long ncl, long nch, 34 | long ndl, long ndh); 35 | void free_d3tensor(double ***m, long nrl, long nrh, long ncl, long nch, 36 | long ndl, long ndh); 37 | 38 | void free_submatrix(double **m, long nrl, long nrh, long ncl, long nch); 39 | void free_convert_matrix(double **m, long nrl, long nrh, long ncl, long nch); 40 | 41 | #endif /* _NR_UTILS_H */ 42 | -------------------------------------------------------------------------------- /rnaml2ps/nrutil.h: -------------------------------------------------------------------------------- 1 | 2 | #ifndef _NR_UTILS_H 3 | #define _NR_UTILS_H 4 | 5 | void nrerror(char error_text[]); 6 | 7 | char *cvector(long nl, long nh); 8 | long *lvector(long nl, long nh); 9 | double *dvector(long nl, long nh); 10 | 11 | char **cmatrix(long nrl, long nrh, long ncl, long nch); 12 | long **lmatrix(long nrl, long nrh, long ncl, long nch); 13 | double **dmatrix(long nrl, long nrh, long ncl, long nch); 14 | 15 | char ***c3tensor(long nrl, long nrh, long ncl, long nch, long ndl, long ndh); 16 | long ***l3tensor(long nrl, long nrh, long ncl, long nch, long ndl, long ndh); 17 | double ***d3tensor(long nrl, long nrh, long ncl, long nch, long ndl, long ndh); 18 | 19 | double **submatrix(double **a, long oldrl, long oldrh, long oldcl, long oldch, 20 | long newrl, long newcl); 21 | double **convert_matrix(double *a, long nrl, long nrh, long ncl, long nch); 22 | 23 | void free_cvector(char *v, long nl, long nh); 24 | void free_lvector(long *v, long nl, long nh); 25 | void free_dvector(double *v, long nl, long nh); 26 | 27 | void free_cmatrix(char **m, long nrl, long nrh, long ncl, long nch); 28 | void free_lmatrix(long **m, long nrl, long nrh, long ncl, long nch); 29 | void free_dmatrix(double **m, long nrl, long nrh, long ncl, long nch); 30 | 31 | void free_c3tensor(char ***m, long nrl, long nrh, long ncl, long nch, 32 | long ndl, long ndh); 33 | void free_l3tensor(long ***m, long nrl, long nrh, long ncl, long nch, 34 | long ndl, long ndh); 35 | void free_d3tensor(double ***m, long nrl, long nrh, long ncl, long nch, 36 | long ndl, long ndh); 37 | 38 | void free_submatrix(double **m, long nrl, long nrh, long ncl, long nch); 39 | void free_convert_matrix(double **m, long nrl, long nrh, long ncl, long nch); 40 | 41 | #endif /* _NR_UTILS_H */ 42 | -------------------------------------------------------------------------------- /include/vrml.h: -------------------------------------------------------------------------------- 1 | void process_3d_fig(char *pdbfile, long num_residue, char *bseq, long **seidx, 2 | char **AtomName, char **ResName, char *ChainID, double **xyz, 3 | long num_pair_tot, char **pair_type, long **bs_pairs_tot); 4 | static void vrml_start_plot(void); 5 | static void vrml_draw_chain(long j, long **chain_idx, double **C4xyz); 6 | void label_residue(long j, long **chain_idx, double **C4xyz, char **resnam); 7 | void draw_interact(int k1, int k2, char *pair_type, double **C4xyz); 8 | static void vrml_header(void); 9 | static void vrml_add_indent(int incr); 10 | static void vrml_cond_newline(void); 11 | static void vrml_finish_list(void); 12 | static void vrml_finish_node(void); 13 | static void vrml_g(double d); 14 | static int vrml_get_indent(void); 15 | static void vrml_header(void); 16 | static void vrml_i(const int i); 17 | static void vrml_list(char *list); 18 | static void vrml_material(const int j, double tr); 19 | static void vrml_newline(void); 20 | static void vrml_node(char *node); 21 | static void vrml_qs(char *str); 22 | static void vrml_s(char *str); 23 | static void vrml_s_newline(char *str); 24 | static void put_delimiter(void); 25 | static void put_delimiter(void); 26 | static void pad_blanks(int n); 27 | static void vrml_finish_node(void); 28 | static void vrml_v3(int i, double **Pxyz); 29 | static void vrml_i(const int i); 30 | static void vrml_finish_list(void); 31 | static void output_appearance(const int is_line); 32 | static void vrml_cond_newline(void); 33 | static void vrml_finist_plot(const int add_rotation); 34 | static void vrml_g(double d); 35 | static void vrml_qs(char *str); 36 | static void output_shape(char *str, double *tran); 37 | static void output_rot(double *rot, double angle); 38 | static void output_scale(double *scale); 39 | static void output_redius(double rad); 40 | static void output_color(char *dc); 41 | static void output_tr(double tr); 42 | static void vrml_rgb_color(double *); 43 | -------------------------------------------------------------------------------- /include/rna.h: -------------------------------------------------------------------------------- 1 | #ifndef RNA_H 2 | #define RNA_H 3 | 4 | #define PI 3.141592653589793 5 | #define XEPS 1.0e-7 6 | #define XBIG 1.0e+18 7 | #define MFACTOR 10000.0 8 | #define CURVED_CRT 0.6 9 | #define RNA_VER "RNAdraw by Huanwang Yang (Nov. 2000 -- Jun. 2001)" 10 | #define NMISC 29 /* number of characters of miscellaneous items */ 11 | #define NATOMCOL 11 /* number of atom with defined colors */ 12 | #define NBASECOL 7 /* number of base with defined colors */ 13 | #define PAR_FILE "misc_rna.par" /* miscellaneous parameters */ 14 | #define REF_FILE "ref_frames.dat" /* reference frames */ 15 | #define BASE_FILE "baselist.dat" /* 3-letter to 1-letter base residue */ 16 | #define NP 101L /* maximum number of pairs per base */ 17 | #define BOND_UPPER_LIMIT 2.5 /* for function torsion */ 18 | #define HTWIST0 0.05 /* minimum helical twist */ 19 | #define BOND_FACTOR 1.15 /* bond distance criterion */ 20 | #define NBOND_FNUM 2.0 /* estimated # of bond from # of atoms */ 21 | #define NON_WC_IDX 6 /* non-Watson-Crick base index */ 22 | #define AXIS_LENGTH 3.5 /* reference axis length */ 23 | #define O3_P_DIST 4.5 /* maximum O3'--P distance for linkage */ 24 | #define BUF512 512 25 | #define NUM_BASE_ATOMS 50 /* max. no. of base atoms in a residue */ 26 | #define NUM_RESIDUE_ATOMS 100 /* max. no. of atoms in a residue */ 27 | #define NUM_DINUCLEOTIDE_ATOMS 400 /* max. no. of atoms per dinucleotide */ 28 | #define EMPTY_NUMBER -9999.99 29 | #define EMPTY_CRITERION -9999 30 | #define MAXBASE 30000 /* maximum number of bases in regular/fiber */ 31 | #define NELE 12 /* 12 elements */ 32 | #define WC_DORG 2.5 /* maximum distance between base origins to be a WC pair */ 33 | #define HLXANG 0.26 /* 75, 105: 90 +/- 15: find_pair */ 34 | 35 | #include "rna_header.h" 36 | 37 | #endif /* RNA_H */ 38 | -------------------------------------------------------------------------------- /test/pdb/pdb1nvy/pdb1nvy.pdb_new_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | A T 1 -9999.99 -9999.99 60.27 144.84 -111.96 -65.88 -158.88 18 | A C 2 -71.79 142.29 44.56 127.83 -95.23 158.79 -67.12 19 | A G 3 -72.90 136.98 46.90 151.67 -111.70 174.76 -74.30 20 | A G 4 -58.78 137.17 42.14 136.52 170.85 -99.83 -87.95 21 | A T 5 -73.68 -173.82 57.55 140.90 -94.71 -179.89 -98.07 22 | A A 6 -71.58 139.53 45.63 138.61 -86.24 -80.93 -97.31 23 | A C 7 -59.33 -176.90 67.55 149.03 -124.47 -62.31 -156.05 24 | A C 8 -80.71 169.24 41.63 149.14 -106.77 169.63 -66.83 25 | A G 9 -59.36 134.69 37.83 151.83 -103.27 167.18 -76.24 26 | A A 10 -75.09 148.98 44.21 147.23 -9999.99 -9999.99 -86.63 27 | B T 1 -9999.99 -9999.99 44.97 138.04 -112.18 -68.96 -155.91 28 | B C 2 -82.21 157.05 44.35 128.82 -101.38 159.52 -72.69 29 | B G 3 -65.82 137.70 41.60 152.37 -117.02 177.37 -76.56 30 | B G 4 -69.65 148.15 46.48 140.49 174.51 -103.56 -90.53 31 | B T 5 -79.27 -174.79 70.20 111.67 173.78 -90.79 -117.25 32 | B A 6 -78.90 -173.07 68.97 144.41 -157.62 -83.09 -90.18 33 | B C 7 -96.73 72.74 172.26 150.38 -118.48 -65.36 -154.58 34 | B C 8 -76.09 155.29 42.42 137.07 -95.26 154.27 -67.26 35 | B G 9 -68.92 142.39 37.55 157.90 -96.66 168.60 -73.53 36 | B A 10 -82.38 141.70 56.39 139.74 -9999.99 -9999.99 -88.32 37 | -------------------------------------------------------------------------------- /test/mmcif/other/6pom/6pom.cif_patt.out: -------------------------------------------------------------------------------- 1 | BEGIN_base-pair 2 | 168_176, B: 13 C-G 21 B: +/+ cis XIX 3 | 170_202, B: 15 G-C 47 B: W/W tran XXII 4 | 173_210, B: 18 G-C 55 B: W/W cis n/a 5 | 176_200, B: 21 G-G 45 B: H/W tran syn VII 6 | 180_198, B: 25 A-G 43 B: W/W cis VIII 7 | 181_197, B: 26 C-G 42 B: +/+ cis XIX 8 | 181_197,- 9 | 168_176_170_202_173_210_176_200_180_198_181_197_0, click this line to see above pattern 10 | 0_0,--------- 11 | 115_118, A: 132 G-C 141 A: +/+ cis XIX 12 | 116_117, A: 133 A-U 140 A: W/W cis n/a 13 | 128_154, A: 151 A-U 181 A: W/W cis n/a 14 | 129_154, A: 152 G-U 181 A: W/W cis XXVIII 15 | 130_152, A: 153 G-C 179 A: +/+ cis XIX 16 | 130_152,- 17 | 115_118_116_117_128_154_129_154_130_152_0, click this line to see above pattern 18 | 0_0,--------- 19 | 28_75, A: 40 G-C 89 A: +/+ cis XIX 20 | 29_31, A: 41 U-A 44 A: S/H tran syn n/a 21 | 30_72, A: 42 U-A 85 A: W/H tran XXIV 22 | 33_73, A: 46 C-G 86 A: +/+ cis XIX 23 | 33_73,- 24 | 28_75_29_31_30_72_33_73_0, click this line to see above pattern 25 | 0_0,--------- 26 | 5_96, A: 17 C-G 110 A: +/+ cis XIX 27 | 6_7, A: 18 A-G 19 A: S/S cis syn n/a 28 | 9_95, A: 21 G-A 109 A: S/H tran XI 29 | 10_94, A: 22 A-G 108 A: H/S tran XI 30 | 11_93, A: 23 G-U 107 A: W/W cis XXVIII 31 | 12_92, A: 24 A-U 106 A: -/- cis XX 32 | 12_92,- 33 | 5_96_6_7_9_95_10_94_11_93_12_92_0, click this line to see above pattern 34 | 0_0,--------- 35 | 15_89, A: 27 A-U 103 A: -/- cis XX 36 | 17_88, A: 29 G-A 102 A: H/W cis syn IX 37 | 21_82, A: 33 U-A 96 A: W/H tran XXIV 38 | 22_81, A: 34 A-G 95 A: H/S tran XI 39 | 23_80, A: 35 C-C 94 A: W/W cis n/a 40 | 24_79, A: 36 U-A 93 A: -/- cis XX 41 | 24_79,- 42 | 15_89_17_88_21_82_22_81_23_80_24_79_0, click this line to see above pattern 43 | 0_0,--------- 44 | END_base-pair 45 | -------------------------------------------------------------------------------- /test/pdb/test/test.pdb.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test.pdb 2 | BEGIN_base-pair 3 | 1_18, A: 507 C-G 524 A: +/+ cis XIX 4 | 3_4, A: 509 A-A 510 A: stacked 5 | 4_36, A: 510 A-G 542 A: s/S cis n/a 6 | 5_34, A: 511 C-G 540 A: +/+ cis syn XIX 7 | 6_33, A: 512 U-A 539 A: -/- cis XX 8 | 6_34, A: 512 U-G 540 A: stacked 9 | 7_32, A: 513 C-G 538 A: +/+ cis XIX 10 | 7_33, A: 513 C-A 539 A: stacked 11 | 8_31, A: 514 C-G 537 A: +/+ cis XIX 12 | 8_32, A: 514 C-G 538 A: stacked 13 | 9_30, A: 515 G-C 536 A: +/+ cis XIX 14 | 10_27, A: 516 U-A 533 A: W/H tran XXIV 15 | 14_23, A: 520 A-G 529 A: H/S tran XI 16 | 14_30, A: 520 A-C 536 A: W/S cis n/a 17 | 15_22, A: 521 G-C 528 A: +/+ cis XIX 18 | 15_23, A: 521 G-G 529 A: stacked 19 | 16_21, A: 522 C-G 527 A: +/+ cis XIX 20 | 16_22, A: 522 C-C 528 A: stacked 21 | 21_22, A: 527 G-C 528 A: stacked 22 | 2_3, A: 508 C-A 509 A: S/H cis !1H(b_b) 23 | 2_4, A: 508 C-A 510 A: S/W cis !1H(b_b) 24 | 13_27, A: 519 C-A 533 A: ./W cis !1H(b_b) 25 | 14_27, A: 520 A-A 533 A: W/W tran !1H(b_b) 26 | 3_37, A: 509 A-C 543 A: S/s cis !(b_s) 27 | 10_13, A: 516 U-C 519 A: S/W cis !(b_s) 28 | 21_29, A: 527 G-A 535 A: S/S tran !(b_s) 29 | 12_13, A: 518 C-C 519 A: S/H cis !(s_s) 30 | 15_30, A: 521 G-C 536 A: S/S cis !(s_s) 31 | END_base-pair 32 | 33 | Summary of triplets and higher multiplets 34 | BEGIN_multiplets 35 | 9_14_30_| [1 3] A: 515 G + A: 520 A + A: 536 C 36 | END_multiplets 37 | The total base pairs = 12 (from 40 bases) 38 | ------------------------------------------------ 39 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 40 | 8 0 0 0 0 1 0 41 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 42 | 0 1 1 0 0 1 43 | ------------------------------------------------ 44 | -------------------------------------------------------------------------------- /test.sh: -------------------------------------------------------------------------------- 1 | rnaview -p --pdb test/pdb/pdb1nvy/pdb1nvy.pdb 1> /dev/null 2 | rnaview -p --pdb test/pdb/test1/test1.pdb 1> /dev/null 3 | rnaview -p --pdb test/pdb/tr0001/tr0001.pdb 1> /dev/null 4 | rnaview -p --pdb test/pdb/url064/url064.pdb 1> /dev/null 5 | rnaview -p --pdb test/pdb/urx053/urx053.pdb 1> /dev/null 6 | rnaview -p --cif test/mmcif/insertion_code/1EFW/1EFW.cif 1> /dev/null 7 | rnaview -p --cif test/mmcif/insertion_code/1VVJ/1VVJ.cif 1> /dev/null 8 | rnaview -p --cif test/mmcif/insertion_code/4ARC/4ARC.cif 1> /dev/null 9 | rnaview -p --cif test/mmcif/nmr_structure/8if5/8if5.cif 1> /dev/null 10 | rnaview -p --cif test/mmcif/other/6pom/6pom.cif 1> /dev/null 11 | rnaview -p --cif test/mmcif/x-ray/3P4J/assembly-1/3p4j-assembly1.cif 1> /dev/null 12 | rnaview -p --cif test/mmcif/x-ray/434D/assembly-1/434d-assembly1.cif 1> /dev/null 13 | rnaview -p --cif test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif 1> /dev/null 14 | rnaview -p --cif test/mmcif/x-ray/4NMG/assembly-1/4nmg-assembly1.cif 1> /dev/null 15 | 16 | diff test/pdb/pdb1nvy/pdb1nvy.pdb.ps test/pdb/pdb1nvy/pdb1nvy_gt.pdb.ps 17 | diff test/pdb/test1/test1.pdb.ps test/pdb/test1/test1_gt.pdb.ps 18 | diff test/pdb/tr0001/tr0001.pdb.ps test/pdb/tr0001/tr0001_gt.pdb.ps 19 | diff test/pdb/url064/url064.pdb.ps test/pdb/url064/url064_gt.pdb.ps 20 | diff test/pdb/urx053/urx053.pdb.ps test/pdb/urx053/urx053_gt.pdb.ps 21 | diff test/mmcif/insertion_code/1EFW/1EFW.cif.ps test/mmcif/insertion_code/1EFW/1EFW_gt.cif.ps 22 | diff test/mmcif/insertion_code/1VVJ/1VVJ.cif.ps test/mmcif/insertion_code/1VVJ/1VVJ_gt.cif.ps 23 | diff test/mmcif/insertion_code/4ARC/4ARC.cif.ps test/mmcif/insertion_code/4ARC/4ARC_gt.cif.ps 24 | diff test/mmcif/nmr_structure/8if5/8if5.cif.ps test/mmcif/nmr_structure/8if5/8if5_gt.cif.ps 25 | diff test/mmcif/other/6pom/6pom.cif.ps test/mmcif/other/6pom/6pom_gt.cif.ps 26 | diff test/mmcif/x-ray/3P4J/assembly-1/3p4j-assembly1.cif.ps test/mmcif/x-ray/3P4J/assembly-1/3p4j-assembly1_gt.cif.ps 27 | diff test/mmcif/x-ray/434D/assembly-1/434d-assembly1.cif.ps test/mmcif/x-ray/434D/assembly-1/434d-assembly1_gt.cif.ps 28 | diff test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif.ps test/mmcif/x-ray/434D/assembly-2/434d-assembly2_gt.cif.ps 29 | diff test/mmcif/x-ray/4NMG/assembly-1/4nmg-assembly1.cif.ps test/mmcif/x-ray/4NMG/assembly-1/4nmg-assembly1_gt.cif.ps 30 | -------------------------------------------------------------------------------- /test/pdb/url064/url064.pdb_new_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | A C 70 -9999.99 -9999.99 58.60 82.75 -151.15 -71.73 -175.15 18 | A C 71 -64.00 175.70 55.03 81.50 -145.41 -57.86 -169.26 19 | A G 72 -63.34 175.53 47.24 84.94 -147.43 -86.27 -157.82 20 | A A 73 -105.94 79.59 161.19 85.07 -116.48 -62.52 175.47 21 | A U 74 -63.63 169.04 45.39 79.30 -147.21 -66.00 -162.43 22 | A G 75 -63.57 173.16 54.15 81.45 -145.28 -66.98 -168.25 23 | A G 76 -64.24 171.09 54.05 75.08 -145.44 -69.83 -166.89 24 | A U 77 -54.22 166.51 52.16 79.40 -155.64 -73.56 -164.27 25 | A A 78 -63.74 178.11 55.49 78.62 -142.32 -56.93 -168.44 26 | A G 79 -70.09 171.09 57.46 80.12 -153.21 -61.99 -167.30 27 | A U 80 -67.31 172.50 59.54 85.16 -158.84 -87.15 -166.98 28 | A G 81 -70.69 174.22 62.72 71.65 -9999.99 -9999.99 -167.30 29 | B G 96 -9999.99 -9999.99 56.43 81.17 -147.92 -64.75 -174.09 30 | B C 97 -65.92 175.57 56.68 83.07 -143.75 -55.57 -168.01 31 | B G 98 -70.88 172.03 56.06 78.58 -150.37 -84.58 -164.17 32 | B A 99 -101.42 81.89 168.96 86.10 -127.61 -60.53 177.08 33 | B G 100 -72.95 177.18 46.42 79.26 -138.44 -63.89 -162.86 34 | B A 101 -63.30 165.58 52.79 80.52 -145.23 -65.34 -166.07 35 | B G 102 -65.62 167.82 59.15 82.96 -149.76 -74.54 -171.24 36 | B U 103 -63.06 175.50 53.18 78.60 -150.77 -79.27 -164.79 37 | B A 104 -60.69 173.22 56.66 79.04 -137.48 -58.81 -165.82 38 | B G 105 -59.48 166.86 47.43 84.39 -155.02 -74.56 -170.52 39 | B G 106 -61.56 171.78 57.83 76.70 -155.63 -73.89 -168.94 40 | B C 107 -63.72 175.72 57.32 76.75 -9999.99 -9999.99 -163.61 41 | -------------------------------------------------------------------------------- /test/pdb/test1/test1.pdb_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/pdb/test1/test1.pdb_new 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 15_26, A: 962 C-G 973 A: +/+ cis XIX 37 | 16_25, A: 963 G-C 972 A: +/+ cis XIX 38 | 9_13, A: 956 U-U 960 A: W/W tran syn XII,XIII 39 | END_base-pair 40 | The total base pairs = 4 (from 34 bases) 41 | ------------------------------------------------ 42 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 43 | 2 0 1 0 0 1 0 44 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 45 | 0 0 0 0 0 0 46 | ------------------------------------------------ 47 | -------------------------------------------------------------------------------- /test/pdb/pdb1nvy/pdb1nvy.pdb_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/pdb/pdb1nvy/pdb1nvy.pdb_new 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 2_19, A: 2 C-G 9 B: +/+ cis syn syn XIX 37 | 3_18, A: 3 G-C 8 B: +/+ cis syn syn XIX 38 | 4_17, A: 4 G-C 7 B: +/+ cis syn XIX 39 | END_base-pair 40 | The total base pairs = 6 (from 20 bases) 41 | ------------------------------------------------ 42 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 43 | 6 0 0 0 0 0 0 44 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 45 | 0 0 0 0 0 0 46 | ------------------------------------------------ 47 | -------------------------------------------------------------------------------- /test/mmcif/nmr_structure/8if5/8IF5.CIF_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | A C 1 -9999.99 -9999.99 178.09 137.98 -177.51 -98.78 -109.12 18 | A A 2 -67.48 -175.81 49.45 138.77 -179.74 -98.75 -108.54 19 | A C 3 -67.18 -172.01 48.89 135.52 -170.81 -120.72 -107.96 20 | A G 4 -44.12 167.00 42.87 140.09 -179.91 -93.68 -107.79 21 | A T 5 -67.88 172.52 53.37 83.58 -148.67 -63.14 -136.90 22 | A G 6 -68.30 -135.44 57.35 141.16 -143.13 -168.97 -98.47 23 | A T 7 -56.17 152.28 47.18 139.68 -95.77 77.42 -114.08 24 | A T 8 65.10 174.32 -51.01 151.41 -93.80 80.87 -140.66 25 | A G 9 66.53 -179.64 -176.83 145.50 -126.34 -73.66 -120.84 26 | A T 10 -87.87 -159.19 -76.16 151.81 -119.21 -92.87 -150.80 27 | A C 11 -147.53 -167.13 45.79 140.35 -156.63 -84.93 -118.33 28 | A T 12 -58.98 179.44 56.39 140.90 -143.07 -171.16 -125.67 29 | A C 13 -59.31 146.31 46.19 137.51 -168.86 -122.79 -109.03 30 | A T 14 53.86 -179.53 -179.89 153.70 -116.95 -57.67 -129.39 31 | A C 15 -59.67 -163.58 51.76 140.24 -101.05 151.20 -115.81 32 | A T 16 -71.98 -170.01 46.69 139.87 -96.08 74.64 -132.73 33 | A G 17 74.98 177.48 -172.50 139.81 -169.38 -98.36 -106.28 34 | A T 18 -64.07 -169.85 49.33 140.24 -142.33 -167.40 -120.54 35 | A G 19 -52.88 143.88 47.84 141.44 -165.55 -123.14 -105.28 36 | A T 20 61.93 -177.59 -178.06 157.00 -135.72 -69.77 -147.09 37 | A C 21 -61.37 178.18 59.79 140.07 -142.89 -178.15 -117.57 38 | A T 22 -60.00 -172.40 38.45 137.31 -175.75 -99.98 -128.46 39 | A C 23 -67.14 -170.52 48.41 138.82 -177.35 -106.03 -108.25 40 | A G 24 -56.51 179.44 46.48 138.43 -179.96 -100.87 -108.55 41 | A T 25 -65.97 -172.14 48.56 133.83 -175.50 -100.25 -109.07 42 | A G 26 -68.75 -171.73 48.47 139.87 -9999.99 -9999.99 -98.42 43 | -------------------------------------------------------------------------------- /test/pdb/pdb1nvy/pdb1nvy.ent_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: pdb1nvy.ent_new 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 2_19, A: 2 C-G 9 B: +/+ cis syn syn XIX 37 | 3_18, A: 3 G-C 8 B: +/+ cis syn syn XIX 38 | 4_17, A: 4 G-C 7 B: +/+ cis syn XIX 39 | END_base-pair 40 | The total base pairs = 6 (from 20 bases) 41 | ------------------------------------------------ 42 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 43 | 6 0 0 0 0 0 0 44 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 45 | 0 0 0 0 0 0 46 | ------------------------------------------------ 47 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/4NMG/assembly-1/4NMG-ASSEMBLY1.CIF_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | A U 2647 -9999.99 -9999.99 41.12 148.48 -91.53 88.83 -145.68 18 | A G 2648 -170.50 -170.61 130.89 86.22 -139.04 -64.77 -170.36 19 | A C 2649 -67.06 176.68 48.25 77.20 -159.96 -64.31 -156.73 20 | A U 2650 132.10 -169.24 -161.07 86.39 -143.26 -70.91 -164.18 21 | A C 2651 -65.42 162.73 59.03 78.50 -155.98 -68.79 -163.37 22 | A C 2652 -68.30 179.73 54.49 79.23 -146.79 -58.60 -159.01 23 | A U 2653 -67.60 171.63 52.75 86.02 -105.29 -51.16 -149.77 24 | A A 2654 -177.47 -143.23 59.34 150.97 -87.75 154.38 -130.73 25 | A G 2655 -91.06 80.33 -172.05 155.88 -170.07 139.50 -88.09 26 | A 6FU 2656 -72.26 149.49 44.35 87.99 -138.26 -67.87 -174.80 27 | A A 2657 -74.09 -179.90 51.72 78.82 -144.43 -53.13 -166.62 28 | A C 2658 -68.81 172.07 55.01 78.30 -145.29 -63.48 -164.18 29 | A G 2659 -70.36 177.81 50.33 79.43 -130.71 -64.13 -168.37 30 | A A 2660 167.89 133.60 58.24 82.49 -119.38 -79.40 -163.41 31 | A G 2661 -61.15 142.29 66.31 82.71 -154.82 -59.68 -160.48 32 | A A 2662 -72.26 -179.13 50.16 82.25 -138.81 -67.85 -152.09 33 | A G 2663 144.22 -137.46 -179.45 85.33 -138.29 -60.43 -173.00 34 | A G 2664 -65.87 174.41 57.97 78.20 -159.04 -76.57 -165.45 35 | A A 2665 -110.77 78.56 164.39 80.30 -150.09 -74.56 177.25 36 | A C 2666 -53.23 169.06 64.59 78.59 -129.24 -66.69 -167.82 37 | A C 2667 -63.93 161.63 56.25 82.39 -138.93 -57.59 -165.42 38 | A G 2668 -69.83 173.44 52.76 72.93 -145.81 -71.83 -168.56 39 | A G 2669 -55.62 163.94 61.60 79.10 -141.54 -78.52 -170.33 40 | A A 2670 -67.68 169.37 53.94 80.00 -157.23 -64.61 -163.75 41 | A G 2671 -73.40 171.12 66.45 76.69 -151.45 -68.46 -164.63 42 | A U 2672 -64.34 169.59 51.10 77.12 -150.00 -71.30 -157.29 43 | A G 2673 -70.17 175.99 54.60 73.48 -9999.99 -9999.99 -158.07 44 | -------------------------------------------------------------------------------- /rnaml2ps/ps_image.par: -------------------------------------------------------------------------------- 1 | %% stacking diagram widths for base-pairs 1 & 2 2 | /W1 {1 setlinewidth} bind def 3 | /W2 {1.5 setlinewidth} bind def 4 | /W3 {2 setlinewidth} bind def 5 | /W4 {3 setlinewidth} bind def 6 | 7 | %% minor and major grooves filling color saturation 8 | /MINOR_SAT 0.9 def 9 | /MAJOR_SAT 0.1 def 10 | /OTHER_SIDES {0 0 1 sethsbcolor fill} bind def 11 | 12 | %% defineing geometry shapes 13 | /NP {newpath} bind def 14 | /CIRCLE {0 360 arc closepath} bind def %% circle 15 | /TRIANGLE {moveto lineto lineto closepath} bind def %% triangle 16 | /SQUARE {moveto lineto lineto lineto closepath} bind def %% square 17 | /LINE {moveto lineto stroke} bind def %% line 18 | /DASHLINE { moveto lineto [2 4] 0 setdash stroke } bind def %% dashline 19 | /DOTLINE {1 0 1 setrgbcolor} bind def %% dotline 20 | /Dw {1 setlinewidth} bind def 21 | /FB {setgray fill} bind def 22 | /R6 {moveto lineto lineto lineto lineto lineto closepath} bind def 23 | /R9 {moveto lineto lineto lineto lineto lineto 24 | lineto lineto lineto closepath} bind def 25 | 26 | %% line drawing colors for ACGITU & others 27 | /Al {0.0000 1.00 1.00 sethsbcolor} bind def 28 | /Cl {0.1667 1.00 1.00 sethsbcolor} bind def 29 | /Gl {0.3333 1.00 1.00 sethsbcolor} bind def 30 | /Il {0.3333 1.00 0.57 sethsbcolor} bind def 31 | /Tl {0.6667 1.00 1.00 sethsbcolor} bind def 32 | /Ul {0.5000 1.00 1.00 sethsbcolor} bind def 33 | /Xl {0.0000 0.00 0.00 sethsbcolor} bind def 34 | /XX {0.2000 0.20 0.20 sethsbcolor} bind def 35 | /FILLBLACK {0.0000 0.00 0.00 sethsbcolor fill} bind def 36 | 37 | %% minor groove filling colors for ACGITU & others 38 | /Am {0.0000 MINOR_SAT 1.00 sethsbcolor fill} bind def 39 | /Cm {0.1667 MINOR_SAT 1.00 sethsbcolor fill} bind def 40 | /Gm {0.3333 MINOR_SAT 1.00 sethsbcolor fill} bind def 41 | /Im {0.3333 MINOR_SAT 0.57 sethsbcolor fill} bind def 42 | /Tm {0.6667 MINOR_SAT 1.00 sethsbcolor fill} bind def 43 | /Um {0.5000 MINOR_SAT 1.00 sethsbcolor fill} bind def 44 | /Xm {0.0000 0.00 MAJOR_SAT sethsbcolor fill} bind def 45 | 46 | %% major groove filling colors for ACGITU & others 47 | /AM {0.0000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 48 | /CM {0.1667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 49 | /GM {0.3333 MAJOR_SAT 1.00 sethsbcolor fill} bind def 50 | /IM {0.3333 MAJOR_SAT 0.57 sethsbcolor fill} bind def 51 | /TM {0.6667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 52 | /UM {0.5000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 53 | /XM {0.0000 0.00 MINOR_SAT sethsbcolor fill} bind def 54 | 55 | %% define line width, line join style & cap style (1 means round) 56 | 1 setlinewidth 1 setlinejoin 1 setlinecap 57 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/3P4J/assembly-1/3P4J-ASSEMBLY1.CIF.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/x-ray/3P4J/assembly-1/3p4j-assembly1.cif 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_12, A: 1 C-G 12 B: +/+ cis syn XIX 37 | 2_11, A: 2 G-C 11 B: +/+ cis syn XIX 38 | 3_10, A: 3 C-G 10 B: +/+ cis syn XIX 39 | 4_9, A: 4 G-C 9 B: +/+ cis syn XIX 40 | 5_8, A: 5 C-G 8 B: +/+ cis syn XIX 41 | 6_7, A: 6 G-C 7 B: +/+ cis syn XIX 42 | END_base-pair 43 | The total base pairs = 6 (from 12 bases) 44 | ------------------------------------------------ 45 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 46 | 6 0 0 0 0 0 0 47 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 48 | 0 0 0 0 0 0 49 | ------------------------------------------------ 50 | -------------------------------------------------------------------------------- /test/pdb/test1/test1.pdb.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/pdb/test1/test1.pdb_new 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 4_23, A: 951 G-C 970 A: S/s cis n/a 37 | 9_13, A: 956 U-U 960 A: W/W tran syn XII,XIII 38 | 15_26, A: 962 C-G 973 A: +/+ cis XIX 39 | 16_25, A: 963 G-C 972 A: +/+ cis XIX 40 | 20_21, A: 967 C-A 968 A: stacked 41 | 2_24, A: 949 A-G 971 A: S/H tran syn !(b_s) 42 | 18_19, A: 965 A-G 966 A: S/? tran !(s_s) 43 | END_base-pair 44 | The total base pairs = 4 (from 34 bases) 45 | ------------------------------------------------ 46 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 47 | 2 0 1 0 0 1 0 48 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 49 | 0 0 0 0 0 0 50 | ------------------------------------------------ 51 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/3P4J/assembly-1/3P4J-ASSEMBLY1.CIF_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/x-ray/3P4J/assembly-1/3p4j-assembly1.cif 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_12, A: 1 C-G 12 B: +/+ cis syn XIX 37 | 3_10, A: 3 C-G 10 B: +/+ cis syn XIX 38 | 5_8, A: 5 C-G 8 B: +/+ cis syn XIX 39 | 2_11, A: 2 G-C 11 B: +/+ cis syn XIX 40 | 4_9, A: 4 G-C 9 B: +/+ cis syn XIX 41 | 6_7, A: 6 G-C 7 B: +/+ cis syn XIX 42 | END_base-pair 43 | The total base pairs = 6 (from 12 bases) 44 | ------------------------------------------------ 45 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 46 | 6 0 0 0 0 0 0 47 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 48 | 0 0 0 0 0 0 49 | ------------------------------------------------ 50 | -------------------------------------------------------------------------------- /BASEPARS/ps_image.par: -------------------------------------------------------------------------------- 1 | 2 | /Times-Bold findfont 13 scalefont setfont %%set font for (A U G C T) 3 | 4 | %% stacking diagram widths for base-pairs 1 & 2 5 | /W1 {1 setlinewidth} bind def 6 | /W2 {1.5 setlinewidth} bind def 7 | /W3 {2 setlinewidth} bind def 8 | /W4 {3 setlinewidth} bind def 9 | 10 | %% minor and major grooves filling color saturation 11 | /MINOR_SAT 0.9 def 12 | /MAJOR_SAT 0.1 def 13 | /OTHER_SIDES {0 0 1 sethsbcolor fill} bind def 14 | 15 | %% defineing geometry shapes 16 | /NP {newpath} bind def 17 | /CIRCLE {0 360 arc closepath} bind def %% circle 18 | /TRIANGLE {moveto lineto lineto closepath} bind def %% triangle 19 | /SQUARE {moveto lineto lineto lineto closepath} bind def %% square 20 | /LINE {moveto lineto stroke} bind def %% line 21 | /DASHLINE { moveto lineto [2 4] 0 setdash stroke } bind def %% dashline 22 | /DOTLINE {1 0 1 setrgbcolor} bind def %% dotline 23 | /Dw {1 setlinewidth} bind def 24 | /FB {setgray fill} bind def 25 | /R6 {moveto lineto lineto lineto lineto lineto closepath} bind def 26 | /R9 {moveto lineto lineto lineto lineto lineto 27 | lineto lineto lineto closepath} bind def 28 | 29 | %% line drawing colors for ACGITU & others 30 | /Al {0.0000 1.00 1.00 sethsbcolor} bind def 31 | /Cl {0.1667 1.00 1.00 sethsbcolor} bind def 32 | /Gl {0.3333 1.00 1.00 sethsbcolor} bind def 33 | /Il {0.3333 1.00 0.57 sethsbcolor} bind def 34 | /Tl {0.6667 1.00 1.00 sethsbcolor} bind def 35 | /Ul {0.5000 1.00 1.00 sethsbcolor} bind def 36 | /Xl {0.0000 0.00 0.00 sethsbcolor} bind def 37 | /XX {0.2000 0.20 0.20 sethsbcolor} bind def 38 | /FILLBLACK {0.0000 0.00 0.00 sethsbcolor fill} bind def 39 | 40 | %% minor groove filling colors for ACGITU & others 41 | /Am {0.0000 MINOR_SAT 1.00 sethsbcolor fill} bind def 42 | /Cm {0.1667 MINOR_SAT 1.00 sethsbcolor fill} bind def 43 | /Gm {0.3333 MINOR_SAT 1.00 sethsbcolor fill} bind def 44 | /Im {0.3333 MINOR_SAT 0.57 sethsbcolor fill} bind def 45 | /Tm {0.6667 MINOR_SAT 1.00 sethsbcolor fill} bind def 46 | /Um {0.5000 MINOR_SAT 1.00 sethsbcolor fill} bind def 47 | /Xm {0.0000 0.00 MAJOR_SAT sethsbcolor fill} bind def 48 | 49 | %% major groove filling colors for ACGITU & others 50 | /AM {0.0000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 51 | /CM {0.1667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 52 | /GM {0.3333 MAJOR_SAT 1.00 sethsbcolor fill} bind def 53 | /IM {0.3333 MAJOR_SAT 0.57 sethsbcolor fill} bind def 54 | /TM {0.6667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 55 | /UM {0.5000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 56 | /XM {0.0000 0.00 MINOR_SAT sethsbcolor fill} bind def 57 | 58 | %% define line width, line join style & cap style (1 means round) 59 | 1 setlinewidth 1 setlinejoin 1 setlinecap 60 | -------------------------------------------------------------------------------- /test/pdb/pdb1nvy/pdb1nvy.pdb.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/pdb/pdb1nvy/pdb1nvy.pdb_new 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_20, A: 1 T-A 10 B: -/- cis syn XX 37 | 2_19, A: 2 C-G 9 B: +/+ cis syn syn XIX 38 | 3_18, A: 3 G-C 8 B: +/+ cis syn syn XIX 39 | 4_17, A: 4 G-C 7 B: +/+ cis syn XIX 40 | 5_16, A: 5 T-A 6 B: -/- cis XX 41 | 6_15, A: 6 A-T 5 B: -/- cis XX 42 | 6_7, A: 6 A-C 7 A: S/H cis !(s_s) 43 | END_base-pair 44 | The total base pairs = 6 (from 20 bases) 45 | ------------------------------------------------ 46 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 47 | 6 0 0 0 0 0 0 48 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 49 | 0 0 0 0 0 0 50 | ------------------------------------------------ 51 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-1/434D-ASSEMBLY1.CIF.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/x-ray/434D/assembly-1/434d-assembly1.cif 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_14, A: 1 U-A 14 B: -/- cis XX 37 | 2_13, A: 2 A-U 13 B: -/- cis XX 38 | 3_12, A: 3 G-C 12 B: +/+ cis XIX 39 | 4_11, A: 4 C-G 11 B: +/+ cis XIX 40 | 5_10, A: 5 U-G 10 B: W/W cis XXVIII 41 | 6_9, A: 6 C-G 9 B: +/+ cis XIX 42 | 7_8, A: 7 C-G 8 B: +/+ cis XIX 43 | END_base-pair 44 | The total base pairs = 7 (from 14 bases) 45 | ------------------------------------------------ 46 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 47 | 6 1 0 0 0 0 0 48 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 49 | 0 0 0 0 0 0 50 | ------------------------------------------------ 51 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_14, C: 1 U-A 14 D: -/- cis XX 37 | 2_13, C: 2 A-U 13 D: -/- cis XX 38 | 3_12, C: 3 G-C 12 D: +/+ cis XIX 39 | 4_11, C: 4 C-G 11 D: +/+ cis XIX 40 | 5_10, C: 5 U-G 10 D: W/W cis XXVIII 41 | 6_9, C: 6 C-G 9 D: +/+ cis XIX 42 | 7_8, C: 7 C-G 8 D: +/+ cis XIX 43 | END_base-pair 44 | The total base pairs = 7 (from 14 bases) 45 | ------------------------------------------------ 46 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 47 | 6 1 0 0 0 0 0 48 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 49 | 0 0 0 0 0 0 50 | ------------------------------------------------ 51 | -------------------------------------------------------------------------------- /test/pdb/pdb1nvy/pdb1nvy.ent.out: -------------------------------------------------------------------------------- 1 | PDB data file name: pdb1nvy.ent_new 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_20, A: 1 T-A 10 B: -/- cis syn XX 37 | 2_19, A: 2 C-G 9 B: +/+ cis syn syn XIX 38 | 3_18, A: 3 G-C 8 B: +/+ cis syn syn XIX 39 | 4_17, A: 4 G-C 7 B: +/+ cis syn XIX 40 | 5_16, A: 5 T-A 6 B: -/- cis XX 41 | 6_15, A: 6 A-T 5 B: -/- cis XX 42 | 6_7, A: 6 A-C 7 A: S/H cis !(s_s) 43 | END_base-pair 44 | The total base pairs = 6 (from 20 bases) 45 | ------------------------------------------------ 46 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 47 | 6 0 0 0 0 0 0 48 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 49 | 0 0 0 0 0 0 50 | ------------------------------------------------ 51 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-1/434D-ASSEMBLY1.CIF_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/x-ray/434D/assembly-1/434d-assembly1.cif 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 2_13, A: 2 A-U 13 B: -/- cis XX 37 | 4_11, A: 4 C-G 11 B: +/+ cis XIX 38 | 6_9, A: 6 C-G 9 B: +/+ cis XIX 39 | 7_8, A: 7 C-G 8 B: +/+ cis XIX 40 | 3_12, A: 3 G-C 12 B: +/+ cis XIX 41 | 1_14, A: 1 U-A 14 B: -/- cis XX 42 | 5_10, A: 5 U-G 10 B: W/W cis XXVIII 43 | END_base-pair 44 | The total base pairs = 7 (from 14 bases) 45 | ------------------------------------------------ 46 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 47 | 6 1 0 0 0 0 0 48 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 49 | 0 0 0 0 0 0 50 | ------------------------------------------------ 51 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 2_13, C: 2 A-U 13 D: -/- cis XX 37 | 4_11, C: 4 C-G 11 D: +/+ cis XIX 38 | 6_9, C: 6 C-G 9 D: +/+ cis XIX 39 | 7_8, C: 7 C-G 8 D: +/+ cis XIX 40 | 3_12, C: 3 G-C 12 D: +/+ cis XIX 41 | 1_14, C: 1 U-A 14 D: -/- cis XX 42 | 5_10, C: 5 U-G 10 D: W/W cis XXVIII 43 | END_base-pair 44 | The total base pairs = 7 (from 14 bases) 45 | ------------------------------------------------ 46 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 47 | 6 1 0 0 0 0 0 48 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 49 | 0 0 0 0 0 0 50 | ------------------------------------------------ 51 | -------------------------------------------------------------------------------- /test/pdb/url064/url064.pdb_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/pdb/url064/url064.pdb_new 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_23, A: 70 C-G 106 B: +/+ cis XIX 37 | 2_22, A: 71 C-G 105 B: +/+ cis XIX 38 | 10_14, A: 79 G-C 97 B: +/+ cis XIX 39 | 11_13, A: 80 U-G 96 B: W/W cis XXVIII 40 | 7_17, A: 76 G-G 100 B: W/W tran III 41 | 8_16, A: 77 U-A 99 B: W/H tran XXIV 42 | 4_20, A: 73 A-U 103 B: H/W tran XXIV 43 | 9_15, A: 78 A-G 98 B: H/S tran XI 44 | 3_21, A: 72 G-A 104 B: S/H tran XI 45 | END_base-pair 46 | The total base pairs = 9 (from 24 bases) 47 | ------------------------------------------------ 48 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 49 | 3 1 1 0 0 0 0 50 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 51 | 0 2 0 0 0 2 52 | ------------------------------------------------ 53 | -------------------------------------------------------------------------------- /test/mmcif/nmr_structure/8if5/8IF5.CIF_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/nmr_structure/8if5/8if5.cif 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_26, A: 1 C-G 26 A: +/+ cis XIX 37 | 3_24, A: 3 C-G 24 A: +/+ cis XIX 38 | 11_19, A: 11 C-G 19 A: +/+ cis XIX 39 | 13_17, A: 13 C-G 17 A: +/+ cis XIX 40 | 4_23, A: 4 G-C 23 A: +/+ cis XIX 41 | 9_15, A: 9 G-C 15 A: +/+ cis XIX 42 | END_base-pair 43 | 44 | Summary of triplets and higher multiplets 45 | BEGIN_multiplets 46 | 7_9_15_| [1 3] A: 7 T + A: 9 G + A: 15 C 47 | 10_11_19_| [2 3] A: 10 T + A: 11 C + A: 19 G 48 | 12_13_17_| [3 3] A: 12 T + A: 13 C + A: 17 G 49 | END_multiplets 50 | 51 | The total base pairs = 12 (from 26 bases) 52 | ------------------------------------------------ 53 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 54 | 7 1 1 0 0 1 0 55 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 56 | 0 0 0 0 2 0 57 | ------------------------------------------------ 58 | -------------------------------------------------------------------------------- /test/pdb/url064/url064.pdb.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/pdb/url064/url064.pdb_new 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_23, A: 70 C-G 106 B: +/+ cis XIX 37 | 2_22, A: 71 C-G 105 B: +/+ cis XIX 38 | 3_21, A: 72 G-A 104 B: S/H tran XI 39 | 4_20, A: 73 A-U 103 B: H/W tran XXIV 40 | 7_17, A: 76 G-G 100 B: W/W tran III 41 | 8_16, A: 77 U-A 99 B: W/H tran XXIV 42 | 9_15, A: 78 A-G 98 B: H/S tran XI 43 | 10_14, A: 79 G-C 97 B: +/+ cis XIX 44 | 11_13, A: 80 U-G 96 B: W/W cis XXVIII 45 | 5_19, A: 74 U-G 102 B: W/W tran !1H(b_b). 46 | 6_18, A: 75 G-A 101 B: W/W cis !1H(b_b) 47 | END_base-pair 48 | The total base pairs = 9 (from 24 bases) 49 | ------------------------------------------------ 50 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 51 | 3 1 1 0 0 0 0 52 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 53 | 0 2 0 0 0 2 54 | ------------------------------------------------ 55 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/4NMG/assembly-1/4NMG-ASSEMBLY1.CIF_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/x-ray/4NMG/assembly-1/4nmg-assembly1.cif 2 | uncommon residue 6FU 2656? on chain A [#10] assigned to: u 3 | ----------------------------------------------------------- 4 | CRITERIA USED TO GENERATE BASE-PAIR: 5 | 3.40 --> upper H-bond length limits (ON..ON). 6 | 26.00 --> max. distance between paired base origins. 7 | 2.50 --> max. vertical distance between paired base origins. 8 | 65.00 --> max. angle between paired bases [0-90]. 9 | 5.40 --> min. distance between RN9/YN1 atoms. 10 | 8.00 --> max. distance criterion for helix break[0-12] 11 | ----------------------------------------------------------- 12 | BASE-PAIR INSTRUCTIONS: 13 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 14 | Column 2 & 3 are chain ID & residue number in input PDB file. 15 | Column 4 is for base pair. The left & right are the bases as 16 | identified by column 2 & 3 and 5 & 6. 17 | Column 5 & 6 are residue number & chain ID in input PDB file. 18 | Column 7 is for base pair annotation. The standard Watson-Crick 19 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 20 | Other pairs are annotated as Leontis_Westhof Classification. 21 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 22 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 23 | Column 8 is glycosidic bond orientation (either cis or trans). 24 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 25 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 26 | Column 9 corresponds to Saenger Classification. 27 | 28 | Other columns: 29 | Syn sugar-base conformations are annotated as (syn). 30 | Stacked base pairs are annotated as (stack). 31 | Non-identified edges are annotated as (.) or (?) 32 | Tertiary interactions are marked by (!) in the line. 33 | Reference: 34 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 35 | ----------------------------------------------------------- 36 | BEGIN_base-pair 37 | 3_25, A: 2649 C-G 2671 A: +/+ cis XIX 38 | 5_23, A: 2651 C-G 2669 A: +/+ cis XIX 39 | 6_22, A: 2652 C-G 2668 A: +/+ cis XIX 40 | 12_17, A: 2658 C-G 2663 A: +/+ cis XIX 41 | 4_24, A: 2650 U-A 2670 A: -/- cis XX 42 | 2_26, A: 2648 G-U 2672 A: W/W cis XXVIII 43 | 11_18, A: 2657 A-G 2664 A: H/S tran XI 44 | 13_16, A: 2659 G-A 2662 A: S/H tran XI 45 | END_base-pair 46 | 47 | Summary of triplets and higher multiplets 48 | BEGIN_multiplets 49 | 9_10_19_| [1 3] A: 2655 G + A: 2656 u + A: 2665 A 50 | END_multiplets 51 | 52 | The total base pairs = 10 (from 27 bases) 53 | ------------------------------------------------ 54 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 55 | 5 1 0 0 0 0 0 56 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 57 | 0 1 0 0 1 2 58 | ------------------------------------------------ 59 | -------------------------------------------------------------------------------- /test/pdb/test1/test1.pdb_new_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | A C 948 -9999.99 -9999.99 -9999.99 81.73 -147.90 -83.66 -163.34 18 | A A 949 -60.55 175.21 46.46 81.97 -141.47 -69.68 -167.81 19 | A U 950 -65.24 166.85 57.63 80.23 -151.40 -82.11 -161.08 20 | A G 951 -73.49 -178.05 51.19 82.35 -161.91 -63.94 -157.00 21 | A U 952 -62.27 175.40 56.73 81.56 -157.90 -76.03 -163.62 22 | A G 953 -68.96 -174.72 57.32 84.29 -145.37 -61.05 -165.76 23 | A G 954 -59.08 166.34 54.90 84.16 -145.60 -72.83 -167.76 24 | A U 955 -61.59 162.78 56.63 85.77 -152.27 -67.03 -174.98 25 | A U 956 -68.14 173.00 58.11 81.96 -149.23 -70.61 -155.69 26 | A U 957 -64.28 167.95 58.39 82.61 -139.21 -59.82 -151.20 27 | A A 958 179.02 148.75 42.91 87.62 -125.27 -85.62 -172.45 28 | A A 959 -60.92 157.86 53.16 84.96 -101.62 -82.77 -127.70 29 | A U 960 41.86 -99.20 -82.76 132.52 57.03 -129.58 84.51 30 | A U 961 73.78 178.46 64.00 84.24 -156.25 -52.40 -169.17 31 | A C 962 -64.01 -178.04 51.90 75.08 -151.04 -76.39 -169.56 32 | A G 963 -63.12 165.86 62.80 84.30 -154.21 -59.64 -176.97 33 | A A 964 -66.96 -171.72 52.78 84.52 -124.91 -75.64 -169.90 34 | A A 965 -80.78 -141.66 45.58 125.75 81.57 -67.83 -121.36 35 | A G 966 142.46 121.68 45.83 79.27 -144.27 -78.08 -173.96 36 | A C 967 -60.79 161.19 58.85 84.68 -145.62 34.01 -164.51 37 | A A 968 154.78 160.70 60.53 145.66 -92.90 -46.41 -138.79 38 | A A 969 -77.65 -99.56 -64.52 83.51 -149.74 -59.89 -160.65 39 | A C 970 -63.38 -178.04 57.15 81.97 -130.50 -160.45 -152.23 40 | A G 971 -53.47 -126.56 39.50 136.16 -116.83 87.07 -76.62 41 | A C 972 -69.35 -136.19 -76.46 80.63 -142.70 -84.15 -166.80 42 | A G 973 -68.12 -167.13 49.71 86.12 179.85 102.04 -148.93 43 | A A 974 -43.22 -122.91 177.12 146.07 -112.82 133.88 -160.95 44 | A A 975 -138.22 130.50 -65.12 104.14 50.74 -82.22 -118.79 45 | A G 976 -37.19 -158.76 55.75 128.98 -125.64 170.17 -94.14 46 | A A 977 67.16 108.17 170.88 88.51 -168.30 -75.27 105.77 47 | A A 978 85.48 145.42 56.85 87.12 -124.23 -64.74 -142.14 48 | A C 979 -52.07 -168.50 37.83 77.96 -125.36 -43.66 -168.52 49 | A C 980 -69.19 169.16 66.55 80.56 -124.02 -57.05 -162.72 50 | A U 981 -67.66 160.56 57.93 85.90 -9999.99 -9999.99 -163.12 51 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/4NMG/assembly-1/4NMG-ASSEMBLY1.CIF.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/x-ray/4NMG/assembly-1/4nmg-assembly1.cif 2 | uncommon residue 6FU 2656? on chain A [#10] assigned to: u 3 | ----------------------------------------------------------- 4 | CRITERIA USED TO GENERATE BASE-PAIR: 5 | 3.40 --> upper H-bond length limits (ON..ON). 6 | 26.00 --> max. distance between paired base origins. 7 | 2.50 --> max. vertical distance between paired base origins. 8 | 65.00 --> max. angle between paired bases [0-90]. 9 | 5.40 --> min. distance between RN9/YN1 atoms. 10 | 8.00 --> max. distance criterion for helix break[0-12] 11 | ----------------------------------------------------------- 12 | BASE-PAIR INSTRUCTIONS: 13 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 14 | Column 2 & 3 are chain ID & residue number in input PDB file. 15 | Column 4 is for base pair. The left & right are the bases as 16 | identified by column 2 & 3 and 5 & 6. 17 | Column 5 & 6 are residue number & chain ID in input PDB file. 18 | Column 7 is for base pair annotation. The standard Watson-Crick 19 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 20 | Other pairs are annotated as Leontis_Westhof Classification. 21 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 22 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 23 | Column 8 is glycosidic bond orientation (either cis or trans). 24 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 25 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 26 | Column 9 corresponds to Saenger Classification. 27 | 28 | Other columns: 29 | Syn sugar-base conformations are annotated as (syn). 30 | Stacked base pairs are annotated as (stack). 31 | Non-identified edges are annotated as (.) or (?) 32 | Tertiary interactions are marked by (!) in the line. 33 | Reference: 34 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 35 | ----------------------------------------------------------- 36 | BEGIN_base-pair 37 | 2_26, A: 2648 G-U 2672 A: W/W cis XXVIII 38 | 3_4, A: 2649 C-U 2650 A: stacked 39 | 3_25, A: 2649 C-G 2671 A: +/+ cis XIX 40 | 4_24, A: 2650 U-A 2670 A: -/- cis XX 41 | 5_23, A: 2651 C-G 2669 A: +/+ cis XIX 42 | 6_22, A: 2652 C-G 2668 A: +/+ cis XIX 43 | 9_10, A: 2655 G-u 2656 A: S/H cis syn n/a 44 | 10_19, A: 2656 u-A 2665 A: W/H tran XXIV 45 | 11_18, A: 2657 A-G 2664 A: H/S tran XI 46 | 12_17, A: 2658 C-G 2663 A: +/+ cis XIX 47 | 13_16, A: 2659 G-A 2662 A: S/H tran XI 48 | 16_17, A: 2662 A-G 2663 A: stacked 49 | 26_27, A: 2672 U-G 2673 A: stacked 50 | 7_21, A: 2653 U-C 2667 A: W/W cis !1H(b_b) 51 | 1_2, A: 2647 U-G 2648 A: S/. cis !(s_s) 52 | 8_20, A: 2654 A-C 2666 A: W/H tran !(s_s) 53 | 9_19, A: 2655 G-A 2665 A: W/? tran syn !(s_s) 54 | END_base-pair 55 | 56 | Summary of triplets and higher multiplets 57 | BEGIN_multiplets 58 | 9_10_19_| [1 3] A: 2655 G + A: 2656 u + A: 2665 A 59 | END_multiplets 60 | 61 | The total base pairs = 10 (from 27 bases) 62 | ------------------------------------------------ 63 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 64 | 5 1 0 0 0 0 0 65 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 66 | 0 1 0 0 1 2 67 | ------------------------------------------------ 68 | -------------------------------------------------------------------------------- /test/mmcif/nmr_structure/8if5/8if5.cif.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/nmr_structure/8if5/8if5.cif 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_26, A: 1 C-G 26 A: +/+ cis XIX 37 | 2_25, A: 2 A-T 25 A: -/- cis XX 38 | 3_24, A: 3 C-G 24 A: +/+ cis XIX 39 | 4_23, A: 4 G-C 23 A: +/+ cis XIX 40 | 5_22, A: 5 T-T 22 A: W/W cis XVI 41 | 7_9, A: 7 T-G 9 A: S/S cis n/a 42 | 7_15, A: 7 T-C 15 A: W/W tran XVII 43 | 9_15, A: 9 G-C 15 A: +/+ cis XIX 44 | 10_11, A: 10 T-C 11 A: S/H cis n/a 45 | 11_19, A: 11 C-G 19 A: +/+ cis XIX 46 | 12_13, A: 12 T-C 13 A: S/H cis n/a 47 | 13_17, A: 13 C-G 17 A: +/+ cis XIX 48 | 18_19, A: 18 T-G 19 A: stacked 49 | 19_20, A: 19 G-T 20 A: stacked 50 | 6_17, A: 6 G-G 17 A: W/H tran !1H(b_b) 51 | 11_21, A: 11 C-C 21 A: W/S cis !1H(b_b) 52 | 7_8, A: 7 T-T 8 A: S/. cis !(s_s) 53 | 8_9, A: 8 T-G 9 A: S/S cis !(s_s) 54 | END_base-pair 55 | 56 | Summary of triplets and higher multiplets 57 | BEGIN_multiplets 58 | 7_9_15_| [1 3] A: 7 T + A: 9 G + A: 15 C 59 | 10_11_19_| [2 3] A: 10 T + A: 11 C + A: 19 G 60 | 12_13_17_| [3 3] A: 12 T + A: 13 C + A: 17 G 61 | END_multiplets 62 | 63 | The total base pairs = 12 (from 26 bases) 64 | ------------------------------------------------ 65 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 66 | 7 1 1 0 0 1 0 67 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 68 | 0 0 0 0 2 0 69 | ------------------------------------------------ 70 | -------------------------------------------------------------------------------- /test/mmcif/insertion_code/1EFW/1EFW.CIF_patt.out: -------------------------------------------------------------------------------- 1 | BEGIN_base-pair 2 | 80_140, D: 7 G-C 66 D: +/+ cis XIX 3 | 81_87, D: 8 u-A 14 D: W/H tran XXIV 4 | 82_97, D: 9 A-A 23 D: H/H tran II 5 | 83_99, D: 10 G-U 25 D: W/W cis XXVIII 6 | 83_119, D: 10 G-G 45 D: H/S cis n/a 7 | 84_98, D: 11 U-A 24 D: -/- cis XX 8 | 84_98,- 9 | 80_140_81_87_82_97_83_99_83_119_84_98_0, click this line to see above pattern 10 | 0_0,--------- 11 | 7_67, C: 7 G-C 66 C: +/+ cis XIX 12 | 8_14, C: 8 u-A 14 C: W/H tran XXIV 13 | 9_24, C: 9 A-A 23 C: H/H tran II 14 | 10_26, C: 10 G-U 25 C: W/W cis XXVIII 15 | 10_46, C: 10 G-G 45 C: H/S cis n/a 16 | 11_25, C: 11 U-A 24 C: -/- cis XX 17 | 11_25,- 18 | 7_67_8_14_9_24_10_26_10_46_11_25_0, click this line to see above pattern 19 | 0_0,--------- 20 | 3_71, C: 3 A-U 70 C: -/- cis XX 21 | 3_72, C: 3 A-C 71 C: W/W cis n/a 22 | 4_70, C: 4 G-U 69 C: W/W cis XXVIII 23 | 5_69, C: 5 C-G 68 C: +/+ cis XIX 24 | 5_69,- 25 | 3_71_3_72_4_70_5_69_0, click this line to see above pattern 26 | 0_0,--------- 27 | 32_40, C: 31 C-G 39 C: +/+ cis XIX 28 | 33_39, C: 32 C-C 38 C: W/W cis n/a 29 | 50_66, C: 49 G-P 65 C: W/W cis n/a 30 | 51_65, C: 50 C-G 64 C: +/+ cis XIX 31 | 51_65,- 32 | 32_40_33_39_50_66_51_65_0, click this line to see above pattern 33 | 0_0,--------- 34 | 92_130, D: 19 G-C 56 D: +/+ cis syn XIX 35 | 96_120, D: 22 G-g 46 D: H/W tran syn VII 36 | 100_118, D: 26 A-G 44 D: W/W cis VIII 37 | 101_117, D: 27 C-G 43 D: +/+ cis XIX 38 | 101_117,- 39 | 92_130_96_120_100_118_101_117_0, click this line to see above pattern 40 | 0_0,--------- 41 | 86_96, D: 13 C-G 22 D: +/+ cis XIX 42 | 87_95, D: 14 A-A 21 D: W/S cis n/a 43 | 88_122, D: 15 G-C 48 D: W/W tran XXII 44 | 91_129, D: 18 G-P 55 D: W/S tran n/a 45 | 92_130, D: 19 G-C 56 D: +/+ cis syn XIX 46 | 92_130,- 47 | 86_96_87_95_88_122_91_129_92_130_0, click this line to see above pattern 48 | 0_0,--------- 49 | 54_62, C: 53 G-C 61 C: +/+ cis XIX 50 | 55_59, C: 54 u-A 58 C: W/H tran syn XXIV 51 | 74_146, D: 1 G-C 72 D: W/W cis n/a 52 | 75_145, D: 2 G-C 71 D: W/W cis n/a 53 | 76_143, D: 3 A-U 69 D: W/W cis n/a 54 | 76_144, D: 3 A-U 70 D: -/- cis XX 55 | 76_144,- 56 | 54_62_55_59_74_146_75_145_76_143_76_144_0, click this line to see above pattern 57 | 0_0,--------- 58 | 13_23, C: 13 C-G 22 C: +/+ cis XIX 59 | 13_24, C: 13 C-A 23 C: W/W cis n/a 60 | 14_22, C: 14 A-A 21 C: W/S cis n/a 61 | 15_49, C: 15 G-C 48 C: W/W tran XXII 62 | 18_56, C: 18 G-P 55 C: W/S tran n/a 63 | 19_57, C: 19 G-C 56 C: W/W cis n/a 64 | 23_47, C: 22 G-g 46 C: H/W tran syn VII 65 | 27_45, C: 26 A-G 44 C: W/W cis VIII 66 | 28_44, C: 27 C-G 43 C: +/+ cis XIX 67 | 28_44,- 68 | 13_23_13_24_14_22_15_49_18_56_19_57_23_47_27_45_28_44_0, click this line to see above pattern 69 | 0_0,--------- 70 | 105_113, D: 31 C-G 39 D: +/+ cis XIX 71 | 106_112, D: 32 C-C 38 D: W/W cis n/a 72 | 123_139, D: 49 G-P 65 D: W/W cis n/a 73 | 124_138, D: 50 C-G 64 D: +/+ cis XIX 74 | 124_138,- 75 | 105_113_106_112_123_139_124_138_0, click this line to see above pattern 76 | 0_0,--------- 77 | END_base-pair 78 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | CC = cc 2 | 3 | 4 | 5 | #---------------------------------------------------------------------------- 6 | # Project specific path defintions. 7 | #---------------------------------------------------------------------------- 8 | PROJDIR = . 9 | 10 | SRC = $(PROJDIR)/src 11 | INCL = $(PROJDIR)/include 12 | OBJ = $(PROJDIR)/obj 13 | BIN = $(PROJDIR)/bin 14 | TEST = $(PROJDIR)/test 15 | 16 | LDEFINES = -DNO_RANGE_CHECK 17 | LINCLUDES = -I$(INCL) 18 | 19 | #---------------------------------------------------------------------------- 20 | # Target files 21 | #---------------------------------------------------------------------------- 22 | RNAVIEW = $(BIN)/rnaview 23 | 24 | SRCFILES = $(SRC)/rnaview.c \ 25 | $(SRC)/fpair.c \ 26 | $(SRC)/fpair_sub.c \ 27 | $(SRC)/pair_type.c \ 28 | $(SRC)/nrutil.c \ 29 | $(SRC)/ps-xy.c \ 30 | $(SRC)/ps-xy-sub.c \ 31 | $(SRC)/vrml.c \ 32 | $(SRC)/rnaxml-new.c \ 33 | $(SRC)/analyze.c \ 34 | $(SRC)/pattern.c \ 35 | $(SRC)/xml2ps.c \ 36 | $(SRC)/multiple.c \ 37 | $(SRC)/statistics.c 38 | 39 | 40 | HFILES = $(INCL)/rna.h $(INCL)/nrutil.h $(INCL)/rna_header.h \ 41 | $(INCL)/vrml.h $(INCL)/xml2ps.h 42 | 43 | 44 | OBJ_FILE = $(OBJ)/rnaview.o \ 45 | $(OBJ)/fpair.o \ 46 | $(OBJ)/fpair_sub.o \ 47 | $(OBJ)/pair_type.o \ 48 | $(OBJ)/nrutil.o \ 49 | $(OBJ)/ps-xy.o \ 50 | $(OBJ)/ps-xy-sub.o \ 51 | $(OBJ)/vrml.o \ 52 | $(OBJ)/rnaxml-new.o \ 53 | $(OBJ)/analyze.o \ 54 | $(OBJ)/pattern.o \ 55 | $(OBJ)/xml2ps.o \ 56 | $(OBJ)/multiple.o \ 57 | $(OBJ)/statistics.o 58 | 59 | all: $(RNAVIEW) 60 | 61 | CFLAGS = $(LINCLUDES) 62 | 63 | $(RNAVIEW) : $(HFILES) $(OBJ_FILE) 64 | $(CC) -g -Wall $(CFLAGS) -o $@ $(OBJ_FILE) $(LDFLAGS) -lm $(MALLOCLIB) 65 | 66 | 67 | 68 | $(OBJ)/rnaview.o : $(SRC)/rnaview.c 69 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/rnaview.c -o $@ 70 | 71 | $(OBJ)/fpair.o : src/fpair.c 72 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/fpair.c -o $@ 73 | 74 | $(OBJ)/fpair_sub.o : $(SRC)/fpair_sub.c 75 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/fpair_sub.c -o $@ 76 | 77 | $(OBJ)/pair_type.o : $(SRC)/pair_type.c 78 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/pair_type.c -o $@ 79 | 80 | $(OBJ)/nrutil.o : $(SRC)/nrutil.c 81 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/nrutil.c -o $@ 82 | 83 | $(OBJ)/ps-xy.o : $(SRC)/ps-xy.c 84 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/ps-xy.c -o $@ 85 | 86 | $(OBJ)/ps-xy-sub.o : $(SRC)/ps-xy-sub.c 87 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/ps-xy-sub.c -o $@ 88 | 89 | $(OBJ)/vrml.o : $(SRC)/vrml.c 90 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/vrml.c -o $@ 91 | 92 | $(OBJ)/rnaxml-new.o : $(SRC)/rnaxml-new.c 93 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/rnaxml-new.c -o $@ 94 | 95 | $(OBJ)/analyze.o : $(SRC)/analyze.c 96 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/analyze.c -o $@ 97 | 98 | $(OBJ)/pattern.o : $(SRC)/pattern.c 99 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/pattern.c -o $@ 100 | 101 | $(OBJ)/xml2ps.o : $(SRC)/xml2ps.c 102 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/xml2ps.c -o $@ 103 | 104 | $(OBJ)/multiple.o : $(SRC)/multiple.c 105 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/multiple.c -o $@ 106 | 107 | $(OBJ)/statistics.o : $(SRC)/statistics.c 108 | $(CC) -g -Wall $(CFLAGS) -c $(SRC)/statistics.c -o $@ 109 | 110 | 111 | clean: 112 | @rm -f $(OBJ)/*.o 113 | @rm -f $(ALLTARGETS) 114 | 115 | export: 116 | mkdir -p $(EXPORT_DIR) 117 | @cd $(EXPORT_DIR); mkdir -p $(INCL) 118 | $(EXPORT) $(EXPORT_LIST) $(HFILES) $(EXPORT_DIR)/$(INCL) 119 | @cd $(EXPORT_DIR); mkdir -p $(SRC) 120 | $(EXPORT) $(EXPORT_LIST) $(SRCFILES) $(TARGETSRC) $(EXPORT_DIR)/$(SRC) 121 | @cd $(EXPORT_DIR); mkdir -p $(BIN) 122 | @cd $(EXPORT_DIR); mkdir -p $(LIB) 123 | @cd $(EXPORT_DIR); mkdir -p $(OBJ) 124 | @cd $(EXPORT_DIR); mkdir -p $(TEST) 125 | @cp $(TESTFILES) $(EXPORT_DIR)/$(TEST) 126 | @cp Makefile $(EXPORT_DIR) 127 | 128 | 129 | 130 | 131 | -------------------------------------------------------------------------------- /test/mmcif/insertion_code/4ARC/4ARC.CIF_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/insertion_code/4ARC/4ARC.cif 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 3_66, B: 7 A-U 66 B: -/- cis XX 37 | 24_33, B: 27 A-U 43 B: -/- cis XX 38 | 37_44, B: 47 C-G 47 B: +/+ cis XIX 39 | 50_64, B: 50 C-G 64 B: +/+ cis XIX 40 | 2_67, B: 6 G-C 67 B: +/+ cis XIX 41 | 6_22, B: 10 G-C 25 B: +/+ cis XIX 42 | 8_20, B: 12 G-C 23 B: +/+ cis XIX 43 | 15_56, B: 19 G-C 56 B: +/+ cis syn XIX 44 | 36_45, B: 46 G-C 47 B: +/+ cis XIX 45 | 38_43, B: 47 G-C 47 B: +/+ cis XIX 46 | 49_65, B: 49 G-C 65 B: +/+ cis XIX 47 | 51_63, B: 51 G-C 63 B: +/+ cis XIX 48 | 52_62, B: 52 G-C 62 B: +/+ cis XIX 49 | 53_61, B: 53 G-C 61 B: +/+ cis XIX 50 | 7_21, B: 11 U-A 24 B: -/- cis XX 51 | 28_29, B: 31 A-U 39 B: W/W cis n/a 52 | 1_68, B: 5 G-C 68 B: W/W cis n/a 53 | 25_32, B: 28 G-C 42 B: W/W cis n/a 54 | 26_32, B: 29 G-C 42 B: W/W cis n/a 55 | 35_46, B: 45 G-U 47 B: W/W cis XXVIII 56 | 11_48, B: 15 A-U 48 B: W/W tran XXI 57 | 5_8, B: 9 G-G 12 B: W/H cis syn VI 58 | 4_10, B: 8 U-A 14 B: W/H tran XXIV 59 | 54_58, B: 54 U-A 58 B: W/H tran syn XXIV 60 | 10_17, B: 14 A-A 20 B: W/S cis n/a 61 | 14_55, B: 18 G-U 55 B: W/S tran n/a 62 | 18_47, B: 21 G-G 47 B: H/S tran n/a 63 | 39_42, B: 47 U-G 47 B: S/W tran syn n/a 64 | 9_19, B: 13 G-A 22 B: S/H tran XI 65 | END_base-pair 66 | 67 | Summary of triplets and higher multiplets 68 | BEGIN_multiplets 69 | 4_10_17_| [1 3] B: 8 U + B: 14 A + B: 20 A 70 | 5_8_20_| [2 3] B: 9 G + B: 12 G + B: 23 C 71 | END_multiplets 72 | 73 | The total base pairs = 29 (from 71 bases) 74 | ------------------------------------------------ 75 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 76 | 15 5 1 0 0 0 0 77 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 78 | 1 2 1 2 0 2 79 | ------------------------------------------------ 80 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # RNAView 2 | 3 | RNAView identifies base pairs that are formed in nucleic acid structures and classifies them according to the system of Leontis and Westhof. The software presented here was originally described in Yang, H., Jossinet, F., Leontis, N., Chen, L., Westbrook, J., Berman, H.M., Westhof, E. (2003). Tools for the automatic identification and classification of RNA base pairs. Nucleic Acids Research 31.13: 3450-3460, https://doi.org/10.1093/nar/gkg529 4 | 5 | RNAView release version 2.0.0 (Jan 2024) supports mmCIF file input, yielding results identical to PDB file input. 6 | 7 | ## Introduction 8 | 9 | RNAVIEW program quickly displays the secondary structure of RNA/DNA with tertiary interactions. It fully implements Leontis and Westhof's convention for the edge-to-edge hydrogen bonding interactions. 10 | 11 | Leontis NB and Westhof E. (2001) Geometric nomenclature and classification of RNA base pairs. RNA 7:499-512. https://doi.org/10.1017/s1355838201002515 12 | 13 | The software has been tested in Linux and UNIX (SGI), MAC, SUN systems 14 | 15 | ## Installation 16 | 17 | You can install the program in any directory. 18 | 19 | 1. unpack the program package in the desired directory (e.g. /?/?/?/ ). 20 | 21 | ``` 22 | zcat RNAVIEW.tar.gz | tar xvf - 23 | ``` 24 | 25 | 2. install the program 26 | 27 | ``` 28 | cd /?/?/?/RNAVIEW/ 29 | make 30 | ``` 31 | 32 | The executable file rnaview will be in the directory /?/?/?/RNAVIEW/bin/. 33 | 34 | 3. Define RNAVIEW environment variable to point to the installation directory (e.g. /?/?/?/RNAVIEW) 35 | Add the following command to your shell script 36 | 37 | For C shell users: 38 | 39 | ``` 40 | setenv RNAVIEW /?/?/?/RNAVIEW 41 | setenv PATH "/?/?/?/RNAVIEW/bin:"$PATH 42 | ``` 43 | 44 | For Bourne shell users: 45 | 46 | ``` 47 | RNAVIEW=/?/?/?/RNA/RNAVIEW; export RNAVIEW 48 | PATH="/?/?/?/RNAVIEW/bin:"$PATH; export PATH 49 | ``` 50 | 51 | 4. To test the program, go to /?/?/?/RNAVIEW/test 52 | 53 | ``` 54 | rnaview -p tr0001.pdb 55 | ``` 56 | 57 | You should get a postscript file \*.ps and some other output files. 58 | 59 | ## Usage 60 | 61 | type rnaview or rnaview -h to get an online help. 62 | 63 | Usage: executable [option] input_file 64 | 65 | ## Options 66 | 67 | 1. If no [option] is given, it will only generate the fully annotated base pair lists. Example: rnaview pdbfile_name 68 | 2. [option] -p to generate fully annotated 2D structure in postscript format. Detailed information is given in XML format(RNAML) Example: rnaview -p pdbfile_name 69 | 3. [option] -v to generate a 3D structure in VRML format. It can be displayed on internet (with VRML plug in). Example: rnaview -v pdbfile_name 70 | 4. [option] -c to select chains for calculation. -c should be followed by chain IDs. If select several chains, they should be put together, like ABC for chain A, B and C. This option is useful, when drawing a single copy of 2D structure from a dimer or trimer PDB file. Example: rnaview -pc ABC pdbfile_name 71 | 5. [option] -a to process many pdbfiles. The pdbfile names must be put in one file (like file.list) and seperated by a space. You may give the resolution after file.list. If you do not give (or give 0), it means resolution is ignored Example: rnaview -a file.list 3.0 means that only the pdbfiles with resolution < 3.0 are selected for calculation. 72 | 6. [option] -x to input XML (RNAML) file. Normally this option is combined with -p to generate a 2D structure. Example: rnaview -px RNAML_file_name 73 | 7. [option] --label processes mmCIF files using mmCIF atom_site.label_xxx data (database-provided chain ids, residue numbering, altcodes). If not provided, the program will use atom_site.auth_xxx data (author-provided chain ids, residue numbering, altcodes). Example: rnaview -p --cif --label ciffile_name. This will use label for parsing. Example: rnaview -p --cif ciffile_name. This will auth for parsing because it is default. 74 | 75 | ## NMR structures 76 | 77 | The program will automatically pick the best NMR model according to the REMARK record of the pdb file. If there is no best model in the PDB file, it will pick the first model from the ensemble. 78 | 79 | ## Update 80 | Nov 21, 2023: RNAVIEW permits MMCIF inputs. 81 | -------------------------------------------------------------------------------- /BASEPARS/vrml_image.par: -------------------------------------------------------------------------------- 1 | PROTO Label [ 2 | field SFVec3f p 0 0 0 3 | field SFFloat sz 1.5 4 | field MFString c [] 5 | field SFVec3f o 0 0 0 6 | field SFColor dc 0 0 0 7 | field SFColor ec 0 0 0 8 | field SFColor sc 0.0 0.0 0.0 9 | field SFFloat sh 1.0 10 | field SFFloat tr 0 11 | ] 12 | { 13 | Transform { 14 | translation IS p 15 | children [ 16 | Billboard { 17 | axisOfRotation 0 0 0 18 | children [ 19 | Transform { 20 | translation IS o 21 | children [ 22 | Shape { 23 | appearance Appearance { 24 | material Material { 25 | diffuseColor IS dc 26 | emissiveColor IS ec 27 | specularColor IS sc 28 | shininess IS sh 29 | transparency IS tr 30 | } 31 | } 32 | geometry Text { 33 | string IS c 34 | fontStyle FontStyle { 35 | style "BOLD" 36 | justify "MIDDLE" 37 | size IS sz 38 | } 39 | } 40 | } 41 | ] 42 | } 43 | ] 44 | } 45 | ] 46 | } 47 | } 48 | PROTO Sphere [ 49 | exposedField SFVec3f p 0 0 0 50 | field SFFloat rad 1.0 51 | field SFColor dc 1 0 0 52 | field SFColor ec 0 0 0 53 | field SFColor sc 0 0 0 54 | field SFFloat sh 1 55 | field SFFloat tr 0 56 | ] 57 | { 58 | Transform { 59 | translation IS p 60 | children [ 61 | Shape { 62 | appearance Appearance { 63 | material Material { 64 | diffuseColor IS dc 65 | emissiveColor IS ec 66 | specularColor IS sc 67 | shininess IS sh 68 | transparency IS tr 69 | } 70 | } 71 | geometry Sphere { 72 | radius IS rad 73 | } 74 | } 75 | ] 76 | } 77 | } 78 | PROTO Box [ 79 | exposedField SFVec3f p 0 0 0 80 | exposedField SFRotation r 0 0 1 0 81 | exposedField SFVec3f s 1 1 1 82 | field SFColor dc 1 0 0 83 | field SFColor ec 0 0 0 84 | field SFColor sc 0 0 0 85 | field SFFloat sh 1 86 | field SFFloat tr 0 87 | ] 88 | { 89 | Transform { 90 | translation IS p 91 | rotation IS r 92 | scale IS s 93 | children [ 94 | Shape { 95 | appearance Appearance { 96 | material Material { 97 | diffuseColor IS dc 98 | emissiveColor IS ec 99 | specularColor IS sc 100 | shininess IS sh 101 | transparency IS tr 102 | } 103 | } 104 | geometry Box { } 105 | } 106 | ] 107 | } 108 | } 109 | PROTO Cyl [ 110 | exposedField SFVec3f p 0 0 0 111 | exposedField SFRotation r 0 0 1 0 112 | exposedField SFVec3f s 1 1 1 113 | field SFColor dc 1 0 0 114 | field SFColor ec 0 0 0 115 | field SFColor sc 0 0 0 116 | field SFFloat sh 1 117 | field SFFloat tr 0 118 | ] 119 | { 120 | Transform { 121 | translation IS p 122 | rotation IS r 123 | scale IS s 124 | children [ 125 | Shape { 126 | appearance Appearance { 127 | material Material { 128 | diffuseColor IS dc 129 | emissiveColor IS ec 130 | specularColor IS sc 131 | shininess IS sh 132 | transparency IS tr 133 | } 134 | } 135 | geometry Cylinder { } 136 | } 137 | ] 138 | } 139 | } 140 | PROTO Cone [ 141 | exposedField SFVec3f p 0 0 0 142 | exposedField SFRotation r 0 0 1 0 143 | exposedField SFVec3f s 1 1 1 144 | field SFColor dc 1 0 0 145 | field SFColor ec 0 0 0 146 | field SFColor sc 0 0 0 147 | field SFFloat sh 1 148 | field SFFloat tr 0 149 | ] 150 | { 151 | Transform { 152 | translation IS p 153 | rotation IS r 154 | scale IS s 155 | children [ 156 | Shape { 157 | appearance Appearance { 158 | material Material { 159 | diffuseColor IS dc 160 | emissiveColor IS ec 161 | specularColor IS sc 162 | shininess IS sh 163 | transparency IS tr 164 | } 165 | } 166 | geometry Cone { 167 | } 168 | } 169 | ] 170 | } 171 | } 172 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | RNAVIEW program is developed to quickly display the secondary structure 2 | of RNA/DNA with tertiary interactions. It is fully implemented with 3 | Leontis and Westhof's ( RNA (2001) 7, 499-512), convention for the 4 | edge-to-edge hydrogen bonding interactions. 5 | 6 | 7 | It has been tested in Linux and UNIX (SGI), MAC, SUN systems 8 | ---------------------------------------------------------------------- 9 | You can install the program in any directory (like /?/?/?/ ) 10 | do the follows: 11 | 12 | 1, unpack the program package in the directory (e.g. /?/?/?/ ). 13 | 14 | type 15 | zcat RNAVIEW.tar.gz | tar xvf - 16 | 17 | 2, install the program 18 | go to directory /?/?/?/RNAVIEW/ 19 | type make 20 | You will get the executable file rnaview in the directory 21 | /?/?/?/RNAVIEW/bin/ 22 | 23 | 3, You must define RNAVIEW environment variable to point to the installation 24 | directory (e.g. /?/?/?/RNAVIEW) 25 | Add the following sentence in your shell script 26 | 27 | For C shell users: 28 | setenv RNAVIEW /?/?/?/RNAVIEW 29 | setenv PATH "/?/?/?/RNAVIEW/bin:"$PATH 30 | 31 | For Bourne shell users: 32 | RNAVIEW=/?/?/?/RNA/RNAVIEW; export RNAVIEW 33 | PATH="/?/?/?/RNAVIEW/bin:"$PATH; export PATH 34 | 35 | 4, To test the program, go to /?/?/?/RNAVIEW/test 36 | type rnaview -p tr0001.pdb 37 | You get the postscrit file *.ps and some other outputs. 38 | 39 | ---------------------------------------------------------------------- 40 | 41 | How to use the program: 42 | 43 | type rnaview or rnaview -h to get an online help. 44 | 45 | Usage: executable [option] input_file 46 | -------------------------------------------------------------- 47 | Options of the RNAview program 48 | +-------------------------------------------------------------+ 49 | | (1) If no [option] is given, it only generate the fully | 50 | | annotated base pair lists. | 51 | | Example: rnaview pdbfile_name | 52 | | | 53 | | (2) [option] -p to generate fully annotated 2D structure in | 54 | | postscript format. Detailed information is given in XML | 55 | | format(RNAML) | 56 | | Example: rnaview -p pdbfile_name | 57 | | | 58 | | (3) [option] -v to generate a 3D structure in VRML format. | 59 | | It can be displayed on internet (with VRML plug in). | 60 | | Example: rnaview -v pdbfile_name | 61 | | | 62 | | (4) [option] -c to select chains for calculation. -c should | 63 | | be followed by chain IDs. If select several chains, they| 64 | | should be put together, like ABC for chain A, B and C. | 65 | | This option is useful, when drawing a single copy of 2D | 66 | | structure from a dimmer or trimmer PDB file. | 67 | | Example: rnaview -pc ABC pdbfile_name | 68 | | | 69 | | (5) [option] -a to process many pdbfiles. The pdbfile names | 70 | | must be put in one file (like file.list) and seperated | 71 | | by a space. You may give the resolution after file.list | 72 | | If you do not give (or give 0), it means resolution is | 73 | | ignored | 74 | | Example: rnaview -a file.list 3.0 | 75 | | It means that only the pdbfiles with resolution < 3.0 | 76 | | are selected for calculation. | 77 | | | 78 | | (6) [option] -x to input XML (RNAML) file. Normally this | 79 | | option is combined with -p to generate a 2D structure. | 80 | | Example: rnaview -px RNAML_file_name | 81 | | | 82 | +-------------------------------------------------------------+ 83 | 84 | -------------------------------------------------------------- 85 | FOR NMR FILES: 86 | 87 | If you have a NMR file which may be an ensemble of monomers, you 88 | do not worry about the ensemble. You just give the file name. The 89 | program will automatically pick the best model according to the 90 | REMARK of the pdb file. If there is no best model in the PDB file, 91 | it will pick the first monomer from the ensemble. 92 | 93 | --------------------------------------------------------------- 94 | Finally do not change anything in the RNAVIEW/ 95 | -------------------------------------------------------------------------------- /doc/README: -------------------------------------------------------------------------------- 1 | RNAVIEW program is developed to quickly display the secondary structure 2 | of RNA/DNA with tertiary interactions. It is fully implemented with 3 | Leontis and Westhof's ( RNA (2001) 7, 499-512), convention for the 4 | edge-to-edge hydrogen bonding interactions. 5 | 6 | 7 | It has been tested in Linux and UNIX (SGI), MAC, SUN systems 8 | ---------------------------------------------------------------------- 9 | You can install the program in any directory (like /?/?/?/ ) 10 | do the follows: 11 | 12 | 1, unpack the program package in the directory (e.g. /?/?/?/ ). 13 | 14 | type 15 | zcat RNAVIEW.tar.gz | tar xvf - 16 | 17 | 2, install the program 18 | go to directory /?/?/?/RNAVIEW/ 19 | type make 20 | You will get the executable file rnaview in the directory 21 | /?/?/?/RNAVIEW/bin/ 22 | 23 | 3, You must define RNAVIEW environment variable to point to the installation 24 | directory (e.g. /?/?/?/RNAVIEW) 25 | Add the following sentence in your shell script 26 | 27 | For C shell users: 28 | setenv RNAVIEW /?/?/?/RNAVIEW 29 | setenv PATH "/?/?/?/RNAVIEW/bin:"$PATH 30 | 31 | For Bourne shell users: 32 | RNAVIEW=/?/?/?/RNA/RNAVIEW; export RNAVIEW 33 | PATH="/?/?/?/RNAVIEW/bin:"$PATH; export PATH 34 | 35 | 4, To test the program, go to /?/?/?/RNAVIEW/test 36 | type rnaview -p tr0001.pdb 37 | You get the postscrit file *.ps and some other outputs. 38 | 39 | ---------------------------------------------------------------------- 40 | 41 | How to use the program: 42 | 43 | type rnaview or rnaview -h to get an online help. 44 | 45 | Usage: executable [option] input_file 46 | -------------------------------------------------------------- 47 | Options of the RNAview program 48 | +-------------------------------------------------------------+ 49 | | (1) If no [option] is given, it only generate the fully | 50 | | annotated base pair lists. | 51 | | Example: rnaview pdbfile_name | 52 | | | 53 | | (2) [option] -p to generate fully annotated 2D structure in | 54 | | postscript format. Detailed information is given in XML | 55 | | format(RNAML) | 56 | | Example: rnaview -p pdbfile_name | 57 | | | 58 | | (3) [option] -v to generate a 3D structure in VRML format. | 59 | | It can be displayed on internet (with VRML plug in). | 60 | | Example: rnaview -v pdbfile_name | 61 | | | 62 | | (4) [option] -c to select chains for calculation. -c should | 63 | | be followed by chain IDs. If select several chains, they| 64 | | should be put together, like ABC for chain A, B and C. | 65 | | This option is useful, when drawing a single copy of 2D | 66 | | structure from a dimmer or trimmer PDB file. | 67 | | Example: rnaview -pc ABC pdbfile_name | 68 | | | 69 | | (5) [option] -a to process many pdbfiles. The pdbfile names | 70 | | must be put in one file (like file.list) and seperated | 71 | | by a space. You may give the resolution after file.list | 72 | | If you do not give (or give 0), it means resolution is | 73 | | ignored | 74 | | Example: rnaview -a file.list 3.0 | 75 | | It means that only the pdbfiles with resolution < 3.0 | 76 | | are selected for calculation. | 77 | | | 78 | | (6) [option] -x to input XML (RNAML) file. Normally this | 79 | | option is combined with -p to generate a 2D structure. | 80 | | Example: rnaview -px RNAML_file_name | 81 | | | 82 | +-------------------------------------------------------------+ 83 | 84 | -------------------------------------------------------------- 85 | FOR NMR FILES: 86 | 87 | If you have a NMR file which may be an ensemble of monomers, you 88 | do not worry about the ensemble. You just give the file name. The 89 | program will automatically pick the best model according to the 90 | REMARK of the pdb file. If there is no best model in the PDB file, 91 | it will pick the first monomer from the ensemble. 92 | 93 | --------------------------------------------------------------- 94 | Finally do not change anything in the RNAVIEW/ 95 | -------------------------------------------------------------------------------- /test/pdb/tr0001/tr0001.pdb_sort.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/pdb/tr0001/tr0001.pdb_new 2 | uncommon residue 2MG 10 on chain A [#10] assigned to: g 3 | uncommon residue H2U 16 on chain A [#16] assigned to: u 4 | uncommon residue H2U 17 on chain A [#17] assigned to: u 5 | uncommon residue M2G 26 on chain A [#26] assigned to: g 6 | uncommon residue OMC 32 on chain A [#32] assigned to: c 7 | uncommon residue OMG 34 on chain A [#34] assigned to: g 8 | uncommon residue YG 37 on chain A [#37] assigned to: g 9 | uncommon residue PSU 39 on chain A [#39] assigned to: P 10 | uncommon residue 5MC 40 on chain A [#40] assigned to: c 11 | uncommon residue 7MG 46 on chain A [#46] assigned to: g 12 | uncommon residue 5MC 49 on chain A [#49] assigned to: c 13 | uncommon residue 5MU 54 on chain A [#54] assigned to: u 14 | uncommon residue PSU 55 on chain A [#55] assigned to: P 15 | uncommon residue 1MA 58 on chain A [#58] assigned to: a 16 | ----------------------------------------------------------- 17 | CRITERIA USED TO GENERATE BASE-PAIR: 18 | 3.40 --> upper H-bond length limits (ON..ON). 19 | 26.00 --> max. distance between paired base origins. 20 | 2.50 --> max. vertical distance between paired base origins. 21 | 65.00 --> max. angle between paired bases [0-90]. 22 | 5.40 --> min. distance between RN9/YN1 atoms. 23 | 8.00 --> max. distance criterion for helix break[0-12] 24 | ----------------------------------------------------------- 25 | BASE-PAIR INSTRUCTIONS: 26 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 27 | Column 2 & 3 are chain ID & residue number in input PDB file. 28 | Column 4 is for base pair. The left & right are the bases as 29 | identified by column 2 & 3 and 5 & 6. 30 | Column 5 & 6 are residue number & chain ID in input PDB file. 31 | Column 7 is for base pair annotation. The standard Watson-Crick 32 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 33 | Other pairs are annotated as Leontis_Westhof Classification. 34 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 35 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 36 | Column 8 is glycosidic bond orientation (either cis or trans). 37 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 38 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 39 | Column 9 corresponds to Saenger Classification. 40 | 41 | Other columns: 42 | Syn sugar-base conformations are annotated as (syn). 43 | Stacked base pairs are annotated as (stack). 44 | Non-identified edges are annotated as (.) or (?) 45 | Tertiary interactions are marked by (!) in the line. 46 | Reference: 47 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 48 | ----------------------------------------------------------- 49 | BEGIN_base-pair 50 | 5_68, A: 5 A-U 68 A: -/- cis XX 51 | 29_41, A: 29 A-U 41 A: -/- cis XX 52 | 2_71, A: 2 C-G 71 A: +/+ cis XIX 53 | 11_24, A: 11 C-G 24 A: +/+ cis XIX 54 | 13_22, A: 13 C-G 22 A: +/+ cis XIX 55 | 27_43, A: 27 C-G 43 A: +/+ cis XIX 56 | 28_42, A: 28 C-G 42 A: +/+ cis XIX 57 | 1_72, A: 1 G-C 72 A: +/+ cis XIX 58 | 3_70, A: 3 G-C 70 A: +/+ cis XIX 59 | 19_56, A: 19 G-C 56 A: +/+ cis syn XIX 60 | 51_63, A: 51 G-C 63 A: +/+ cis XIX 61 | 53_61, A: 53 G-C 61 A: +/+ cis XIX 62 | 6_67, A: 6 U-A 67 A: -/- cis XX 63 | 7_66, A: 7 U-A 66 A: -/- cis XX 64 | 12_23, A: 12 U-A 23 A: -/- cis XX 65 | 50_64, A: 50 U-A 64 A: -/- cis XX 66 | 52_62, A: 52 U-A 62 A: -/- cis XX 67 | 4_69, A: 4 G-U 69 A: W/W cis XXVIII 68 | 15_48, A: 15 G-C 48 A: W/W tran XXII 69 | 8_14, A: 8 U-A 14 A: W/H tran XXIV 70 | 9_23, A: 9 A-A 23 A: H/H tran syn II 71 | END_base-pair 72 | 73 | Summary of triplets and higher multiplets 74 | BEGIN_multiplets 75 | 9_12_23_| [1 3] A: 9 A + A: 12 U + A: 23 A 76 | 13_22_46_| [2 3] A: 13 C + A: 22 G + A: 46 g 77 | END_multiplets 78 | 79 | The total base pairs = 30 (from 76 bases) 80 | ------------------------------------------------ 81 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 82 | 20 3 1 0 1 0 0 83 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 84 | 0 3 0 2 0 0 85 | ------------------------------------------------ 86 | -------------------------------------------------------------------------------- /include/xml2ps.h: -------------------------------------------------------------------------------- 1 | /* #define PSPIONT 12 the letter size for postscript file */ 2 | 3 | void read_sequence(char *inpfile, char *resname, long *author_seq, long *nres); 4 | 5 | void extract_sequence(FILE *inp, char *resname, long *nres); 6 | 7 | void read_xy_coord(char *inpfile, double **xy, long *resid_idx, long *num_xy); 8 | 9 | void read_pair_type(char *inpfile, char **pair_type, long **npair_idx, long *npair, 10 | 11 | long *nhelix, long **helix_idx, long *helix_length, 12 | 13 | long *nsing, long *sing_st, long *sing_end); 14 | 15 | void get_xyz_coord(FILE *inp, double *x, double *y, double *z); 16 | 17 | void read_O3prime_P_xyz(char *inpfile, double **o3_prime_xyz, double **p_xyz, long *npo3); 18 | 19 | void get_BDIR(char *BDIR, char *parfile); 20 | 21 | void get_chain(long nres, double **a, double **b, long *nchain, long **chain_idx); 22 | 23 | void link_chain(long nchain, long **chain_idx, double **xy, long *broken); 24 | 25 | void label_ps_resname(long num_res, char *resname, double **xy, long *sugar_syn); 26 | 27 | void label_5p_3p(FILE *psfile, long i, long **chain_idx, double **xy); 28 | 29 | void write_5p_3p(long k1, long k2, double a, double **xy, char *labelP); 30 | 31 | void label_seq_number(long nres, long nhelix, long **helix_idx, 32 | 33 | long *helix_length, long nsing, long *sing_st, 34 | 35 | long *sing_end, double **xy, long *author_seq); 36 | 37 | void label_seq(long k1, long k2, double a, double **xy, long key, long *author_seq); 38 | 39 | void draw_LW_diagram(long npair, char **pair_type, char *resname, 40 | 41 | long **npair_idx, double **xy); 42 | 43 | void extract_author_seq(FILE *inp, long *author_seq, long *nseq); 44 | 45 | double h_width(long nhelix, long **helix_idx, long *helix_length, double **xy); 46 | 47 | double slope(long k1, long k2, double **xy); 48 | 49 | void get_value(FILE *inp, char *value); 50 | 51 | double dist(double *a, double *b, long n); 52 | 53 | void usage(void); 54 | 55 | void element_in_bracket(FILE *inp, char *item, long *size, char *lett, long *key); 56 | 57 | void get_num_residue(long size_item, char *lett, long *nres); 58 | 59 | void get_base_pair(long *num_pair, long **base_pair, char **edge_type, 60 | 61 | long **pair_idx, long *num_helix, long **helix_st_end, 62 | 63 | long *helix_len); 64 | 65 | void get_ss_xy(double **xy, long *num_xy); 66 | 67 | void make_a_line(char *str); 68 | 69 | void search_item(long *num_in, char lett[], char *item1, char *item2); 70 | 71 | void get_model_id(char *lett, char *identifer, char *item, long *model_id); 72 | 73 | long num_of_pair(char *inpfile); 74 | 75 | void get_residue_num(char *str, long *nres1, long *nres2, long *seq); 76 | 77 | void read_bs_pair(char *inpfile, long *npair, char *edge_type, char *cis_tran, 78 | 79 | char *resname, long *chain_id, long *seq, long **num_idx); 80 | 81 | void LW_shapes(char *bseq, long k1, long k2, char *pair_type, double *x, double *y, double at, double ratio); 82 | 83 | void nrerror(char error_text[]); 84 | 85 | /*******************/ 86 | 87 | void generate_ps_file(long num_res, char *resname, double **xy); 88 | 89 | void get_helix(long **helix, long *helix_len, long *num_helix); 90 | 91 | void ps_head(long *bbox); 92 | 93 | double xml_dmax(double a, double b); 94 | 95 | double xml_dmin(double a, double b); 96 | 97 | void xml_max_dmatrix(double **d, long nr, long nc, double *maxdm); 98 | 99 | void xml_min_dmatrix(double **d, long nr, long nc, double *mindm); 100 | 101 | void xml_move_position(double **d, long nr, long nc, double *mpos); 102 | 103 | long xml_round(double d); 104 | 105 | void xml_xy4ps(long num, double **oxy, double ps_size, long n); 106 | 107 | void get_position(FILE *inp, long *position); 108 | 109 | void get_xy_position(FILE *inp, double *x, double *y); 110 | 111 | /*******************/ 112 | 113 | void twopoints(double *xy0, double a, double d, double *xy1, double *xy2); 114 | 115 | void line(FILE *psfile, double *xy1, double *xy2); 116 | 117 | void square(FILE *psfile, long fill, double *xy1, double *xy2, double d, double a); 118 | 119 | void circle(FILE *psfile, long fill, double *xy1, double *xy2, double r); 120 | 121 | void triangle(FILE *psfile, long fill, double *xy1, double *xy3, double d, double a); 122 | 123 | void color_line(FILE *psfile, char *color, double *xy1, double *xy2); 124 | 125 | void dashline_red(FILE *psfile, double *xy1, double *xy2); 126 | 127 | void dashline(FILE *psfile, double *xy1, double *xy2); 128 | 129 | void dotline(FILE *psfile, double *xy1, double *xy2); 130 | 131 | void del_extension(char *pdbfile, char *parfile); 132 | -------------------------------------------------------------------------------- /test/mmcif/insertion_code/4ARC/4ARC.cif.out: -------------------------------------------------------------------------------- 1 | PDB data file name: test/mmcif/insertion_code/4ARC/4ARC.cif 2 | ----------------------------------------------------------- 3 | CRITERIA USED TO GENERATE BASE-PAIR: 4 | 3.40 --> upper H-bond length limits (ON..ON). 5 | 26.00 --> max. distance between paired base origins. 6 | 2.50 --> max. vertical distance between paired base origins. 7 | 65.00 --> max. angle between paired bases [0-90]. 8 | 5.40 --> min. distance between RN9/YN1 atoms. 9 | 8.00 --> max. distance criterion for helix break[0-12] 10 | ----------------------------------------------------------- 11 | BASE-PAIR INSTRUCTIONS: 12 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 13 | Column 2 & 3 are chain ID & residue number in input PDB file. 14 | Column 4 is for base pair. The left & right are the bases as 15 | identified by column 2 & 3 and 5 & 6. 16 | Column 5 & 6 are residue number & chain ID in input PDB file. 17 | Column 7 is for base pair annotation. The standard Watson-Crick 18 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 19 | Other pairs are annotated as Leontis_Westhof Classification. 20 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 21 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 22 | Column 8 is glycosidic bond orientation (either cis or trans). 23 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 24 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 25 | Column 9 corresponds to Saenger Classification. 26 | 27 | Other columns: 28 | Syn sugar-base conformations are annotated as (syn). 29 | Stacked base pairs are annotated as (stack). 30 | Non-identified edges are annotated as (.) or (?) 31 | Tertiary interactions are marked by (!) in the line. 32 | Reference: 33 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 34 | ----------------------------------------------------------- 35 | BEGIN_base-pair 36 | 1_68, B: 5 G-C 68 B: W/W cis n/a 37 | 2_67, B: 6 G-C 67 B: +/+ cis XIX 38 | 3_66, B: 7 A-U 66 B: -/- cis XX 39 | 4_10, B: 8 U-A 14 B: W/H tran XXIV 40 | 5_8, B: 9 G-G 12 B: W/H cis syn VI 41 | 6_22, B: 10 G-C 25 B: +/+ cis XIX 42 | 7_21, B: 11 U-A 24 B: -/- cis XX 43 | 8_20, B: 12 G-C 23 B: +/+ cis XIX 44 | 9_19, B: 13 G-A 22 B: S/H tran XI 45 | 10_17, B: 14 A-A 20 B: W/S cis n/a 46 | 11_48, B: 15 A-U 48 B: W/W tran XXI 47 | 14_55, B: 18 G-U 55 B: W/S tran n/a 48 | 15_56, B: 19 G-C 56 B: +/+ cis syn XIX 49 | 18_47, B: 21 G-G 47 B: H/S tran n/a 50 | 24_33, B: 27 A-U 43 B: -/- cis XX 51 | 25_32, B: 28 G-C 42 B: W/W cis n/a 52 | 26_32, B: 29 G-C 42 B: W/W cis n/a 53 | 28_29, B: 31 A-U 39 B: W/W cis n/a 54 | 29_30, B: 39 U-C 40 B: stacked 55 | 35_46, B: 45 G-U 47 B: W/W cis XXVIII 56 | 36_45, B: 46 G-C 47 B: +/+ cis XIX 57 | 37_38, B: 47 C-G 47 B: stacked 58 | 37_44, B: 47 C-G 47 B: +/+ cis XIX 59 | 38_43, B: 47 G-C 47 B: +/+ cis XIX 60 | 39_41, B: 47 U-C 47 B: stacked 61 | 39_42, B: 47 U-G 47 B: S/W tran syn n/a 62 | 49_65, B: 49 G-C 65 B: +/+ cis XIX 63 | 50_64, B: 50 C-G 64 B: +/+ cis XIX 64 | 51_63, B: 51 G-C 63 B: +/+ cis XIX 65 | 52_62, B: 52 G-C 62 B: +/+ cis XIX 66 | 53_54, B: 53 G-U 54 B: stacked 67 | 53_61, B: 53 G-C 61 B: +/+ cis XIX 68 | 54_58, B: 54 U-A 58 B: W/H tran syn XXIV 69 | 66_67, B: 66 U-C 67 B: stacked 70 | 5_20, B: 9 G-C 23 B: W/H cis syn !1H(b_b) 71 | 4_17, B: 8 U-A 20 B: S/W tran !(b_s) 72 | 9_18, B: 13 G-G 21 B: W/S cis !(b_s) 73 | 40_42, B: 47 U-G 47 B: S/H cis syn !(b_s) 74 | 15_16, B: 19 G-U 20 B: S/. cis syn !(s_s) 75 | 18_19, B: 21 G-A 22 B: S/S tran !(s_s) 76 | END_base-pair 77 | 78 | Summary of triplets and higher multiplets 79 | BEGIN_multiplets 80 | 4_10_17_| [1 3] B: 8 U + B: 14 A + B: 20 A 81 | 5_8_20_| [2 3] B: 9 G + B: 12 G + B: 23 C 82 | END_multiplets 83 | 84 | The total base pairs = 29 (from 71 bases) 85 | ------------------------------------------------ 86 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 87 | 15 5 1 0 0 0 0 88 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 89 | 1 2 1 2 0 2 90 | ------------------------------------------------ 91 | -------------------------------------------------------------------------------- /rnaml2ps/xml2ps.h: -------------------------------------------------------------------------------- 1 | #define PSPIONT 12 /*the letter size for postscript file */ 2 | 3 | void read_sequence(char *inpfile, char *resname, long *author_seq, long *nres); 4 | 5 | void extract_sequence(FILE *inp, char *resname, long *nres); 6 | 7 | void read_xy_coord(char *inpfile, double **xy, long *resid_idx, long *num_xy); 8 | 9 | 10 | 11 | void read_pair_type(char *inpfile,char **pair_type,long **npair_idx,long *npair, 12 | 13 | long *nhelix, long **helix_idx, long *helix_length, 14 | 15 | long *nsing, long *sing_st, long *sing_end); 16 | 17 | void get_xyz_coord(FILE *inp, double *x, double *y, double *z); 18 | 19 | void read_O3prime_P_xyz(char *inpfile, double **o3_prime_xyz, double **p_xyz); 20 | 21 | void get_chain(long nres, double **a, double **b, long *nchain,long **chain_idx); 22 | 23 | void link_chain(long nchain,long **chain_idx, double **xy); 24 | 25 | void label_ps_resname(long num_res, char *resname, double **xy, long *sugar_syn); 26 | 27 | void label_5p_3p(FILE *psfile, long i, long **chain_idx, double **xy); 28 | 29 | void write_5p_3p(long k1, long k2, double a, double **xy, char *labelP); 30 | 31 | void label_seq_number(long nres, long nhelix, long **helix_idx, 32 | 33 | long *helix_length,long nsing, long *sing_st, 34 | 35 | long *sing_end, double **xy, long *author_seq); 36 | 37 | void label_seq(long k1, long k2, double a, double **xy, long key, long *author_seq); 38 | 39 | void draw_LW_diagram(long npair, char **pair_type, char *resname, 40 | 41 | long **npair_idx, double **xy); 42 | 43 | void extract_author_seq(FILE *inp, long *author_seq, long *nseq); 44 | 45 | 46 | 47 | double h_width(long nhelix, long **helix_idx, long *helix_length, double **xy); 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | double slope(long k1, long k2, double **xy); 56 | 57 | void get_value(FILE *inp, char *value); 58 | 59 | double dist(double *a, double *b, long n); 60 | 61 | void usage(void); 62 | 63 | void element_in_bracket(FILE *inp,char *item,long *size,char *lett,long *key); 64 | 65 | void get_num_residue(long size_item, char *lett, long *nres); 66 | 67 | 68 | void get_base_pair(long *num_pair, long **base_pair, char **edge_type, 69 | 70 | long **pair_idx, long *num_helix, long **helix_st_end, 71 | 72 | long *helix_len); 73 | 74 | void get_ss_xy(double **xy, long *num_xy); 75 | 76 | void make_a_line(char *str); 77 | 78 | void search_item(long *num_in, char lett[], char *item1, char *item2); 79 | 80 | void get_model_id(char *lett, char *identifer, char *item, long *model_id); 81 | 82 | long num_of_pair(char *inpfile); 83 | 84 | void get_residue_num(char *str, long *nres1, long *nres2, long *seq); 85 | 86 | void read_bs_pair(char *inpfile, long *npair, char *edge_type, char *cis_tran, 87 | 88 | char *resname, long *chain_id, long *seq, long **num_idx); 89 | 90 | 91 | 92 | 93 | 94 | void LW_shapes(char *bseq, long k1, long k2, char *pair_type, double *x, double *y, double at, double ratio); 95 | 96 | 97 | 98 | void nrerror(char error_text[]); 99 | 100 | 101 | 102 | 103 | 104 | /*******************/ 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | void generate_ps_file(long num_res, char *resname, double **xy); 113 | 114 | void get_helix(long **helix, long *helix_len, long *num_helix); 115 | 116 | void ps_head(long *bbox); 117 | 118 | double xml_dmax(double a, double b); 119 | 120 | double xml_dmin(double a, double b); 121 | 122 | void xml_max_dmatrix(double **d, long nr, long nc, double *maxdm); 123 | 124 | void xml_min_dmatrix(double **d, long nr, long nc, double *mindm); 125 | 126 | void xml_move_position(double **d, long nr, long nc, double *mpos); 127 | 128 | long xml_round(double d); 129 | 130 | void xml_xy4ps(long num, double **oxy, double ps_size, long n); 131 | 132 | 133 | 134 | void get_position(FILE *inp, long *position); 135 | 136 | void get_xy_position(FILE *inp, double *x, double *y); 137 | 138 | /*******************/ 139 | 140 | 141 | 142 | void twopoints(double *xy0, double a, double d, double *xy1, double *xy2); 143 | 144 | 145 | 146 | void line(FILE *psfile, double *xy1, double *xy2); 147 | 148 | void square(FILE *psfile, long fill, double *xy1, double *xy2, double d, double a); 149 | 150 | void circle(FILE *psfile, long fill, double *xy1, double *xy2, double r); 151 | 152 | void triangle(FILE *psfile, long fill, double *xy1, double *xy3, double d,double a); 153 | 154 | void color_line(FILE *psfile, char *color, double *xy1, double *xy2); 155 | 156 | void dashline_red(FILE *psfile, double *xy1, double *xy2); 157 | 158 | void dashline(FILE *psfile, double *xy1, double *xy2); 159 | 160 | void dotline(FILE *psfile, double *xy1, double *xy2); 161 | 162 | 163 | 164 | void del_extension(char *pdbfile, char *parfile); 165 | 166 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-1/434D-ASSEMBLY1.CIF.ps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 2 | %%Title: A postscript generated from a RNAML file. 3 | %%CreationDate: Mon Dec 11 10:28:38 2023 4 | %%Orientation: Portrait 5 | %%BoundingBox: 251 289 361 504 6 | 7 | /Times-Bold findfont 12 scalefont setfont 8 | 9 | 10 | /Times-Bold findfont 13 scalefont setfont %%set font for (A U G C T) 11 | 12 | %% stacking diagram widths for base-pairs 1 & 2 13 | /W1 {1 setlinewidth} bind def 14 | /W2 {1.5 setlinewidth} bind def 15 | /W3 {2 setlinewidth} bind def 16 | /W4 {3 setlinewidth} bind def 17 | 18 | %% minor and major grooves filling color saturation 19 | /MINOR_SAT 0.9 def 20 | /MAJOR_SAT 0.1 def 21 | /OTHER_SIDES {0 0 1 sethsbcolor fill} bind def 22 | 23 | %% defineing geometry shapes 24 | /NP {newpath} bind def 25 | /CIRCLE {0 360 arc closepath} bind def %% circle 26 | /TRIANGLE {moveto lineto lineto closepath} bind def %% triangle 27 | /SQUARE {moveto lineto lineto lineto closepath} bind def %% square 28 | /LINE {moveto lineto stroke} bind def %% line 29 | /DASHLINE { moveto lineto [2 4] 0 setdash stroke } bind def %% dashline 30 | /DOTLINE {1 0 1 setrgbcolor} bind def %% dotline 31 | /Dw {1 setlinewidth} bind def 32 | /FB {setgray fill} bind def 33 | /R6 {moveto lineto lineto lineto lineto lineto closepath} bind def 34 | /R9 {moveto lineto lineto lineto lineto lineto 35 | lineto lineto lineto closepath} bind def 36 | 37 | %% line drawing colors for ACGITU & others 38 | /Al {0.0000 1.00 1.00 sethsbcolor} bind def 39 | /Cl {0.1667 1.00 1.00 sethsbcolor} bind def 40 | /Gl {0.3333 1.00 1.00 sethsbcolor} bind def 41 | /Il {0.3333 1.00 0.57 sethsbcolor} bind def 42 | /Tl {0.6667 1.00 1.00 sethsbcolor} bind def 43 | /Ul {0.5000 1.00 1.00 sethsbcolor} bind def 44 | /Xl {0.0000 0.00 0.00 sethsbcolor} bind def 45 | /XX {0.2000 0.20 0.20 sethsbcolor} bind def 46 | /FILLBLACK {0.0000 0.00 0.00 sethsbcolor fill} bind def 47 | 48 | %% minor groove filling colors for ACGITU & others 49 | /Am {0.0000 MINOR_SAT 1.00 sethsbcolor fill} bind def 50 | /Cm {0.1667 MINOR_SAT 1.00 sethsbcolor fill} bind def 51 | /Gm {0.3333 MINOR_SAT 1.00 sethsbcolor fill} bind def 52 | /Im {0.3333 MINOR_SAT 0.57 sethsbcolor fill} bind def 53 | /Tm {0.6667 MINOR_SAT 1.00 sethsbcolor fill} bind def 54 | /Um {0.5000 MINOR_SAT 1.00 sethsbcolor fill} bind def 55 | /Xm {0.0000 0.00 MAJOR_SAT sethsbcolor fill} bind def 56 | 57 | %% major groove filling colors for ACGITU & others 58 | /AM {0.0000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 59 | /CM {0.1667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 60 | /GM {0.3333 MAJOR_SAT 1.00 sethsbcolor fill} bind def 61 | /IM {0.3333 MAJOR_SAT 0.57 sethsbcolor fill} bind def 62 | /TM {0.6667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 63 | /UM {0.5000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 64 | /XM {0.0000 0.00 MINOR_SAT sethsbcolor fill} bind def 65 | 66 | %% define line width, line join style & cap style (1 means round) 67 | 1 setlinewidth 1 setlinejoin 1 setlinecap 68 | 271 309 translate 69 | 70 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 71 | 0.00 171.00 moveto (U) center show 72 | 0.00 141.83 moveto (A) center show 73 | 0.00 112.67 moveto (G) center show 74 | 0.00 83.50 moveto (C) center show 75 | 0.00 54.33 moveto (U) center show 76 | 0.00 25.17 moveto (C) center show 77 | 0.00 -4.00 moveto (C) center show 78 | 70.00 -4.00 moveto (G) center show 79 | 70.00 25.17 moveto (G) center show 80 | 70.00 54.33 moveto (G) center show 81 | 70.00 83.50 moveto (G) center show 82 | 70.00 112.67 moveto (C) center show 83 | 70.00 141.83 moveto (U) center show 84 | 70.00 171.00 moveto (A) center show 85 | 0.005 setlinewidth 1 setlinejoin 1 setlinecap 86 | /Times findfont 11 scalefont setfont 87 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 88 | gsave Al -0.00 181.00 moveto (5') center show grestore 89 | /Times findfont 11 scalefont setfont 90 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 91 | gsave Al 0.00 -14.00 moveto (3') center show grestore 92 | Il 0.00 175.00 0.00 145.83 LINE 93 | Il 0.00 145.83 0.00 116.67 LINE 94 | Il 0.00 116.67 0.00 87.50 LINE 95 | Il 0.00 87.50 0.00 58.33 LINE 96 | Il 0.00 58.33 0.00 29.17 LINE 97 | Il 0.00 29.17 0.00 0.00 LINE 98 | /Times findfont 11 scalefont setfont 99 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 100 | gsave Al 70.00 -14.00 moveto (5') center show grestore 101 | /Times findfont 11 scalefont setfont 102 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 103 | gsave Al 70.00 181.00 moveto (3') center show grestore 104 | Tl 70.00 0.00 70.00 29.17 LINE 105 | Tl 70.00 29.17 70.00 58.33 LINE 106 | Tl 70.00 58.33 70.00 87.50 LINE 107 | Tl 70.00 87.50 70.00 116.67 LINE 108 | Tl 70.00 116.67 70.00 145.83 LINE 109 | Tl 70.00 145.83 70.00 175.00 LINE 110 | /Times findfont 8 scalefont setfont 111 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 112 | gsave Tl -9.00 54.33 moveto (5) center show grestore 113 | gsave Tl 79.00 54.33 moveto (10) center show grestore 114 | NP W1 115 | Xl 8.00 175.00 62.00 175.00 LINE 116 | NP W1 117 | Xl 8.00 145.83 62.00 145.83 LINE 118 | NP W1 119 | Xl 8.00 114.67 62.00 114.67 LINE 120 | Xl 8.00 118.67 62.00 118.67 LINE 121 | NP W1 122 | Xl 8.00 85.50 62.00 85.50 LINE 123 | Xl 8.00 89.50 62.00 89.50 LINE 124 | NP W1 125 | Xl 35.00 58.33 3.00 CIRCLE 126 | gsave grestore stroke 127 | NP W1 128 | Xl 8.00 27.17 62.00 27.17 LINE 129 | Xl 8.00 31.17 62.00 31.17 LINE 130 | NP W1 131 | Xl 8.00 -2.00 62.00 -2.00 LINE 132 | Xl 8.00 2.00 62.00 2.00 LINE 133 | 134 | showpage 135 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-2/434d-assembly2.cif.ps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 2 | %%Title: A postscript generated from a RNAML file. 3 | %%CreationDate: Mon Dec 11 10:28:38 2023 4 | %%Orientation: Portrait 5 | %%BoundingBox: 251 289 361 504 6 | 7 | /Times-Bold findfont 12 scalefont setfont 8 | 9 | 10 | /Times-Bold findfont 13 scalefont setfont %%set font for (A U G C T) 11 | 12 | %% stacking diagram widths for base-pairs 1 & 2 13 | /W1 {1 setlinewidth} bind def 14 | /W2 {1.5 setlinewidth} bind def 15 | /W3 {2 setlinewidth} bind def 16 | /W4 {3 setlinewidth} bind def 17 | 18 | %% minor and major grooves filling color saturation 19 | /MINOR_SAT 0.9 def 20 | /MAJOR_SAT 0.1 def 21 | /OTHER_SIDES {0 0 1 sethsbcolor fill} bind def 22 | 23 | %% defineing geometry shapes 24 | /NP {newpath} bind def 25 | /CIRCLE {0 360 arc closepath} bind def %% circle 26 | /TRIANGLE {moveto lineto lineto closepath} bind def %% triangle 27 | /SQUARE {moveto lineto lineto lineto closepath} bind def %% square 28 | /LINE {moveto lineto stroke} bind def %% line 29 | /DASHLINE { moveto lineto [2 4] 0 setdash stroke } bind def %% dashline 30 | /DOTLINE {1 0 1 setrgbcolor} bind def %% dotline 31 | /Dw {1 setlinewidth} bind def 32 | /FB {setgray fill} bind def 33 | /R6 {moveto lineto lineto lineto lineto lineto closepath} bind def 34 | /R9 {moveto lineto lineto lineto lineto lineto 35 | lineto lineto lineto closepath} bind def 36 | 37 | %% line drawing colors for ACGITU & others 38 | /Al {0.0000 1.00 1.00 sethsbcolor} bind def 39 | /Cl {0.1667 1.00 1.00 sethsbcolor} bind def 40 | /Gl {0.3333 1.00 1.00 sethsbcolor} bind def 41 | /Il {0.3333 1.00 0.57 sethsbcolor} bind def 42 | /Tl {0.6667 1.00 1.00 sethsbcolor} bind def 43 | /Ul {0.5000 1.00 1.00 sethsbcolor} bind def 44 | /Xl {0.0000 0.00 0.00 sethsbcolor} bind def 45 | /XX {0.2000 0.20 0.20 sethsbcolor} bind def 46 | /FILLBLACK {0.0000 0.00 0.00 sethsbcolor fill} bind def 47 | 48 | %% minor groove filling colors for ACGITU & others 49 | /Am {0.0000 MINOR_SAT 1.00 sethsbcolor fill} bind def 50 | /Cm {0.1667 MINOR_SAT 1.00 sethsbcolor fill} bind def 51 | /Gm {0.3333 MINOR_SAT 1.00 sethsbcolor fill} bind def 52 | /Im {0.3333 MINOR_SAT 0.57 sethsbcolor fill} bind def 53 | /Tm {0.6667 MINOR_SAT 1.00 sethsbcolor fill} bind def 54 | /Um {0.5000 MINOR_SAT 1.00 sethsbcolor fill} bind def 55 | /Xm {0.0000 0.00 MAJOR_SAT sethsbcolor fill} bind def 56 | 57 | %% major groove filling colors for ACGITU & others 58 | /AM {0.0000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 59 | /CM {0.1667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 60 | /GM {0.3333 MAJOR_SAT 1.00 sethsbcolor fill} bind def 61 | /IM {0.3333 MAJOR_SAT 0.57 sethsbcolor fill} bind def 62 | /TM {0.6667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 63 | /UM {0.5000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 64 | /XM {0.0000 0.00 MINOR_SAT sethsbcolor fill} bind def 65 | 66 | %% define line width, line join style & cap style (1 means round) 67 | 1 setlinewidth 1 setlinejoin 1 setlinecap 68 | 271 309 translate 69 | 70 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 71 | 70.00 171.00 moveto (U) center show 72 | 70.00 141.83 moveto (A) center show 73 | 70.00 112.67 moveto (G) center show 74 | 70.00 83.50 moveto (C) center show 75 | 70.00 54.33 moveto (U) center show 76 | 70.00 25.17 moveto (C) center show 77 | 70.00 -4.00 moveto (C) center show 78 | 0.00 -4.00 moveto (G) center show 79 | 0.00 25.17 moveto (G) center show 80 | 0.00 54.33 moveto (G) center show 81 | 0.00 83.50 moveto (G) center show 82 | 0.00 112.67 moveto (C) center show 83 | 0.00 141.83 moveto (U) center show 84 | 0.00 171.00 moveto (A) center show 85 | 0.005 setlinewidth 1 setlinejoin 1 setlinecap 86 | /Times findfont 11 scalefont setfont 87 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 88 | gsave Al 70.00 181.00 moveto (5') center show grestore 89 | /Times findfont 11 scalefont setfont 90 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 91 | gsave Al 70.00 -14.00 moveto (3') center show grestore 92 | Il 70.00 175.00 70.00 145.83 LINE 93 | Il 70.00 145.83 70.00 116.67 LINE 94 | Il 70.00 116.67 70.00 87.50 LINE 95 | Il 70.00 87.50 70.00 58.33 LINE 96 | Il 70.00 58.33 70.00 29.17 LINE 97 | Il 70.00 29.17 70.00 0.00 LINE 98 | /Times findfont 11 scalefont setfont 99 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 100 | gsave Al -0.00 -14.00 moveto (5') center show grestore 101 | /Times findfont 11 scalefont setfont 102 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 103 | gsave Al 0.00 181.00 moveto (3') center show grestore 104 | Tl 0.00 0.00 0.00 29.17 LINE 105 | Tl 0.00 29.17 0.00 58.33 LINE 106 | Tl 0.00 58.33 0.00 87.50 LINE 107 | Tl 0.00 87.50 0.00 116.67 LINE 108 | Tl 0.00 116.67 0.00 145.83 LINE 109 | Tl 0.00 145.83 0.00 175.00 LINE 110 | /Times findfont 8 scalefont setfont 111 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 112 | gsave Tl 79.00 54.33 moveto (5) center show grestore 113 | gsave Tl -9.00 54.33 moveto (10) center show grestore 114 | NP W1 115 | Xl 62.00 175.00 8.00 175.00 LINE 116 | NP W1 117 | Xl 62.00 145.83 8.00 145.83 LINE 118 | NP W1 119 | Xl 62.00 114.67 8.00 114.67 LINE 120 | Xl 62.00 118.67 8.00 118.67 LINE 121 | NP W1 122 | Xl 62.00 85.50 8.00 85.50 LINE 123 | Xl 62.00 89.50 8.00 89.50 LINE 124 | NP W1 125 | Xl 35.00 58.33 3.00 CIRCLE 126 | gsave grestore stroke 127 | NP W1 128 | Xl 62.00 27.17 8.00 27.17 LINE 129 | Xl 62.00 31.17 8.00 31.17 LINE 130 | NP W1 131 | Xl 62.00 -2.00 8.00 -2.00 LINE 132 | Xl 62.00 2.00 8.00 2.00 LINE 133 | 134 | showpage 135 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-1/434d-assembly1_gt.cif.ps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 2 | %%Title: A postscript generated from a RNAML file. 3 | %%CreationDate: Wed Nov 15 11:12:37 2023 4 | %%Orientation: Portrait 5 | %%BoundingBox: 251 289 361 504 6 | 7 | /Times-Bold findfont 12 scalefont setfont 8 | 9 | 10 | /Times-Bold findfont 13 scalefont setfont %%set font for (A U G C T) 11 | 12 | %% stacking diagram widths for base-pairs 1 & 2 13 | /W1 {1 setlinewidth} bind def 14 | /W2 {1.5 setlinewidth} bind def 15 | /W3 {2 setlinewidth} bind def 16 | /W4 {3 setlinewidth} bind def 17 | 18 | %% minor and major grooves filling color saturation 19 | /MINOR_SAT 0.9 def 20 | /MAJOR_SAT 0.1 def 21 | /OTHER_SIDES {0 0 1 sethsbcolor fill} bind def 22 | 23 | %% defineing geometry shapes 24 | /NP {newpath} bind def 25 | /CIRCLE {0 360 arc closepath} bind def %% circle 26 | /TRIANGLE {moveto lineto lineto closepath} bind def %% triangle 27 | /SQUARE {moveto lineto lineto lineto closepath} bind def %% square 28 | /LINE {moveto lineto stroke} bind def %% line 29 | /DASHLINE { moveto lineto [2 4] 0 setdash stroke } bind def %% dashline 30 | /DOTLINE {1 0 1 setrgbcolor} bind def %% dotline 31 | /Dw {1 setlinewidth} bind def 32 | /FB {setgray fill} bind def 33 | /R6 {moveto lineto lineto lineto lineto lineto closepath} bind def 34 | /R9 {moveto lineto lineto lineto lineto lineto 35 | lineto lineto lineto closepath} bind def 36 | 37 | %% line drawing colors for ACGITU & others 38 | /Al {0.0000 1.00 1.00 sethsbcolor} bind def 39 | /Cl {0.1667 1.00 1.00 sethsbcolor} bind def 40 | /Gl {0.3333 1.00 1.00 sethsbcolor} bind def 41 | /Il {0.3333 1.00 0.57 sethsbcolor} bind def 42 | /Tl {0.6667 1.00 1.00 sethsbcolor} bind def 43 | /Ul {0.5000 1.00 1.00 sethsbcolor} bind def 44 | /Xl {0.0000 0.00 0.00 sethsbcolor} bind def 45 | /XX {0.2000 0.20 0.20 sethsbcolor} bind def 46 | /FILLBLACK {0.0000 0.00 0.00 sethsbcolor fill} bind def 47 | 48 | %% minor groove filling colors for ACGITU & others 49 | /Am {0.0000 MINOR_SAT 1.00 sethsbcolor fill} bind def 50 | /Cm {0.1667 MINOR_SAT 1.00 sethsbcolor fill} bind def 51 | /Gm {0.3333 MINOR_SAT 1.00 sethsbcolor fill} bind def 52 | /Im {0.3333 MINOR_SAT 0.57 sethsbcolor fill} bind def 53 | /Tm {0.6667 MINOR_SAT 1.00 sethsbcolor fill} bind def 54 | /Um {0.5000 MINOR_SAT 1.00 sethsbcolor fill} bind def 55 | /Xm {0.0000 0.00 MAJOR_SAT sethsbcolor fill} bind def 56 | 57 | %% major groove filling colors for ACGITU & others 58 | /AM {0.0000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 59 | /CM {0.1667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 60 | /GM {0.3333 MAJOR_SAT 1.00 sethsbcolor fill} bind def 61 | /IM {0.3333 MAJOR_SAT 0.57 sethsbcolor fill} bind def 62 | /TM {0.6667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 63 | /UM {0.5000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 64 | /XM {0.0000 0.00 MINOR_SAT sethsbcolor fill} bind def 65 | 66 | %% define line width, line join style & cap style (1 means round) 67 | 1 setlinewidth 1 setlinejoin 1 setlinecap 68 | 271 309 translate 69 | 70 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 71 | 0.00 171.00 moveto (U) center show 72 | 0.00 141.83 moveto (A) center show 73 | 0.00 112.67 moveto (G) center show 74 | 0.00 83.50 moveto (C) center show 75 | 0.00 54.33 moveto (U) center show 76 | 0.00 25.17 moveto (C) center show 77 | 0.00 -4.00 moveto (C) center show 78 | 70.00 -4.00 moveto (G) center show 79 | 70.00 25.17 moveto (G) center show 80 | 70.00 54.33 moveto (G) center show 81 | 70.00 83.50 moveto (G) center show 82 | 70.00 112.67 moveto (C) center show 83 | 70.00 141.83 moveto (U) center show 84 | 70.00 171.00 moveto (A) center show 85 | 0.005 setlinewidth 1 setlinejoin 1 setlinecap 86 | /Times findfont 11 scalefont setfont 87 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 88 | gsave Al -0.00 181.00 moveto (5') center show grestore 89 | /Times findfont 11 scalefont setfont 90 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 91 | gsave Al 0.00 -14.00 moveto (3') center show grestore 92 | Il 0.00 175.00 0.00 145.83 LINE 93 | Il 0.00 145.83 0.00 116.67 LINE 94 | Il 0.00 116.67 0.00 87.50 LINE 95 | Il 0.00 87.50 0.00 58.33 LINE 96 | Il 0.00 58.33 0.00 29.17 LINE 97 | Il 0.00 29.17 0.00 0.00 LINE 98 | /Times findfont 11 scalefont setfont 99 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 100 | gsave Al 70.00 -14.00 moveto (5') center show grestore 101 | /Times findfont 11 scalefont setfont 102 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 103 | gsave Al 70.00 181.00 moveto (3') center show grestore 104 | Tl 70.00 0.00 70.00 29.17 LINE 105 | Tl 70.00 29.17 70.00 58.33 LINE 106 | Tl 70.00 58.33 70.00 87.50 LINE 107 | Tl 70.00 87.50 70.00 116.67 LINE 108 | Tl 70.00 116.67 70.00 145.83 LINE 109 | Tl 70.00 145.83 70.00 175.00 LINE 110 | /Times findfont 8 scalefont setfont 111 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 112 | gsave Tl -9.00 54.33 moveto (5) center show grestore 113 | gsave Tl 79.00 54.33 moveto (10) center show grestore 114 | NP W1 115 | Xl 8.00 175.00 62.00 175.00 LINE 116 | NP W1 117 | Xl 8.00 145.83 62.00 145.83 LINE 118 | NP W1 119 | Xl 8.00 114.67 62.00 114.67 LINE 120 | Xl 8.00 118.67 62.00 118.67 LINE 121 | NP W1 122 | Xl 8.00 85.50 62.00 85.50 LINE 123 | Xl 8.00 89.50 62.00 89.50 LINE 124 | NP W1 125 | Xl 35.00 58.33 3.00 CIRCLE 126 | gsave grestore stroke 127 | NP W1 128 | Xl 8.00 27.17 62.00 27.17 LINE 129 | Xl 8.00 31.17 62.00 31.17 LINE 130 | NP W1 131 | Xl 8.00 -2.00 62.00 -2.00 LINE 132 | Xl 8.00 2.00 62.00 2.00 LINE 133 | 134 | showpage 135 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/434D/assembly-2/434d-assembly2_gt.cif.ps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 2 | %%Title: A postscript generated from a RNAML file. 3 | %%CreationDate: Wed Nov 15 11:12:37 2023 4 | %%Orientation: Portrait 5 | %%BoundingBox: 251 289 361 504 6 | 7 | /Times-Bold findfont 12 scalefont setfont 8 | 9 | 10 | /Times-Bold findfont 13 scalefont setfont %%set font for (A U G C T) 11 | 12 | %% stacking diagram widths for base-pairs 1 & 2 13 | /W1 {1 setlinewidth} bind def 14 | /W2 {1.5 setlinewidth} bind def 15 | /W3 {2 setlinewidth} bind def 16 | /W4 {3 setlinewidth} bind def 17 | 18 | %% minor and major grooves filling color saturation 19 | /MINOR_SAT 0.9 def 20 | /MAJOR_SAT 0.1 def 21 | /OTHER_SIDES {0 0 1 sethsbcolor fill} bind def 22 | 23 | %% defineing geometry shapes 24 | /NP {newpath} bind def 25 | /CIRCLE {0 360 arc closepath} bind def %% circle 26 | /TRIANGLE {moveto lineto lineto closepath} bind def %% triangle 27 | /SQUARE {moveto lineto lineto lineto closepath} bind def %% square 28 | /LINE {moveto lineto stroke} bind def %% line 29 | /DASHLINE { moveto lineto [2 4] 0 setdash stroke } bind def %% dashline 30 | /DOTLINE {1 0 1 setrgbcolor} bind def %% dotline 31 | /Dw {1 setlinewidth} bind def 32 | /FB {setgray fill} bind def 33 | /R6 {moveto lineto lineto lineto lineto lineto closepath} bind def 34 | /R9 {moveto lineto lineto lineto lineto lineto 35 | lineto lineto lineto closepath} bind def 36 | 37 | %% line drawing colors for ACGITU & others 38 | /Al {0.0000 1.00 1.00 sethsbcolor} bind def 39 | /Cl {0.1667 1.00 1.00 sethsbcolor} bind def 40 | /Gl {0.3333 1.00 1.00 sethsbcolor} bind def 41 | /Il {0.3333 1.00 0.57 sethsbcolor} bind def 42 | /Tl {0.6667 1.00 1.00 sethsbcolor} bind def 43 | /Ul {0.5000 1.00 1.00 sethsbcolor} bind def 44 | /Xl {0.0000 0.00 0.00 sethsbcolor} bind def 45 | /XX {0.2000 0.20 0.20 sethsbcolor} bind def 46 | /FILLBLACK {0.0000 0.00 0.00 sethsbcolor fill} bind def 47 | 48 | %% minor groove filling colors for ACGITU & others 49 | /Am {0.0000 MINOR_SAT 1.00 sethsbcolor fill} bind def 50 | /Cm {0.1667 MINOR_SAT 1.00 sethsbcolor fill} bind def 51 | /Gm {0.3333 MINOR_SAT 1.00 sethsbcolor fill} bind def 52 | /Im {0.3333 MINOR_SAT 0.57 sethsbcolor fill} bind def 53 | /Tm {0.6667 MINOR_SAT 1.00 sethsbcolor fill} bind def 54 | /Um {0.5000 MINOR_SAT 1.00 sethsbcolor fill} bind def 55 | /Xm {0.0000 0.00 MAJOR_SAT sethsbcolor fill} bind def 56 | 57 | %% major groove filling colors for ACGITU & others 58 | /AM {0.0000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 59 | /CM {0.1667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 60 | /GM {0.3333 MAJOR_SAT 1.00 sethsbcolor fill} bind def 61 | /IM {0.3333 MAJOR_SAT 0.57 sethsbcolor fill} bind def 62 | /TM {0.6667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 63 | /UM {0.5000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 64 | /XM {0.0000 0.00 MINOR_SAT sethsbcolor fill} bind def 65 | 66 | %% define line width, line join style & cap style (1 means round) 67 | 1 setlinewidth 1 setlinejoin 1 setlinecap 68 | 271 309 translate 69 | 70 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 71 | 70.00 171.00 moveto (U) center show 72 | 70.00 141.83 moveto (A) center show 73 | 70.00 112.67 moveto (G) center show 74 | 70.00 83.50 moveto (C) center show 75 | 70.00 54.33 moveto (U) center show 76 | 70.00 25.17 moveto (C) center show 77 | 70.00 -4.00 moveto (C) center show 78 | 0.00 -4.00 moveto (G) center show 79 | 0.00 25.17 moveto (G) center show 80 | 0.00 54.33 moveto (G) center show 81 | 0.00 83.50 moveto (G) center show 82 | 0.00 112.67 moveto (C) center show 83 | 0.00 141.83 moveto (U) center show 84 | 0.00 171.00 moveto (A) center show 85 | 0.005 setlinewidth 1 setlinejoin 1 setlinecap 86 | /Times findfont 11 scalefont setfont 87 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 88 | gsave Al 70.00 181.00 moveto (5') center show grestore 89 | /Times findfont 11 scalefont setfont 90 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 91 | gsave Al 70.00 -14.00 moveto (3') center show grestore 92 | Il 70.00 175.00 70.00 145.83 LINE 93 | Il 70.00 145.83 70.00 116.67 LINE 94 | Il 70.00 116.67 70.00 87.50 LINE 95 | Il 70.00 87.50 70.00 58.33 LINE 96 | Il 70.00 58.33 70.00 29.17 LINE 97 | Il 70.00 29.17 70.00 0.00 LINE 98 | /Times findfont 11 scalefont setfont 99 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 100 | gsave Al -0.00 -14.00 moveto (5') center show grestore 101 | /Times findfont 11 scalefont setfont 102 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 103 | gsave Al 0.00 181.00 moveto (3') center show grestore 104 | Tl 0.00 0.00 0.00 29.17 LINE 105 | Tl 0.00 29.17 0.00 58.33 LINE 106 | Tl 0.00 58.33 0.00 87.50 LINE 107 | Tl 0.00 87.50 0.00 116.67 LINE 108 | Tl 0.00 116.67 0.00 145.83 LINE 109 | Tl 0.00 145.83 0.00 175.00 LINE 110 | /Times findfont 8 scalefont setfont 111 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 112 | gsave Tl 79.00 54.33 moveto (5) center show grestore 113 | gsave Tl -9.00 54.33 moveto (10) center show grestore 114 | NP W1 115 | Xl 62.00 175.00 8.00 175.00 LINE 116 | NP W1 117 | Xl 62.00 145.83 8.00 145.83 LINE 118 | NP W1 119 | Xl 62.00 114.67 8.00 114.67 LINE 120 | Xl 62.00 118.67 8.00 118.67 LINE 121 | NP W1 122 | Xl 62.00 85.50 8.00 85.50 LINE 123 | Xl 62.00 89.50 8.00 89.50 LINE 124 | NP W1 125 | Xl 35.00 58.33 3.00 CIRCLE 126 | gsave grestore stroke 127 | NP W1 128 | Xl 62.00 27.17 8.00 27.17 LINE 129 | Xl 62.00 31.17 8.00 31.17 LINE 130 | NP W1 131 | Xl 62.00 -2.00 8.00 -2.00 LINE 132 | Xl 62.00 2.00 8.00 2.00 LINE 133 | 134 | showpage 135 | -------------------------------------------------------------------------------- /src/multiple.c: -------------------------------------------------------------------------------- 1 | /* A program to analize multiples */ 2 | 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include "nrutil.h" 9 | #include "rna.h" 10 | /* =====================================*/ 11 | 12 | extern char FILEOUT[BUF512]; 13 | 14 | void write_multiplets(char *pdbfile) 15 | 16 | { 17 | // Changed inpfile size from 100 to 600 18 | // Changed outfile size from 100 to 600 19 | char str[200], inpfile[600], outfile[600]; 20 | char **pair_name, **pair_type, **line, tmp[100]; 21 | 22 | long **work_num; 23 | long i, j, k, n1, n2, nl_tot = 0, nstr, nmul, npair; 24 | FILE *fout, *finp; 25 | /* 26 | sprintf(inpfile, "%s.out", pdbfile); 27 | sprintf(outfile, "%s_multiplet.out", pdbfile); 28 | */ 29 | sprintf(inpfile, "%s.out", FILEOUT); 30 | sprintf(outfile, "%s_multiplet.out", FILEOUT); 31 | 32 | fout = fopen(outfile, "w"); 33 | finp = fopen(inpfile, "r"); 34 | 35 | fprintf(fout, "\ninput: output: %s %s\n", inpfile, outfile); 36 | if (finp == NULL) 37 | { 38 | printf("Can not open the INPUT file\n"); 39 | return; 40 | } 41 | 42 | nl_tot = nline(inpfile); /* get the number of lines for memery alocation */ 43 | if (nl_tot < 2) 44 | { 45 | printf("There is too fewer base pairs\n"); 46 | return; 47 | } 48 | /* 49 | fprintf(output, "Number of BS-Pair = %d\nThe input file = %s\n",nl_tot,inpfile); 50 | printf("!Number of BS-Pair = %d\nThe input file = %s\n",nl_tot,inpfile); 51 | */ 52 | pair_name = cmatrix(0, nl_tot, 0, 3); /* assign memory */ 53 | pair_type = cmatrix(0, nl_tot, 0, 3); 54 | line = cmatrix(0, 10, 0, 200); 55 | work_num = lmatrix(0, nl_tot, 0, 2); 56 | /* get the base pair ready */ 57 | while (fgets(str, sizeof str, finp) != NULL) 58 | { 59 | if (strstr(str, "BEGIN_base-")) 60 | { 61 | npair = 0; 62 | while (fgets(str, sizeof str, finp) != NULL) 63 | { 64 | if (strstr(str, "END_base-")) 65 | break; 66 | 67 | strncpy(tmp, str, 9); 68 | tmp[9] = '\0'; 69 | token_str(tmp, "_", &nstr, line); 70 | work_num[npair][0] = atoi(line[0]); 71 | work_num[npair][1] = atoi(line[1]); 72 | strncpy(pair_name[npair], str + 20, 3); 73 | pair_name[npair][3] = '\0'; 74 | 75 | pair_type[npair][0] = str[33]; 76 | pair_type[npair][1] = str[35]; 77 | pair_type[npair][2] = str[37]; 78 | pair_type[npair][3] = '\0'; 79 | /* 80 | 81 | fprintf(fout, "%5d %5d %s %s\n", 82 | work_num[npair][0],work_num[npair][1], pair_name[npair], 83 | pair_type[npair]); 84 | */ 85 | 86 | npair++; 87 | } 88 | } 89 | if (strstr(str, "BEGIN_multiplets")) 90 | { /* for multiplets */ 91 | 92 | nmul = 0; 93 | 94 | while (fgets(str, sizeof str, finp) != NULL) 95 | { 96 | if (strstr(str, "END_multiplets")) 97 | break; 98 | 99 | /* 100 | strcpy(tmp,str); 101 | 102 | token_str(tmp, "+", &nstr, line); 103 | for(i=0; i upper H-bond length limits (ON..ON). 19 | 26.00 --> max. distance between paired base origins. 20 | 2.50 --> max. vertical distance between paired base origins. 21 | 65.00 --> max. angle between paired bases [0-90]. 22 | 5.40 --> min. distance between RN9/YN1 atoms. 23 | 8.00 --> max. distance criterion for helix break[0-12] 24 | ----------------------------------------------------------- 25 | BASE-PAIR INSTRUCTIONS: 26 | Column 1 is rnaview assigned base numbers n1_n2, start from 1. 27 | Column 2 & 3 are chain ID & residue number in input PDB file. 28 | Column 4 is for base pair. The left & right are the bases as 29 | identified by column 2 & 3 and 5 & 6. 30 | Column 5 & 6 are residue number & chain ID in input PDB file. 31 | Column 7 is for base pair annotation. The standard Watson-Crick 32 | (W.C.) pairs are annotated as -/- (AU,AT) or +/+ (GC). 33 | Other pairs are annotated as Leontis_Westhof Classification. 34 | The three edges: W(Watson-Crick); H(Hoogsteen); S(suger). 35 | e.g. W/H means the pair is edge of Watson-Crick & Hoogsteen. 36 | Column 8 is glycosidic bond orientation (either cis or trans). 37 | e.g. 'W/H cis' means the pair is interaction on Watson-Crick 38 | and Hoogsteen side, glycosidic bond orientation is 'cis'. 39 | Column 9 corresponds to Saenger Classification. 40 | 41 | Other columns: 42 | Syn sugar-base conformations are annotated as (syn). 43 | Stacked base pairs are annotated as (stack). 44 | Non-identified edges are annotated as (.) or (?) 45 | Tertiary interactions are marked by (!) in the line. 46 | Reference: 47 | Yang et al (2003) Nucleic Acids Research, Vol31,No13,p3450-3461. 48 | ----------------------------------------------------------- 49 | BEGIN_base-pair 50 | 1_72, A: 1 G-C 72 A: +/+ cis XIX 51 | 2_71, A: 2 C-G 71 A: +/+ cis XIX 52 | 3_70, A: 3 G-C 70 A: +/+ cis XIX 53 | 4_69, A: 4 G-U 69 A: W/W cis XXVIII 54 | 5_68, A: 5 A-U 68 A: -/- cis XX 55 | 6_67, A: 6 U-A 67 A: -/- cis XX 56 | 7_66, A: 7 U-A 66 A: -/- cis XX 57 | 8_14, A: 8 U-A 14 A: W/H tran XXIV 58 | 9_23, A: 9 A-A 23 A: H/H tran syn II 59 | 10_25, A: 10 g-C 25 A: +/+ cis XIX 60 | 11_24, A: 11 C-G 24 A: +/+ cis XIX 61 | 12_23, A: 12 U-A 23 A: -/- cis XX 62 | 13_22, A: 13 C-G 22 A: +/+ cis XIX 63 | 15_48, A: 15 G-C 48 A: W/W tran XXII 64 | 16_59, A: 16 u-U 59 A: S/W tran syn n/a 65 | 18_55, A: 18 G-P 55 A: W/S tran n/a 66 | 19_56, A: 19 G-C 56 A: +/+ cis syn XIX 67 | 22_46, A: 22 G-g 46 A: H/W tran syn VII 68 | 26_44, A: 26 g-A 44 A: W/W cis VIII 69 | 27_43, A: 27 C-G 43 A: +/+ cis XIX 70 | 28_42, A: 28 C-G 42 A: +/+ cis XIX 71 | 29_41, A: 29 A-U 41 A: -/- cis XX 72 | 30_31, A: 30 G-A 31 A: stacked 73 | 30_40, A: 30 G-c 40 A: +/+ cis XIX 74 | 31_39, A: 31 A-P 39 A: W/W cis n/a 75 | 49_65, A: 49 c-G 65 A: +/+ cis XIX 76 | 50_64, A: 50 U-A 64 A: -/- cis XX 77 | 51_63, A: 51 G-C 63 A: +/+ cis XIX 78 | 52_62, A: 52 U-A 62 A: -/- cis XX 79 | 53_61, A: 53 G-C 61 A: +/+ cis XIX 80 | 54_58, A: 54 u-a 58 A: W/H tran syn XXIV 81 | 69_70, A: 69 U-C 70 A: stacked 82 | 10_45, A: 10 g-G 45 A: H/S cis !1H(b_b) 83 | 32_38, A: 32 c-A 38 A: S/W cis !1H(b_b) 84 | 8_21, A: 8 U-A 21 A: S/W tran !(b_s) 85 | 9_11, A: 9 A-C 11 A: S/H cis syn !(b_s) 86 | 33_36, A: 33 U-A 36 A: S/H tran !b_(O1P,O2P) 87 | 60_61, A: 60 C-C 61 A: S/H cis !b_(O1P,O2P) 88 | 17_18, A: 17 u-G 18 A: S/. tran !(s_s) 89 | 33_35, A: 33 U-A 35 A: S/S tran !(s_s) 90 | 58_60, A: 58 a-C 60 A: S/S tran syn !(s_s) 91 | END_base-pair 92 | 93 | Summary of triplets and higher multiplets 94 | BEGIN_multiplets 95 | 9_12_23_| [1 3] A: 9 A + A: 12 U + A: 23 A 96 | 13_22_46_| [2 3] A: 13 C + A: 22 G + A: 46 g 97 | END_multiplets 98 | 99 | The total base pairs = 30 (from 76 bases) 100 | ------------------------------------------------ 101 | Standard WW--cis WW-tran HH--cis HH-tran SS--cis SS-tran 102 | 20 3 1 0 1 0 0 103 | WH--cis WH-tran WS--cis WS-tran HS--cis HS-tran 104 | 0 3 0 2 0 0 105 | ------------------------------------------------ 106 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/3P4J/assembly-1/3P4J-ASSEMBLY1.CIF.ps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 2 | %%Title: A postscript generated from a RNAML file. 3 | %%CreationDate: Mon Dec 11 10:28:38 2023 4 | %%Orientation: Portrait 5 | %%BoundingBox: 251 303 361 489 6 | 7 | /Times-Bold findfont 12 scalefont setfont 8 | 9 | 10 | /Times-Bold findfont 13 scalefont setfont %%set font for (A U G C T) 11 | 12 | %% stacking diagram widths for base-pairs 1 & 2 13 | /W1 {1 setlinewidth} bind def 14 | /W2 {1.5 setlinewidth} bind def 15 | /W3 {2 setlinewidth} bind def 16 | /W4 {3 setlinewidth} bind def 17 | 18 | %% minor and major grooves filling color saturation 19 | /MINOR_SAT 0.9 def 20 | /MAJOR_SAT 0.1 def 21 | /OTHER_SIDES {0 0 1 sethsbcolor fill} bind def 22 | 23 | %% defineing geometry shapes 24 | /NP {newpath} bind def 25 | /CIRCLE {0 360 arc closepath} bind def %% circle 26 | /TRIANGLE {moveto lineto lineto closepath} bind def %% triangle 27 | /SQUARE {moveto lineto lineto lineto closepath} bind def %% square 28 | /LINE {moveto lineto stroke} bind def %% line 29 | /DASHLINE { moveto lineto [2 4] 0 setdash stroke } bind def %% dashline 30 | /DOTLINE {1 0 1 setrgbcolor} bind def %% dotline 31 | /Dw {1 setlinewidth} bind def 32 | /FB {setgray fill} bind def 33 | /R6 {moveto lineto lineto lineto lineto lineto closepath} bind def 34 | /R9 {moveto lineto lineto lineto lineto lineto 35 | lineto lineto lineto closepath} bind def 36 | 37 | %% line drawing colors for ACGITU & others 38 | /Al {0.0000 1.00 1.00 sethsbcolor} bind def 39 | /Cl {0.1667 1.00 1.00 sethsbcolor} bind def 40 | /Gl {0.3333 1.00 1.00 sethsbcolor} bind def 41 | /Il {0.3333 1.00 0.57 sethsbcolor} bind def 42 | /Tl {0.6667 1.00 1.00 sethsbcolor} bind def 43 | /Ul {0.5000 1.00 1.00 sethsbcolor} bind def 44 | /Xl {0.0000 0.00 0.00 sethsbcolor} bind def 45 | /XX {0.2000 0.20 0.20 sethsbcolor} bind def 46 | /FILLBLACK {0.0000 0.00 0.00 sethsbcolor fill} bind def 47 | 48 | %% minor groove filling colors for ACGITU & others 49 | /Am {0.0000 MINOR_SAT 1.00 sethsbcolor fill} bind def 50 | /Cm {0.1667 MINOR_SAT 1.00 sethsbcolor fill} bind def 51 | /Gm {0.3333 MINOR_SAT 1.00 sethsbcolor fill} bind def 52 | /Im {0.3333 MINOR_SAT 0.57 sethsbcolor fill} bind def 53 | /Tm {0.6667 MINOR_SAT 1.00 sethsbcolor fill} bind def 54 | /Um {0.5000 MINOR_SAT 1.00 sethsbcolor fill} bind def 55 | /Xm {0.0000 0.00 MAJOR_SAT sethsbcolor fill} bind def 56 | 57 | %% major groove filling colors for ACGITU & others 58 | /AM {0.0000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 59 | /CM {0.1667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 60 | /GM {0.3333 MAJOR_SAT 1.00 sethsbcolor fill} bind def 61 | /IM {0.3333 MAJOR_SAT 0.57 sethsbcolor fill} bind def 62 | /TM {0.6667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 63 | /UM {0.5000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 64 | /XM {0.0000 0.00 MINOR_SAT sethsbcolor fill} bind def 65 | 66 | %% define line width, line join style & cap style (1 means round) 67 | 1 setlinewidth 1 setlinejoin 1 setlinecap 68 | 271 323 translate 69 | 70 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 71 | 70.00 141.83 moveto (C) center show 72 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 73 | gsave Al 70.00 112.67 moveto (G) center show grestore 74 | 70.00 83.50 moveto (C) center show 75 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 76 | gsave Al 70.00 54.33 moveto (G) center show grestore 77 | 70.00 25.17 moveto (C) center show 78 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 79 | gsave Al 70.00 -4.00 moveto (G) center show grestore 80 | 0.00 -4.00 moveto (C) center show 81 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 82 | gsave Al 0.00 25.17 moveto (G) center show grestore 83 | 0.00 54.33 moveto (C) center show 84 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 85 | gsave Al 0.00 83.50 moveto (G) center show grestore 86 | 0.00 112.67 moveto (C) center show 87 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 88 | gsave Al 0.00 141.83 moveto (G) center show grestore 89 | 0.005 setlinewidth 1 setlinejoin 1 setlinecap 90 | /Times findfont 11 scalefont setfont 91 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 92 | gsave Al 70.00 151.83 moveto (5') center show grestore 93 | /Times findfont 11 scalefont setfont 94 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 95 | gsave Al 70.00 -14.00 moveto (3') center show grestore 96 | Il 70.00 145.83 70.00 116.67 LINE 97 | Il 70.00 116.67 70.00 87.50 LINE 98 | Il 70.00 87.50 70.00 58.33 LINE 99 | Il 70.00 58.33 70.00 29.17 LINE 100 | Il 70.00 29.17 70.00 0.00 LINE 101 | /Times findfont 11 scalefont setfont 102 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 103 | gsave Al -0.00 -14.00 moveto (5') center show grestore 104 | /Times findfont 11 scalefont setfont 105 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 106 | gsave Al 0.00 151.83 moveto (3') center show grestore 107 | Tl 0.00 0.00 0.00 29.17 LINE 108 | Tl 0.00 29.17 0.00 58.33 LINE 109 | Tl 0.00 58.33 0.00 87.50 LINE 110 | Tl 0.00 87.50 0.00 116.67 LINE 111 | Tl 0.00 116.67 0.00 145.83 LINE 112 | /Times findfont 8 scalefont setfont 113 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 114 | gsave Tl -9.00 83.50 moveto (10) center show grestore 115 | gsave Tl 79.00 25.17 moveto (5) center show grestore 116 | NP W1 117 | Xl 62.00 143.83 8.00 143.83 LINE 118 | Xl 62.00 147.83 8.00 147.83 LINE 119 | NP W1 120 | Xl 62.00 114.67 8.00 114.67 LINE 121 | Xl 62.00 118.67 8.00 118.67 LINE 122 | NP W1 123 | Xl 62.00 85.50 8.00 85.50 LINE 124 | Xl 62.00 89.50 8.00 89.50 LINE 125 | NP W1 126 | Xl 62.00 56.33 8.00 56.33 LINE 127 | Xl 62.00 60.33 8.00 60.33 LINE 128 | NP W1 129 | Xl 62.00 27.17 8.00 27.17 LINE 130 | Xl 62.00 31.17 8.00 31.17 LINE 131 | NP W1 132 | Xl 62.00 -2.00 8.00 -2.00 LINE 133 | Xl 62.00 2.00 8.00 2.00 LINE 134 | 135 | showpage 136 | -------------------------------------------------------------------------------- /test/mmcif/x-ray/3P4J/assembly-1/3p4j-assembly1_gt.cif.ps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 2 | %%Title: A postscript generated from a RNAML file. 3 | %%CreationDate: Wed Nov 15 11:12:36 2023 4 | %%Orientation: Portrait 5 | %%BoundingBox: 251 303 361 489 6 | 7 | /Times-Bold findfont 12 scalefont setfont 8 | 9 | 10 | /Times-Bold findfont 13 scalefont setfont %%set font for (A U G C T) 11 | 12 | %% stacking diagram widths for base-pairs 1 & 2 13 | /W1 {1 setlinewidth} bind def 14 | /W2 {1.5 setlinewidth} bind def 15 | /W3 {2 setlinewidth} bind def 16 | /W4 {3 setlinewidth} bind def 17 | 18 | %% minor and major grooves filling color saturation 19 | /MINOR_SAT 0.9 def 20 | /MAJOR_SAT 0.1 def 21 | /OTHER_SIDES {0 0 1 sethsbcolor fill} bind def 22 | 23 | %% defineing geometry shapes 24 | /NP {newpath} bind def 25 | /CIRCLE {0 360 arc closepath} bind def %% circle 26 | /TRIANGLE {moveto lineto lineto closepath} bind def %% triangle 27 | /SQUARE {moveto lineto lineto lineto closepath} bind def %% square 28 | /LINE {moveto lineto stroke} bind def %% line 29 | /DASHLINE { moveto lineto [2 4] 0 setdash stroke } bind def %% dashline 30 | /DOTLINE {1 0 1 setrgbcolor} bind def %% dotline 31 | /Dw {1 setlinewidth} bind def 32 | /FB {setgray fill} bind def 33 | /R6 {moveto lineto lineto lineto lineto lineto closepath} bind def 34 | /R9 {moveto lineto lineto lineto lineto lineto 35 | lineto lineto lineto closepath} bind def 36 | 37 | %% line drawing colors for ACGITU & others 38 | /Al {0.0000 1.00 1.00 sethsbcolor} bind def 39 | /Cl {0.1667 1.00 1.00 sethsbcolor} bind def 40 | /Gl {0.3333 1.00 1.00 sethsbcolor} bind def 41 | /Il {0.3333 1.00 0.57 sethsbcolor} bind def 42 | /Tl {0.6667 1.00 1.00 sethsbcolor} bind def 43 | /Ul {0.5000 1.00 1.00 sethsbcolor} bind def 44 | /Xl {0.0000 0.00 0.00 sethsbcolor} bind def 45 | /XX {0.2000 0.20 0.20 sethsbcolor} bind def 46 | /FILLBLACK {0.0000 0.00 0.00 sethsbcolor fill} bind def 47 | 48 | %% minor groove filling colors for ACGITU & others 49 | /Am {0.0000 MINOR_SAT 1.00 sethsbcolor fill} bind def 50 | /Cm {0.1667 MINOR_SAT 1.00 sethsbcolor fill} bind def 51 | /Gm {0.3333 MINOR_SAT 1.00 sethsbcolor fill} bind def 52 | /Im {0.3333 MINOR_SAT 0.57 sethsbcolor fill} bind def 53 | /Tm {0.6667 MINOR_SAT 1.00 sethsbcolor fill} bind def 54 | /Um {0.5000 MINOR_SAT 1.00 sethsbcolor fill} bind def 55 | /Xm {0.0000 0.00 MAJOR_SAT sethsbcolor fill} bind def 56 | 57 | %% major groove filling colors for ACGITU & others 58 | /AM {0.0000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 59 | /CM {0.1667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 60 | /GM {0.3333 MAJOR_SAT 1.00 sethsbcolor fill} bind def 61 | /IM {0.3333 MAJOR_SAT 0.57 sethsbcolor fill} bind def 62 | /TM {0.6667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 63 | /UM {0.5000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 64 | /XM {0.0000 0.00 MINOR_SAT sethsbcolor fill} bind def 65 | 66 | %% define line width, line join style & cap style (1 means round) 67 | 1 setlinewidth 1 setlinejoin 1 setlinecap 68 | 271 323 translate 69 | 70 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 71 | 70.00 141.83 moveto (C) center show 72 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 73 | gsave Al 70.00 112.67 moveto (G) center show grestore 74 | 70.00 83.50 moveto (C) center show 75 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 76 | gsave Al 70.00 54.33 moveto (G) center show grestore 77 | 70.00 25.17 moveto (C) center show 78 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 79 | gsave Al 70.00 -4.00 moveto (G) center show grestore 80 | 0.00 -4.00 moveto (C) center show 81 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 82 | gsave Al 0.00 25.17 moveto (G) center show grestore 83 | 0.00 54.33 moveto (C) center show 84 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 85 | gsave Al 0.00 83.50 moveto (G) center show grestore 86 | 0.00 112.67 moveto (C) center show 87 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 88 | gsave Al 0.00 141.83 moveto (G) center show grestore 89 | 0.005 setlinewidth 1 setlinejoin 1 setlinecap 90 | /Times findfont 11 scalefont setfont 91 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 92 | gsave Al 70.00 151.83 moveto (5') center show grestore 93 | /Times findfont 11 scalefont setfont 94 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 95 | gsave Al 70.00 -14.00 moveto (3') center show grestore 96 | Il 70.00 145.83 70.00 116.67 LINE 97 | Il 70.00 116.67 70.00 87.50 LINE 98 | Il 70.00 87.50 70.00 58.33 LINE 99 | Il 70.00 58.33 70.00 29.17 LINE 100 | Il 70.00 29.17 70.00 0.00 LINE 101 | /Times findfont 11 scalefont setfont 102 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 103 | gsave Al -0.00 -14.00 moveto (5') center show grestore 104 | /Times findfont 11 scalefont setfont 105 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 106 | gsave Al 0.00 151.83 moveto (3') center show grestore 107 | Tl 0.00 0.00 0.00 29.17 LINE 108 | Tl 0.00 29.17 0.00 58.33 LINE 109 | Tl 0.00 58.33 0.00 87.50 LINE 110 | Tl 0.00 87.50 0.00 116.67 LINE 111 | Tl 0.00 116.67 0.00 145.83 LINE 112 | /Times findfont 8 scalefont setfont 113 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 114 | gsave Tl -9.00 83.50 moveto (10) center show grestore 115 | gsave Tl 79.00 25.17 moveto (5) center show grestore 116 | NP W1 117 | Xl 62.00 143.83 8.00 143.83 LINE 118 | Xl 62.00 147.83 8.00 147.83 LINE 119 | NP W1 120 | Xl 62.00 114.67 8.00 114.67 LINE 121 | Xl 62.00 118.67 8.00 118.67 LINE 122 | NP W1 123 | Xl 62.00 85.50 8.00 85.50 LINE 124 | Xl 62.00 89.50 8.00 89.50 LINE 125 | NP W1 126 | Xl 62.00 56.33 8.00 56.33 LINE 127 | Xl 62.00 60.33 8.00 60.33 LINE 128 | NP W1 129 | Xl 62.00 27.17 8.00 27.17 LINE 130 | Xl 62.00 31.17 8.00 31.17 LINE 131 | NP W1 132 | Xl 62.00 -2.00 8.00 -2.00 LINE 133 | Xl 62.00 2.00 8.00 2.00 LINE 134 | 135 | showpage 136 | -------------------------------------------------------------------------------- /test/mmcif/insertion_code/4ARC/4ARC.CIF_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | B G 5 -9999.99 -66.11 -140.81 101.14 -62.87 -90.03 173.84 18 | B G 6 45.18 -104.55 -116.79 94.12 -136.92 -68.33 178.33 19 | B A 7 -70.04 -176.50 67.81 136.84 -99.55 -58.24 -138.36 20 | B U 8 -68.10 -161.82 71.59 83.81 -108.99 -79.26 -162.58 21 | B G 9 -176.69 111.08 175.61 148.33 -111.23 -75.63 78.04 22 | B G 10 173.55 -151.49 39.19 76.97 -163.82 -65.21 178.08 23 | B U 11 -90.47 -173.39 74.80 79.70 -150.67 -74.63 -169.86 24 | B G 12 -73.74 179.30 64.50 81.06 -146.55 -64.98 -159.65 25 | B G 13 168.90 -162.17 163.73 98.16 -157.18 -65.22 -173.38 26 | B A 14 -67.15 -171.00 46.83 73.40 -151.29 -66.72 -168.05 27 | B A 15 -58.87 177.14 43.35 80.70 -176.13 155.23 -153.44 28 | B U 16 -137.75 176.43 51.84 125.25 -136.86 102.27 -118.50 29 | B C 17 -155.41 -98.31 155.54 88.45 -141.21 67.80 86.54 30 | B G 18 103.63 121.52 25.40 137.62 -138.16 -100.47 -121.16 31 | B G 19 -71.82 -163.26 39.35 141.49 -98.06 -174.54 -75.17 32 | B U 20 -71.26 -128.45 62.77 138.94 -103.65 -70.52 -120.04 33 | B A 20 -61.82 153.60 173.60 94.36 -141.40 -77.17 -163.59 34 | B G 21 -56.77 162.70 56.00 88.81 -149.59 143.43 -147.01 35 | B A 22 -74.83 144.12 49.00 84.32 -120.30 -58.60 -178.32 36 | B C 23 -70.21 170.51 53.70 75.36 -145.59 -62.46 -157.15 37 | B A 24 -82.08 169.80 74.50 75.14 -154.91 -71.98 -166.76 38 | B C 25 -56.20 172.77 48.25 82.75 -148.89 -71.70 -164.55 39 | B A 26 -60.36 169.80 48.39 80.22 -149.64 -91.28 -165.71 40 | B A 27 35.51 108.55 23.70 66.66 -150.45 -64.30 -156.37 41 | B G 28 -59.74 161.55 44.60 67.05 -156.31 -59.45 -147.46 42 | B G 29 -98.03 150.97 96.50 64.76 -144.13 -80.53 -172.32 43 | B G 30 -52.06 173.46 47.33 76.09 -144.91 -96.36 -168.54 44 | B A 31 -21.66 150.93 48.91 81.57 -9999.99 -9999.99 -163.64 45 | B U 39 -9999.99 162.75 36.01 91.17 -153.12 -104.21 -173.24 46 | B C 40 -38.02 153.64 42.03 83.76 -165.08 -75.71 -148.80 47 | B C 41 171.82 -151.04 158.51 69.37 -107.79 -41.61 174.59 48 | B C 42 -109.04 86.90 166.49 79.79 -122.74 -59.73 177.28 49 | B U 43 -60.27 -171.50 35.22 77.63 -167.66 -52.51 -155.46 50 | B C 44 -87.26 -176.18 61.72 82.58 -158.51 -138.08 -153.23 51 | B G 45 83.03 175.75 58.79 74.29 -148.77 -64.98 -176.84 52 | B G 46 -82.66 -168.97 59.12 87.07 -142.33 -79.85 -168.45 53 | B C 47 -65.89 172.90 44.08 76.08 -149.01 -70.35 -164.70 54 | B G 47 -66.42 172.34 56.03 77.45 -157.47 -63.38 -168.79 55 | B U 47 -77.82 -170.91 64.45 80.86 -173.26 -92.30 -163.48 56 | B U 47 -151.25 136.36 62.18 120.10 -88.00 -68.21 -135.28 57 | B C 47 -87.59 -148.80 70.67 154.48 -99.68 81.74 -118.35 58 | B G 47 55.80 -171.79 -179.47 85.54 -154.41 -71.69 63.17 59 | B C 47 143.74 -116.34 -179.94 77.73 -149.35 -70.51 -170.32 60 | B G 47 -58.69 -179.94 42.81 87.15 -150.48 -82.64 -162.84 61 | B C 47 -49.63 155.46 49.97 77.78 -144.16 -67.57 -166.03 62 | B U 47 -67.43 164.19 62.90 76.76 -144.74 -76.18 -167.66 63 | B G 47 -68.36 168.29 64.40 83.61 -155.60 -91.60 -155.67 64 | B U 48 -58.72 -146.85 65.97 139.24 -156.71 85.35 -134.49 65 | B G 49 61.81 154.92 30.87 86.36 -166.07 -91.73 -175.67 66 | B C 50 -172.97 -121.15 130.79 74.73 -128.88 -76.30 -173.39 67 | B G 51 -65.27 168.78 61.20 72.52 -149.57 -60.87 -164.67 68 | B G 52 -112.62 164.92 103.02 67.33 -149.58 -69.90 -167.00 69 | B G 53 -62.27 178.72 59.84 76.30 -156.24 -63.86 -167.90 70 | B U 54 -66.88 -177.58 53.55 78.50 -134.96 -63.81 -146.30 71 | B U 55 -76.40 -178.56 59.78 75.38 -154.67 -66.00 -136.56 72 | B C 56 164.72 172.23 53.27 79.00 -137.67 -70.17 -171.64 73 | B A 57 -50.97 170.49 45.12 79.68 -152.60 -66.19 -160.66 74 | B A 58 -66.37 -141.00 71.83 148.19 -83.20 -179.19 -84.71 75 | B G 59 83.07 -166.86 63.52 90.34 -145.70 -56.35 -164.99 76 | B U 60 -55.39 166.12 58.50 130.23 -96.32 -71.61 -125.55 77 | B C 61 -89.31 -178.16 45.12 76.86 -166.71 -59.32 -168.98 78 | B C 62 -86.43 -154.59 56.76 80.96 -161.33 -64.11 -146.24 79 | B C 63 -77.60 -177.11 56.38 76.41 -153.01 -69.34 -148.72 80 | B G 64 -77.72 168.81 66.28 74.86 -148.71 -76.29 -164.23 81 | B C 65 -61.86 164.43 67.38 83.05 -144.27 -86.91 -166.66 82 | B U 66 -51.29 169.08 37.95 73.22 -148.82 -77.54 -163.23 83 | B C 67 -47.04 162.02 50.25 79.09 -171.97 -87.76 -156.90 84 | B C 68 -141.25 -139.23 112.13 83.77 -9999.99 -9999.99 -160.40 85 | B C 74 -9999.99 -176.12 -127.81 155.44 -87.58 -63.99 -107.84 86 | B C 75 -53.94 -168.35 37.43 152.64 -105.23 62.89 -116.14 87 | B A 76 -117.41 178.52 61.18 85.90 -9999.99 -9999.99 -80.29 88 | -------------------------------------------------------------------------------- /test/pdb/tr0001/tr0001.pdb_new_torsion.out: -------------------------------------------------------------------------------- 1 | The backbone torsional angle for nucleic acid 2 | 3 | 4 | Note: alpha: O3'(i-1)-P-O5'-C5' 5 | beta: P-O5'-C5'-C4' 6 | gamma: O5'-C5'-C4'-C3' 7 | delta: C5'-C4'-C3'-O3' 8 | epsilon: C4'-C3'-O3'-P(i+1) 9 | zeta: C3'-O3'-P(i+1)-O5'(i+1) 10 | 11 | chi for pyrimidines(Y): O4'-C1'-N1-C2 12 | chi for purines(R): O4'-C1'-N9-C4 13 | 14 | (The number -9999.99 means that the angle can not be calculated) 15 | 16 | Ch Res Num alpha beta gamma delta epsilon zeta chi 17 | A G 1 -9999.99 -128.05 67.79 82.86 -155.57 -68.62 -167.79 18 | A C 2 -67.45 -178.39 53.83 83.38 -145.15 -76.79 -163.82 19 | A G 3 -74.46 169.69 59.48 80.73 -148.28 -80.03 -161.89 20 | A G 4 -64.44 162.19 60.72 82.16 -157.37 -68.66 -168.67 21 | A A 5 -74.75 -176.47 53.36 84.94 -137.46 -81.72 -162.86 22 | A U 6 -48.82 157.57 55.31 81.26 -151.00 -77.01 -160.03 23 | A U 7 -59.50 -178.72 62.51 137.26 -105.93 -51.96 -133.08 24 | A U 8 -83.82 -145.65 55.42 78.64 -142.80 -118.58 -161.53 25 | A A 9 -69.71 -141.75 52.26 147.77 -106.21 -77.26 -70.50 26 | A 2MG 10 177.81 147.20 60.07 89.32 -126.20 -88.74 169.60 27 | A C 11 -56.14 167.91 48.16 87.21 -150.47 -69.89 -160.91 28 | A U 12 -67.80 172.87 51.82 80.66 -158.53 -65.17 -158.25 29 | A C 13 166.57 -169.89 178.57 82.51 -153.13 -97.39 -168.33 30 | A A 14 83.35 -158.28 -114.59 92.04 -125.52 -57.25 -170.74 31 | A G 15 -55.06 162.46 51.89 79.83 -136.30 -143.95 -164.51 32 | A H2U 16 -6.13 91.18 76.84 96.83 -61.80 -131.18 -85.76 33 | A H2U 17 27.79 107.74 174.11 94.75 177.96 76.19 -142.49 34 | A G 18 45.38 -159.44 59.04 150.60 -95.23 -179.09 -99.54 35 | A G 19 -71.42 -178.86 53.82 153.80 -91.62 -83.73 -80.33 36 | A G 20 -81.33 -150.74 47.76 89.94 -122.27 -54.10 177.78 37 | A A 21 -75.55 148.57 -176.60 78.23 -168.94 -75.55 -160.21 38 | A G 22 158.77 153.49 179.25 82.00 -144.97 -80.44 -175.51 39 | A A 23 -53.31 174.76 52.48 82.30 -155.35 -66.44 -158.03 40 | A G 24 -68.77 178.23 46.82 83.60 -144.25 -72.82 -160.68 41 | A C 25 -65.09 168.87 53.88 83.25 -145.09 -68.36 -160.26 42 | A M2G 26 -53.81 170.84 47.75 85.97 -136.28 -76.88 -163.38 43 | A C 27 -52.97 166.85 43.62 83.43 -148.54 -73.43 -168.19 44 | A C 28 -72.44 178.33 49.31 80.11 -152.10 -66.99 -160.62 45 | A A 29 -66.55 173.96 55.56 81.36 -155.52 -78.26 -165.87 46 | A G 30 -53.97 165.93 56.93 83.56 -144.72 -62.27 -171.75 47 | A A 31 -69.95 177.77 52.31 83.75 -136.98 -75.53 -156.70 48 | A OMC 32 -52.71 161.38 49.25 80.10 -145.94 -71.17 -149.86 49 | A U 33 -67.69 -177.01 47.00 82.12 -148.00 -53.69 -148.17 50 | A OMG 34 171.11 148.15 52.55 83.45 -132.52 -71.83 -171.23 51 | A A 35 -47.66 163.71 40.21 80.88 -143.67 -59.50 -154.39 52 | A A 36 -52.43 165.69 51.26 72.22 -160.37 -85.21 -158.40 53 | A YG 37 -57.54 162.97 47.83 81.13 -148.15 -67.05 -168.84 54 | A A 38 -61.81 -179.98 46.93 82.46 -136.77 -76.36 -169.36 55 | A PSU 39 -47.73 160.38 53.32 79.26 -140.09 -68.55 -9999.99 56 | A 5MC 40 -67.37 172.00 56.20 83.21 -154.22 -74.90 -162.55 57 | A U 41 -68.23 -179.37 52.44 78.87 -137.30 -84.71 -169.03 58 | A G 42 -47.87 158.67 55.60 79.76 -160.33 -70.30 -169.01 59 | A G 43 -67.01 -178.30 55.60 81.59 -154.87 -76.39 -160.25 60 | A A 44 -59.69 162.13 60.04 85.31 -142.83 -57.17 -159.43 61 | A G 45 -71.93 -176.93 50.98 87.55 -135.10 -78.65 -149.30 62 | A 7MG 46 -56.77 -146.51 48.40 141.60 -102.65 -137.86 -65.79 63 | A U 47 62.40 -164.01 44.36 146.14 -93.66 -78.04 -111.99 64 | A C 48 -73.48 -174.26 161.50 145.55 -143.54 75.59 -140.13 65 | A 5MC 49 50.69 168.49 42.17 84.34 -145.03 -82.06 -173.64 66 | A U 50 -51.65 177.22 42.08 80.39 -150.60 -67.79 -165.26 67 | A G 51 -63.91 176.81 52.81 79.43 -150.41 -71.32 -156.61 68 | A U 52 -64.69 173.64 48.54 80.29 -156.46 -69.42 -164.05 69 | A G 53 -56.87 171.46 56.15 83.91 -159.39 -64.87 -169.24 70 | A 5MU 54 -79.67 -172.77 57.67 77.65 -128.58 -70.75 -161.49 71 | A PSU 55 -49.74 168.80 44.05 76.60 -140.78 -69.88 -9999.99 72 | A C 56 166.42 171.80 53.31 83.40 -132.71 -70.65 -161.46 73 | A G 57 -65.66 167.07 57.46 81.66 -145.23 -67.60 -159.31 74 | A 1MA 58 -60.81 -146.10 71.76 156.67 -78.28 -169.33 -86.32 75 | A U 59 72.62 -158.84 63.68 84.57 -148.82 -53.72 -165.60 76 | A C 60 -72.16 179.45 66.02 148.30 -97.07 -66.36 -117.76 77 | A C 61 -84.29 179.83 38.24 82.96 -152.34 -74.50 -166.67 78 | A A 62 -60.07 179.64 46.85 80.53 -145.62 -74.14 -158.65 79 | A C 63 -62.02 167.26 50.95 80.72 -152.33 -70.72 -152.59 80 | A A 64 -66.85 179.98 44.05 75.81 -147.48 -76.52 -161.80 81 | A G 65 -43.96 164.23 49.88 79.75 -152.03 -73.33 -172.78 82 | A A 66 -57.89 178.54 52.05 81.72 -150.97 -73.55 -164.91 83 | A A 67 -61.95 164.10 54.24 83.20 -152.19 -78.34 -162.83 84 | A U 68 -59.85 175.34 47.28 82.19 -152.94 -65.39 -160.13 85 | A U 69 -63.75 168.08 55.09 79.12 -155.37 -85.64 -161.44 86 | A C 70 -61.65 164.64 53.12 78.97 -158.52 -64.50 -151.99 87 | A G 71 -78.36 173.62 60.31 80.28 -149.55 -68.41 -162.82 88 | A C 72 -73.18 176.24 62.08 82.99 -152.34 -67.88 -161.61 89 | A A 73 -63.30 177.66 50.40 81.56 -148.16 -66.15 -167.44 90 | A C 74 -66.88 -174.93 50.69 85.87 -145.00 -58.84 -153.07 91 | A C 75 -52.33 175.67 42.30 85.56 -131.94 163.90 -151.67 92 | A A 76 -70.95 130.18 164.64 160.91 -9999.99 -9999.99 138.47 93 | -------------------------------------------------------------------------------- /test/pdb/pdb1nvy/pdb1nvy.pdb.ps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 2 | %%Title: A postscript generated from a RNAML file. 3 | %%CreationDate: Mon Dec 11 10:28:05 2023 4 | %%Orientation: Portrait 5 | %%BoundingBox: 251 268 361 524 6 | 7 | /Times-Bold findfont 12 scalefont setfont 8 | 9 | 10 | /Times-Bold findfont 13 scalefont setfont %%set font for (A U G C T) 11 | 12 | %% stacking diagram widths for base-pairs 1 & 2 13 | /W1 {1 setlinewidth} bind def 14 | /W2 {1.5 setlinewidth} bind def 15 | /W3 {2 setlinewidth} bind def 16 | /W4 {3 setlinewidth} bind def 17 | 18 | %% minor and major grooves filling color saturation 19 | /MINOR_SAT 0.9 def 20 | /MAJOR_SAT 0.1 def 21 | /OTHER_SIDES {0 0 1 sethsbcolor fill} bind def 22 | 23 | %% defineing geometry shapes 24 | /NP {newpath} bind def 25 | /CIRCLE {0 360 arc closepath} bind def %% circle 26 | /TRIANGLE {moveto lineto lineto closepath} bind def %% triangle 27 | /SQUARE {moveto lineto lineto lineto closepath} bind def %% square 28 | /LINE {moveto lineto stroke} bind def %% line 29 | /DASHLINE { moveto lineto [2 4] 0 setdash stroke } bind def %% dashline 30 | /DOTLINE {1 0 1 setrgbcolor} bind def %% dotline 31 | /Dw {1 setlinewidth} bind def 32 | /FB {setgray fill} bind def 33 | /R6 {moveto lineto lineto lineto lineto lineto closepath} bind def 34 | /R9 {moveto lineto lineto lineto lineto lineto 35 | lineto lineto lineto closepath} bind def 36 | 37 | %% line drawing colors for ACGITU & others 38 | /Al {0.0000 1.00 1.00 sethsbcolor} bind def 39 | /Cl {0.1667 1.00 1.00 sethsbcolor} bind def 40 | /Gl {0.3333 1.00 1.00 sethsbcolor} bind def 41 | /Il {0.3333 1.00 0.57 sethsbcolor} bind def 42 | /Tl {0.6667 1.00 1.00 sethsbcolor} bind def 43 | /Ul {0.5000 1.00 1.00 sethsbcolor} bind def 44 | /Xl {0.0000 0.00 0.00 sethsbcolor} bind def 45 | /XX {0.2000 0.20 0.20 sethsbcolor} bind def 46 | /FILLBLACK {0.0000 0.00 0.00 sethsbcolor fill} bind def 47 | 48 | %% minor groove filling colors for ACGITU & others 49 | /Am {0.0000 MINOR_SAT 1.00 sethsbcolor fill} bind def 50 | /Cm {0.1667 MINOR_SAT 1.00 sethsbcolor fill} bind def 51 | /Gm {0.3333 MINOR_SAT 1.00 sethsbcolor fill} bind def 52 | /Im {0.3333 MINOR_SAT 0.57 sethsbcolor fill} bind def 53 | /Tm {0.6667 MINOR_SAT 1.00 sethsbcolor fill} bind def 54 | /Um {0.5000 MINOR_SAT 1.00 sethsbcolor fill} bind def 55 | /Xm {0.0000 0.00 MAJOR_SAT sethsbcolor fill} bind def 56 | 57 | %% major groove filling colors for ACGITU & others 58 | /AM {0.0000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 59 | /CM {0.1667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 60 | /GM {0.3333 MAJOR_SAT 1.00 sethsbcolor fill} bind def 61 | /IM {0.3333 MAJOR_SAT 0.57 sethsbcolor fill} bind def 62 | /TM {0.6667 MAJOR_SAT 1.00 sethsbcolor fill} bind def 63 | /UM {0.5000 MAJOR_SAT 1.00 sethsbcolor fill} bind def 64 | /XM {0.0000 0.00 MINOR_SAT sethsbcolor fill} bind def 65 | 66 | %% define line width, line join style & cap style (1 means round) 67 | 1 setlinewidth 1 setlinejoin 1 setlinecap 68 | 271 288 translate 69 | 70 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 71 | 70.00 211.83 moveto (T) center show 72 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 73 | gsave Al 70.00 182.67 moveto (C) center show grestore 74 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 75 | gsave Al 70.00 153.50 moveto (G) center show grestore 76 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 77 | gsave Al 70.00 124.33 moveto (G) center show grestore 78 | 70.00 95.17 moveto (T) center show 79 | 70.00 66.00 moveto (A) center show 80 | 70.00 48.50 moveto (C) center show 81 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 82 | gsave Al 70.00 31.00 moveto (C) center show grestore 83 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 84 | gsave Al 70.00 13.50 moveto (G) center show grestore 85 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 86 | gsave Al 70.00 -4.00 moveto (A) center show grestore 87 | 0.00 -4.00 moveto (T) center show 88 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 89 | gsave Al 0.00 13.50 moveto (C) center show grestore 90 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 91 | gsave Al 0.00 31.00 moveto (G) center show grestore 92 | 0.00 48.50 moveto (G) center show 93 | 0.00 66.00 moveto (T) center show 94 | 0.00 95.17 moveto (A) center show 95 | 0.00 124.33 moveto (C) center show 96 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 97 | gsave Al 0.00 153.50 moveto (C) center show grestore 98 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 99 | gsave Al 0.00 182.67 moveto (G) center show grestore 100 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 101 | gsave Al 0.00 211.83 moveto (A) center show grestore 102 | 0.005 setlinewidth 1 setlinejoin 1 setlinecap 103 | /Times findfont 11 scalefont setfont 104 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 105 | gsave Al 70.00 221.83 moveto (5') center show grestore 106 | /Times findfont 11 scalefont setfont 107 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 108 | gsave Al 70.00 -14.00 moveto (3') center show grestore 109 | Il 70.00 215.83 70.00 186.67 LINE 110 | Il 70.00 186.67 70.00 157.50 LINE 111 | Il 70.00 157.50 70.00 128.33 LINE 112 | Il 70.00 128.33 70.00 99.17 LINE 113 | Il 70.00 99.17 70.00 70.00 LINE 114 | Il 70.00 70.00 70.00 52.50 LINE 115 | Il 70.00 52.50 70.00 35.00 LINE 116 | Il 70.00 35.00 70.00 17.50 LINE 117 | Il 70.00 17.50 70.00 0.00 LINE 118 | /Times findfont 11 scalefont setfont 119 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 120 | gsave Al -0.00 -14.00 moveto (5') center show grestore 121 | /Times findfont 11 scalefont setfont 122 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 123 | gsave Al 0.00 221.83 moveto (3') center show grestore 124 | Tl 0.00 0.00 0.00 17.50 LINE 125 | Tl 0.00 17.50 0.00 35.00 LINE 126 | Tl 0.00 35.00 0.00 52.50 LINE 127 | Tl 0.00 52.50 0.00 70.00 LINE 128 | Tl 0.00 70.00 0.00 99.17 LINE 129 | Tl 0.00 99.17 0.00 128.33 LINE 130 | Tl 0.00 128.33 0.00 157.50 LINE 131 | Tl 0.00 157.50 0.00 186.67 LINE 132 | Tl 0.00 186.67 0.00 215.83 LINE 133 | /Times findfont 8 scalefont setfont 134 | /center{dup stringwidth pop 2 div neg 0 rmoveto } bind def 135 | gsave Tl -11.00 211.83 moveto (10) center show grestore 136 | gsave Tl 79.00 95.17 moveto (5) center show grestore 137 | gsave Tl -11.00 66.00 moveto (5) center show grestore 138 | gsave Tl 72.91 -15.64 moveto (10) center show grestore 139 | Al W2 70.00 58.50 70.00 64.00 gsave DASHLINE grestore 140 | NP W1 141 | Xl 62.00 215.83 8.00 215.83 LINE 142 | NP W1 143 | Xl 62.00 184.67 8.00 184.67 LINE 144 | Xl 62.00 188.67 8.00 188.67 LINE 145 | NP W1 146 | Xl 62.00 155.50 8.00 155.50 LINE 147 | Xl 62.00 159.50 8.00 159.50 LINE 148 | NP W1 149 | Xl 62.00 126.33 8.00 126.33 LINE 150 | Xl 62.00 130.33 8.00 130.33 LINE 151 | NP W1 152 | Xl 62.00 99.17 8.00 99.17 LINE 153 | NP W1 154 | Xl 62.00 70.00 8.00 70.00 LINE 155 | 156 | showpage 157 | --------------------------------------------------------------------------------