Closed manulera closed 1 year ago
Hi, that's a good Idea I think. The constructor of Dseq takes a single strand as is but the result is a blunt sequence. Should the Dseq be modified or should this be done in a separate function?
Thanks for merging! Closing
As is, to create a double stranded dna with overhangs, you can provide
watson
,crick
andovhg
, withovhg
being the "stagger between the watson and crick strands". Another way to think about the stagger is how much the 3' of the crick protrudes:To instantiate this in pydna, you would do
Dseq(watson="AAAAA",crick="TTT",ovhg=2)
, etc.I think it would be good to have a class method to instantiate a Dseqrecord object like this:
https://github.com/manulera/ShareYourCloning_backend/blob/67b4ec7731fb42c8187a7fd64491c37afc48a0ed/dna_functions.py#L65C1-L82
With this function, you can create the Dseqrecord from the entire sequence, and the 3' overhangs of each strand (see example below). This is nice, because you could think of storing a sequence with overhangs in a gb file or something, just two integers to indicate the overhangs.