You are here

variable length fragments for Ab initio

8 posts / 0 new
Last post
variable length fragments for Ab initio
#1

Is it possible to ask Rosetta Ab initio application to read in a fragment file containing fragments of variable length generated by myself? If so, would it also have any impact to later stage analysis?

Post Situation: 
Wed, 2015-07-01 06:13
attesor

While there has been some work on using different length fragments in abinito, I'm unaware of anything concrete that has been released using that.

For the most part, abinitio is set up to use fixed length fragments, and normally would expect two sets of fragments, one short (typically 3 aa) and one long (typically 9 aa).

There should be some flexibility in how long the fragments are. (e.g. you could try 5-mers and 13-mers ... stick to odd lengths, though.), and depending on the exact protocol you might be able to do more than two (e.g. 3-mers, 9-mers and 15-mers), but I don't believe there's any facility to read mixed-length fragments from a single file.

Fri, 2015-07-03 14:20
rmoretti

this sounds like I can hack it by grouping fragments according to their lengths (odd length) and saving them into different frag files. Does this sound reasonable?

Mon, 2015-07-06 06:35
attesor

It does sound like a reasonable first step to try.

Tue, 2015-07-07 16:33
rmoretti

I built my own 3-residue / 5-residue / 9-residue fragment libraries. 3mer and 9mer libraries work very well with Rosetta. I then tried adding 5-residue fragments using argument -frag5, Rosetta simply ignored that.

Tue, 2015-07-28 09:18
attesor

The frag5 option is only used by FlexPepDock.

For abinito, it looks like you can use the -fragA and -fragB options instead of -frag9 and -frag3 (respectively) for non-standard size fragments ... I haven't tested this yet, though.

Thu, 2015-08-06 08:42
rmoretti

Could you provide with more details, rmoretti? I only found:

std::string frag_large_file, frag_small_file;
if (option[ in::file::fragA ].user()) {
frag_large_file = option[ in::file::fragA ]();
} else {
frag_large_file = option[ in::file::frag9 ]();
}

if (option[ in::file::fragB ].user()) {
frag_small_file = option[ in::file::fragB ]();
} else {
frag_small_file = option[ in::file::frag3 ]();
}

Mon, 2015-08-10 08:45
attesor

That's the relevant section of the code, yes.

My understanding is that the fragment file reader is intelligent to know what size fragments are being loaded from the file, so it will load fragments as the appropriate size. (So technically you could load your 5-mers and 13-mers with -in:file:frag3 and -in:file:frag9, but I wouldn't recommend it, for your own sanity.)

Tue, 2015-08-18 16:47
rmoretti