-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SMC translocator: do we need a more general code? #10
Comments
There are basically 3 things a LEF can do (if we ignore exotic things like long-distance capture): LEFs can actively translocate, diffuse, or remain in place. I suggest assigning each subunit in a LEF to have one of these modes. This already permits, 1-sided, 2-sided, slip-link, and "semi-diffusive" extrusion. As suggested above, the rates of these steps could be controlled by context, e.g., diffusive step rates that depend on loop size, switching that exchanges active and stationary subunits, etc. Additionally, it might be nice to facilitate use of multiple different kinds of LEFs together in one simulation (e.g., a mix of 1- and 2-sided, or using two different processivities, etc.). |
One design feature that I'd strongly recommend is to separate the code that
simulates 1D trajectories of SMCs from the OpenMM-related code.
For example, the former could return a 2N x T array of N loop positions at
T timepoints, which the latter would use to make an efficient polymer
simulation. This way it'd be much easier to experiment with different codes
for lattice simulations, e.g. step-wise Python/Cython or gillespie-type
ones.
…On Wed, Sep 4, 2019, 18:39 Maksim Imakaev ***@***.***> wrote:
*Problem*
After discussing with Hugo, we were thinking that current SMCTranslocator
is outdated.
First, it is written in Cython, which is not necessary unless you want to
create SMC-only contact maps. And nobody does that.
Second, it only accepts a limited set of rules, and modifying them is
difficult
*What do we do?*
Perhaps, we need to think about / design a more generalized and flexible
SMC translocator, written in pure python.
Ideally, it should have a set of features. From the top of my head: making
lifetime dependent on what's going on (collision, pausing, status of two
cohesins, etc.). It should support one-sided extrusion, as well as maybe
diffusive extrusion (?).
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#10>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAG64CVVQ34N5OROB4BUGPTQH7QCZANCNFSM4ITUDK6A>
.
|
I fully agree with that: we need to separate SMCtranslocator and polymer simulations! Irrespective of that, the question of which SMC translocator code to use remains open. Any comments on that? |
Working draft of a proposal to make new loop extrusion codeCurrent implementation Suggested scenarios
Ignored scenarios
Do we need?
Requirements for the extrusion codeMovement
States
Loading
|
Problem
After discussing with Hugo, we were thinking that current SMCTranslocator is outdated.
First, it is written in Cython, which is not necessary unless you want to create SMC-only contact maps. And nobody does that.
Second, it only accepts a limited set of rules, and modifying them is difficult
What do we do?
Perhaps, we need to think about / design a more generalized and flexible SMC translocator, written in pure python.
Ideally, it should have a set of features. From the top of my head: making lifetime dependent on what's going on (collision, pausing, status of two cohesins, etc.). It should support one-sided extrusion, as well as maybe diffusive extrusion (?).
The text was updated successfully, but these errors were encountered: