Hello Anne - great to hear from you !

On Tue Jun 12 12:50:01 2012, Ménard Anne wrote:
> I started my internship about Jalview and Varna yesterday and I would
> like to ask you some questions.
No problem. I'm always happy to help.

> I currently trying to integrate tertiary interactions in the current
> model Jalview but I can not find the file. Class containing the model
> of secondary interactions. I think it is in the package datamodel but
> none matched what I was looking at the secondary structure. Maybe I
> was doing a bad representation: an array containing the sequence and
> each nucleotide, the nucleotide with which it interacts.

The secondary structure is stored as a list of pairwise contacts held 
in the the jalview.datamodel.AlignmentAnnotation class. It's done this 
way because whilst secondary structure might be associated with a 
sequence, it might also be associated with a whole alignment, or a 
specific group of sequences. The field in question is 
jalview.datamodel.AlignmentAnnotation._rnasecstr

Make sure you are working off the 'develop' branch of Jalview - the 
currently released version (v2.7) does not have any of the RNA 
secondary structure capabilities available. If you register at 
http://issues.jalview.org/  I'll add your user to the development group 
so you can checkout and commit to the git repository at 
https://source.jalview.org/git/jalview.git

> It is true that I still do not understand the whole architecture of
> Jalview. I will try in the coming days to have a better understanding.
We should probably have a short skype meeting so I can walk you through 
the code, and answer any questions you might have. Shall we talk 
tomorrow morning ?  (I'm free at 10am my time).

> Also, I read the article on Nested Containment List:
> http://bioinformatics.oxfordjournals.org/content/23/11/1386.full
> According to the authors, it is coded in C but has a pluggin for
> Python but how is it to use these lists in java?
The data structure itself is not very complex, and I think you'll 
easily implement it in Java.
The way I was thinking this might work is to create a neste containment 
list that allows efficient search and subselection operations like:
jalview.datamodel.NCList<IntervalContainer> implements List
{
/**
 * find all intervals on (if start_inclusive is set), and before or 
after start
 */
  public List<IntervalContainer> find(long start, boolean 
start_inclusive, boolean before_or_after);

/**
 * find all intervals on or between start and end (according to 
start_inclusive and end_inclusive)
 */
  public List<IntervalContainer> find(long start, boolean 
start_inclusive, long end, boolean end_inclusive);
}

The IntervalContainer interface defines the basic methods for finding 
the location of the interval (e.g. getStart() and getEnd()).

Don't worry too much about ultrafast implementation for the moment - 
anything will be better than what Jalview has at the moment, which is 
simply a list of pairs that must be searched through each time.

Jim.
_______________________________________________
Jalview-dev mailing list
[email protected]
http://www.compbio.dundee.ac.uk/mailman/listinfo/jalview-dev

Reply via email to