BioSeq, FRBioSeq, BioData, BioDur, AANote
BioNames, Antisense, Cdn2AA, AAMolWieght, AAMolVol, AAGroups
The BioSeq (Bio Sequencer), which sequences DNA codons and protein amino acids that have been prepared from text files of the DNA and/or protein sequences that are available by the thousands as free downloads on the Internet, and prepared by the Bio Editor. ArtWonk ships with several example DNA and protein sequences already prepared, and a library of additional source files in the Data\Biodata folder.
Because each of the 20 amino acids that make up a sequence step of a protein is in turn made up of a mini sequence of three of the 4 DNA bases (A, C, T, or G) - like a small gear of 3 cogs within a larger one of 20 cogs - the BioSeq sequencer must step at two different rates, a fast rate for the DNA codons, and a slower rate for the amino acids. This can be difficult to synchronize, especially if more than one BioSeq is running simultaneously. In order to manage this dual time sync, the BioSeq has its own internal clock. You need only supply the amino acid step rate into to the BioSeq Dur (duration) input, and the faster DNA rate is automatically generated and synchronized.
Like the regular Clock modules, the clocks within the BioSeq may be of two types, either Auto Sync or Free Run. Auto Sync is a hard clock sync that is guaranteed to keep in sync with all other clocks that use Auto Sync; Free Run only syncs up at Reset. In most cases, the BioSeq module is preferable to the FRBioSeq because you can change clock speed without ever loosing synchronization with other running clocks. But when you control the clock duration note by note, such as by using sequencer values to control the BioSeq module's step rate, its Auto Sync sometimes will not "let go" fast enough, and the timing steps can become different from what you expected. In this case, the FRBioSeq is better. It will deliver accurate timing steps in a feedback loop where the FRBioSeq module steps the sequencer module which in turn supplies duration values for the same FRBioSeq module. Except for the different clock sync styles, the BioSeq and FRBioSeq are identical.
Outputs:
Seq: Text output is name of the sequence selected by the Seq# input.
DNA: Text output of DNA: C CCC. The single character is the current codon step, the three letters are the 3 codon bases that make up the amino acid.
AA: Text output of amino acid A ALA. The single character is the single letter name of the amino acid of the current sequence step; the 3 letters is the equivalent 3-letter name.
DNA#: DNA base value: 0=G, 1=A, 2=C, 3=T. Use this output to access the faster, DNA codon base sequence. A Switch module is ideal for converting the 0-3 output to meaningful note values.
AA#: Amino acid value of the current sequence step. 0-19=amino acid number; 20=not an amino acid. Use the AANote module to convert this number into meaningful note values. The values for the amino acids, in Kyte solubility order, are:
I = 0 = ILE Isoleucine (nonpolar) V = 1 = VAL Valine (nonpolar)
L = 2 = LEU Leucine (nonpolar)
F = 3 = PHE Phenylalanine (nonpolar) C = 4 = CYS Cysteine (polar) M = 5 = MET Methionine (nonpolar)
A = 6 = ALA Alanine (nonpolar) G = 7 = GLY Glycine (nonpolar)
T = 8 = THR Threonine (polar) S = 9 = SER Serine (polar)
W = 10 = TRP Tryptophan (nonpolar) Y = 11 = TYR Tyrosine (polar) P = 12 = PRO Proline (nonpolar) H = 13 = HIS Histidine (basic) N = 14 = ASN Asparagine (polar) Q = 15 = GLN Glutamine (polar) D = 16 = ASP Aspartate (acidic) E = 17 = GLU Glutamate (acidic) K = 18 = LYS Lysine (basic) R = 19 = ARG Arginine (basic) ? = 20 = ZOT End Marker or invalid
Set4: Groups amino acids according to their molecular scholastics. 0=IFVLWAGMP: nonpolar, 1=HKR: basic, 2=CYTSNQ:polar, 3=DE: acidic. A good way to use these values is to use them as transpose values (for example, by using the Switch module), to give the DNA# values a greater range.
Set8: 0=ILVMF, 1 =C, 2=GP, 3=AST, 4=YW, 5=NQ, 6=DE, 7=HKR
Kyte8: 0=IVL, 1 =FC, 2=MA, 3=G, 4=TSW, 5=YP, 6=HNQDE, 7=KR
MVo: Molecular Volume ordering of the 20 amino acids.
MWo: Molecular Weight ordering of the 20 amino acids.
MVs: Molecular Volume of each amino acid, scaled 0-127.
sMW: Mol Weight Scaled of each amino acid, scaled 0-127.
Start: True (1) at sequence start.
End: True (1) at sequence end.
Flags: Source bit flags: Bit0:<>, 1:(), 2:[], 3:{}, 4:!|, 5:@#, 6:$%. These flags are set with the Bio Editor, and are typically used to mark structures in the bio code such as helixes, turns, sheets, transmembrane domains, etc. Use the TestBit module to isolate the bit flags.
dAdr: Current DNA address within protein. This is the step address of the faster, DNA codon sequencer, it sequences from 0 to 3 (0 to 4 if Step4 is NZ), for each amino acid step.
aAdr: Current amino acid address. This is the step address of the slower, amino acid sequencer. It sequences from 0 to the end address (or from the end address to 0 if Anti is NZ).
End: Amino acid sequence end address, the last address in the sequence.
Inputs:
Dur: AA step duration. This is the same as a Clock or FRClock duration, with two exceptions. First, since the DNA codon sequencer runs at 3 (or 4 when the Step4 input is NZ) times the amino acid sequencer, minimum duration values are 6 (or 8) ticks. Maximum duration values are 192 for the BioSeq and unlimited for the FRBioSeq. Second, the actual Durations used will be adjusted in order to maintain sync between the fast DNA clock and the slower AA clock. Duration values actually used will be evenly divisible by 3 (by 4 when Step4 is NZ).
Seq#: Select protein sequence 0-23. These are the Bio Editor translations of the original protein or DNA source files. Changing the Seq# causes the sequence name, which is the original sequence source file name processed by Bio Editor, to display at the top, Seq output; and the End address will reflect the number of steps in the new sequence. Only about the first 10 sequence slots are used in the file that ship with ArtWonk.
Sort: 0 for Kyte scale; 1 for amino acids in sorted according to frequency of occurrence in sequence. The Kyte scale orders amino acids by solubility, so it is consistent for any amino acid or DNA sequence. However the sorted scale remaps the amino acid numbers so that the most frequently occurring value is given the first table position, the second most frequently occurring value the second position, and so on - so it works musically with a pitch table that is weighted for more harmonic intervals to be at the start of the table. Thus, using the Sort mode gives each protein a different amino acid mapping, which is not very useful for scientific work but often is useful for musical composition.
Step4: NZ to step 4 DNA bases per amino acid (3rd base repeated). While amino acids are always 3 DNA bases, musically this can be restrictive. So optionally the BioSeq can be set to step 4 bases per amino acid, repeating the 3rd base on the 4th beat.
Anti: NZ steps backward and reverses the codon, giving its antisense. This is similar to reverse playback on other sequencers, except the DNA codon is spelled reciprocally (A and T are switched, as are G and C), which in turn translates to a different amino acid sequence.
Hold: NZ to hold the sequence without resetting.
Reset: NZ to reset to start of sequence (or to end if antisense).
Access the same bio sequence data as the BioSeq module, but only provides the basic data values, and is randomly addressed rather than stepped by a clock.
Outputs:
Seq: Text output is name of the sequence selected by the Seq# input.
Max: Maximum index value; sequence end address.
Raw: Raw Bio Sequence Value 0-63.
DNA1: DNA Base in 1st position: 0=G, 1=A, 2=C, 3=T.
DNA2: DNA Base in 2nd position: 0=G, 1=A, 2=C, 3=T.
DNA3: DNA Base in 3rd position: 0=G, 1=A, 2=C, 3=T.
AA#: Amino acid value of the current sequence step. 0-19=amino acid number; 20=not an amino acid. Use the AANote module to convert this number into meaningful note values. The values for the amino acids, in Kyte solubility order, are:
I = 0 = ILE Isoleucine (nonpolar) V = 1 = VAL Valine (nonpolar)
L = 2 = LEU Leucine (nonpolar)
F = 3 = PHE Phenylalanine (nonpolar) C = 4 = CYS Cysteine (polar) M = 5 = MET Methionine (nonpolar)
A = 6 = ALA Alanine (nonpolar) G = 7 = GLY Glycine (nonpolar)
T = 8 = THR Threonine (polar) S = 9 = SER Serine (polar)
W = 10 = TRP Tryptophan (nonpolar) Y = 11 = TYR Tyrosine (polar) P = 12 = PRO Proline (nonpolar) H = 13 = HIS Histidine (basic) N = 14 = ASN Asparagine (polar) Q = 15 = GLN Glutamine (polar) D = 16 = ASP Aspartate (acidic) E = 17 = GLU Glutamate (acidic) K = 18 = LYS Lysine (basic) R = 19 = ARG Arginine (basic) ? = 20 = ZOT End Marker or invalid
Sort: Amino Acids sorted by frequency of occurrence in sequence. The sorted scale remaps the amino acid numbers so that the most frequently occurring value is given the first table position, the second most frequently occurring value the second position, and so on - so it works musically with a pitch table that is weighted for more harmonic intervals to be at the start of the table. Thus, using the Sort output gives each protein a different amino acid mapping, which is not very useful for scientific work but often is useful for musical composition.
Flags: Source bit flags: Bit0:<>, 1:(), 2:[], 3:{}, 4:!|, 5:@#, 6:$%. These flags are set with the Bio Editor, and are typically used to mark structures in the bio code such as helixes, turns, sheets, transmembrane domains, etc. Use the TestBit module or BioFlags function to isolate the bit flags.
Inputs:
Addr: Step address within sequence (0-Max).
Seq#: Select protein sequence 0-23). These are the Bio Editor translations of the original protein or DNA source files. Changing the Seq# causes the sequence name, which is the original sequence source file name processed by Bio Editor, to display at the top, Seq output; and the End address will reflect the number of steps in the new sequence. Only about the first 10 sequence slots are used in the file that ship with ArtWonk.
Maintains consistent relative clock durations for sequencing DNA codon bases and the corresponding amino acids. Since there are 3 bases for each amino acid (for example AGT--> Serine), the clock speed for the codon bases should be exactly 3 times, or 1/3 the Dur input value, as the amino acid clock. This module does the arithmetic for you. Feed the aDur input the amino acid duration you want, and it will send the nearest match that correctly aligns the amino acid and DNA Dur output values, which typically would feed Dur inputs to Clock modules.
Outputs:
aDur: Duration output to control the amino acid clock.
dDur: Duration output to control the DNA clock.
Inputs:
aDur: Amino acid duration wanted. This will be quantized so the dDur and aDur outputs syncronize.
Step4: NZ causes the aDur to be 4 beats per dDur instead of 3. Scientifically inaccurate but musically useful. .
This module maps the 20 amino acid values to meaningful MIDI note values. There are 32 tables available, numbered 0 to 31. Each table can easily be set to the note value mappings desired with the Properties dialog, by clicking on the module's upper right Property button.
Outputs:
Table: Text output, name of current table.
Note: Note value of translated amino acid.
Inputs:
Tbl#: Table number (0-31) to use.
AA#: Amino Acid number to translate. Plug the BioSeq AA# output into this input.
Transp: Added to translated note value.
This dialog has 21 sliders, one for each of the 20 amino acids plus one for the 21st nonsense (or Stop) codon catchall, called "ZOT." Select a table to modify with the 1st drop down selector at the bottom of the dialog; change the table name to anything you like with the Name button. You can use the buttons labeled "Major," "Minor," and so on to force a scale onto the sliders; use the Revert button to revert to the last stored values.
ArtWonk automatically loads the table named "default.bpx" in the ArtWonk Data\Biodata\ folder; you can load and save the table under any other name and folder with the Load and Save buttons. See the the main menu Options/Patch Options for more information of table file placement and load search order.
The BioSeq module uses two different Amino Acid numbering systems. The first is the more or less standard Kyte solubility order, and this is always the same for any protein. The second (active when the BioSeq Sort input is NZ) maps the amino acids according to the frequency of occurrence. This will be different for each protein sequence. To view the amino acids in sorted order, click on the "Sorted" check box. This will rearrange the sliders and the Amino Acid labels to the sorted order. Select the protein file you are interested in viewing from the drop box just to the right of the check box to align the labels according to the protein: the amino acid labels along the top will line up left to right according to the sort order. This alignment of labels according to protein is informational only, it does not change the slider mappings because the mappings are 0-20 according to the sort order, which was preset by the Bio Editor when it created the protein data files. Thus, while the amino acids represented by the sliders will change according to the protein being played, the same mapping scale will work for any protein file.
The bio pitch dialog can also be accessed directly from the Options menu in the main menu bar.
Given a codon value 0-63, produces the text names of the associated amino acid and DNA 3-base codon.
Outputs:
Cdn: 3-base DNA codon name for given input codon value, as "ACG" for codon value 23.
AA: Amino acid name for input codon, as "Threonine" for codon value 23.
AA3: Three letter amino acid name for input codon, as "THR" for codon value 23.
AA1: One letter amino acid name for input codon, as "T" for codon value 23.
Input:
Cdn: Codon value (0-63) to translate to text names of associated amino acid and DNA 3-base codon.
Converts a codon to its antisense (backwards-moving or reverse complement codon). This should be used when reversing the direction of a bio sequence, as it more accurately reflects the natrual process.
Output:
Anti: Antisense (backwards-moving or reverse complement) codon (0-63).
Input:
Cdn: Codon (0-63) to convert to its antisense.
Translates a 0-63 codon value to a 0-20 amino acid index using the Kyte solubility order listed above.
Output:
AA#: Amino acid (0-20, Kyte ordering) index from given Codon.
Input:
Cdn: Codon (0-63) to translate into its amino acid index.
Returns molecular weight of amino acid for given codon. Codon is automatically translated to its corresponding amino acid, and then to the molecular weight values.
Outputs:
Wgt: Relative molecular weight normalized to 0-127.
Ordr: Molecular weight order (0-20) of amino acid from codon.
Input:
Cdn: Codon (0-63) to fetch amino acid mol weight.
Returns molecular volume of amino acid for given codon. Codon is automatically translated to its corresponding amino acid, and then to the molecular volume values.
Outputs:
Wgt: Relative molecular volume normalized to 0-127.
Ordr: Molecular volume order (0-20) of amino acid from codon.
Input:
Cdn: Codon (0-63) to fetch amino acid mol volume.
Returns 4, 8 and Kyte-8 grouping of amino acid for given codon. Codon is automatically translated to its corresponding amino acid, and then to the group values.
Outputs:
Grp4: 4-element grouping 0-3.
0 = IFVLWAGMP: nonpolar
1 = HKR: basic
2 = CYTSNQ: polar
3 = DE: acidic
Grp8: 8-element grouping 0-7.
0 = ILVMF: large nonpolar (ILV aliphatic)
1 = C: nonpolar disulfide-forming
2 = GP: small moderately nonpolar
3 = AST: small moderately nonpolar
4 = YW: large aromatic moderately polar
5 = NQ: small polar
6 = DE: negatively charged
7 = HKR: positively charged
Kyte8: Kyte order 8-element grouping 0-7.
0 = IVL
1 = FC
2 = MA
3 = G
4 = TSW
5 = YP
6 = HNQDE
7 = KR
Input:
Cdn: Codon (0-63) to convert to its amino acid grouping.
ArtWonk is Copyright © 2003-2014 by John Dunn and Algorithmic Arts. All Rights Reserved.