Javi,
For your 2D geometry classes (Vector2D, Matrix2D ...) - why not just using the corresponding 3D classes and keeping Z fixed? I think it is not too bad in performance and will save you a lot of coding/debugging time.
Keren.
Or vector and matrix can be replaced by a single version templated on the dimension. We definitely don't want separate code bases for the 2 and 3D versions as it will be a pain to keep the set of operations in sync.
On Nov 12, 2008, at 10:50 PM, Keren Lasker wrote:
> Javi, > > For your 2D geometry classes (Vector2D, Matrix2D ...) - why not just > using the corresponding 3D classes and keeping Z fixed? > I think it is not too bad in performance and will save you a lot of > coding/debugging time. > > Keren. > _______________________________________________ > IMP-dev mailing list > IMP-dev@salilab.org > https://salilab.org/mailman/listinfo/imp-dev
2008/11/12 Daniel Russel drussel@gmail.com: > Or vector and matrix can be replaced by a single version templated on the > dimension. We definitely don't want separate code bases for the 2 and 3D > versions as it will be a pain to keep the set of operations in sync. > > On Nov 12, 2008, at 10:50 PM, Keren Lasker wrote: > >> Javi, >> >> For your 2D geometry classes (Vector2D, Matrix2D ...) - why not just >> using the corresponding 3D classes and keeping Z fixed? >> I think it is not too bad in performance and will save you a lot of >> coding/debugging time. >> >> Keren. >> _______________________________________________ >> IMP-dev mailing list >> IMP-dev@salilab.org >> https://salilab.org/mailman/listinfo/imp-dev > >
- Vector2D is already done but I am fine with changes - I am building a templated version of matrix for 1,2,3D. I didn't know about matrix3d until yesterday - Images are going to be 2D matrices and header.
2008/11/12 Daniel Russel drussel@gmail.com: > Or vector and matrix can be replaced by a single version templated on the > dimension. We definitely don't want separate code bases for the 2 and 3D > versions as it will be a pain to keep the set of operations in sync. > > On Nov 12, 2008, at 10:50 PM, Keren Lasker wrote: > >> Javi, >> >> For your 2D geometry classes (Vector2D, Matrix2D ...) - why not just >> using the corresponding 3D classes and keeping Z fixed? >> I think it is not too bad in performance and will save you a lot of >> coding/debugging time. >> >> Keren. >> _______________________________________________ >> IMP-dev mailing list >> IMP-dev@salilab.org >> https://salilab.org/mailman/listinfo/imp-dev > >
I can templatize the current Vector3D tonight (actually, I had already done so a while ago, so I just have to resuscitate it).
On Nov 12, 2008, at 4:02 PM, Javier Ángel Velázquez Muriel wrote:
> - Vector2D is already done but I am fine with changes > - I am building a templated version of matrix for 1,2,3D. I didn't > know about matrix3d until yesterday > - Images are going to be 2D matrices and header. > > 2008/11/12 Daniel Russel drussel@gmail.com: >> Or vector and matrix can be replaced by a single version templated >> on the >> dimension. We definitely don't want separate code bases for the 2 >> and 3D >> versions as it will be a pain to keep the set of operations in sync. >> >> On Nov 12, 2008, at 10:50 PM, Keren Lasker wrote: >> >>> Javi, >>> >>> For your 2D geometry classes (Vector2D, Matrix2D ...) - why not just >>> using the corresponding 3D classes and keeping Z fixed? >>> I think it is not too bad in performance and will save you a lot of >>> coding/debugging time. >>> >>> Keren. >>> _______________________________________________ >>> IMP-dev mailing list >>> IMP-dev@salilab.org >>> https://salilab.org/mailman/listinfo/imp-dev >> >>
sounds good ! Lets decide on an interface for the geometry classes. Ben's Vector3D is a very good start. I'll update the 3D geometry classes accordingly. Javi - do you have any specific needs for the geometry classes or just the basic needs? Maybe you can send your header file so Daniel can take it into account writing the VectorD? On Nov 12, 2008, at 7:05 PM, Daniel Russel wrote:
> I can templatize the current Vector3D tonight (actually, I had already > done so a while ago, so I just have to resuscitate it). > > On Nov 12, 2008, at 4:02 PM, Javier Ángel Velázquez Muriel wrote: > >> - Vector2D is already done but I am fine with changes >> - I am building a templated version of matrix for 1,2,3D. I didn't >> know about matrix3d until yesterday >> - Images are going to be 2D matrices and header. >> >> 2008/11/12 Daniel Russel drussel@gmail.com: >>> Or vector and matrix can be replaced by a single version templated >>> on the >>> dimension. We definitely don't want separate code bases for the 2 >>> and 3D >>> versions as it will be a pain to keep the set of operations in sync. >>> >>> On Nov 12, 2008, at 10:50 PM, Keren Lasker wrote: >>> >>>> Javi, >>>> >>>> For your 2D geometry classes (Vector2D, Matrix2D ...) - why not >>>> just >>>> using the corresponding 3D classes and keeping Z fixed? >>>> I think it is not too bad in performance and will save you a lot of >>>> coding/debugging time. >>>> >>>> Keren. >>>> _______________________________________________ >>>> IMP-dev mailing list >>>> IMP-dev@salilab.org >>>> https://salilab.org/mailman/listinfo/imp-dev >>> >>> > > _______________________________________________ > IMP-dev mailing list > IMP-dev@salilab.org > https://salilab.org/mailman/listinfo/imp-dev
Keren, the more I see your Matrix3D class the more realize that my code is going to serve a different purpose. The matrix you define in Matrix3D is a 3x3x3, but what I want is a NxLxM, something like the map that you had for EMBed, and in my case, what I understood by matrix 2D was a NxM, not a 2x2, for example. Vectors here don't apply, but still is going to be very helpful to have a templated vector. Again, I am building the templated array. Javi
2008/11/12 Keren Lasker kerenl@salilab.org: > Javi, > > For your 2D geometry classes (Vector2D, Matrix2D ...) - why not just using > the corresponding 3D classes and keeping Z fixed? > I think it is not too bad in performance and will save you a lot of > coding/debugging time. > > Keren. >
Javi,
you should look at boost array and multi_array.
Dina
On Wed, Nov 12, 2008 at 4:43 PM, Javier Ángel Velázquez Muriel < javi@salilab.org> wrote:
> Keren, the more I see your Matrix3D class the more realize that my > code is going to serve a different purpose. The matrix you define in > Matrix3D is a 3x3x3, but what I want is a NxLxM, something like the > map that you had for EMBed, and in my case, what I understood by > matrix 2D was a NxM, not a 2x2, for example. Vectors here don't apply, > but still is going to be very helpful to have a templated vector. > Again, I am building the templated array. > Javi > > 2008/11/12 Keren Lasker kerenl@salilab.org: > > Javi, > > > > For your 2D geometry classes (Vector2D, Matrix2D ...) - why not just > using > > the corresponding 3D classes and keeping Z fixed? > > I think it is not too bad in performance and will save you a lot of > > coding/debugging time. > > > > Keren. > > > _______________________________________________ > IMP-dev mailing list > IMP-dev@salilab.org > https://salilab.org/mailman/listinfo/imp-dev >
yes Javi - see my last email. The geometry manipulation classes are not related to data storage. Anyway - it would be nice to have a discussion between you, Frido and me on data storage - would you mind having a three way skype call soon? On Nov 12, 2008, at 7:43 PM, Javier Ángel Velázquez Muriel wrote:
> Keren, the more I see your Matrix3D class the more realize that my > code is going to serve a different purpose. The matrix you define in > Matrix3D is a 3x3x3, but what I want is a NxLxM, something like the > map that you had for EMBed, and in my case, what I understood by > matrix 2D was a NxM, not a 2x2, for example. Vectors here don't apply, > but still is going to be very helpful to have a templated vector. > Again, I am building the templated array. > Javi > > 2008/11/12 Keren Lasker kerenl@salilab.org: >> Javi, >> >> For your 2D geometry classes (Vector2D, Matrix2D ...) - why not >> just using >> the corresponding 3D classes and keeping Z fixed? >> I think it is not too bad in performance and will save you a lot of >> coding/debugging time. >> >> Keren. >>
yes, would be a good idea. javi, if you plan on being compatible with spider/xmipp i urge you to modify the 3d embed structure. it definitely makes no sense to treat 2d and 3d images differently. typically, all operations (rotations, translations, fourier, etc) are 2d and 3d in these packages as well. otherwise, embed, imp, or wherever you put it will end up in a mess with all kinds of different classes. if you want to change the 3d embed data structure for being compatible with other packages you got my vote by all means.
best
frido
On Nov 13, 2008, at 8:47 AM, Keren Lasker wrote:
> yes Javi - see my last email. > The geometry manipulation classes are not related to data storage. > Anyway - it would be nice to have a discussion between you, Frido and > me on data storage - would you mind having a three way skype call > soon? > On Nov 12, 2008, at 7:43 PM, Javier Ángel Velázquez Muriel wrote: > >> Keren, the more I see your Matrix3D class the more realize that my >> code is going to serve a different purpose. The matrix you define in >> Matrix3D is a 3x3x3, but what I want is a NxLxM, something like the >> map that you had for EMBed, and in my case, what I understood by >> matrix 2D was a NxM, not a 2x2, for example. Vectors here don't >> apply, >> but still is going to be very helpful to have a templated vector. >> Again, I am building the templated array. >> Javi >> >> 2008/11/12 Keren Lasker kerenl@salilab.org: >>> Javi, >>> >>> For your 2D geometry classes (Vector2D, Matrix2D ...) - why not >>> just using >>> the corresponding 3D classes and keeping Z fixed? >>> I think it is not too bad in performance and will save you a lot of >>> coding/debugging time. >>> >>> Keren. >>> > > _______________________________________________ > EMBED-dev mailing list > EMBED-dev@salilab.org > https://salilab.org/mailman/listinfo/embed-dev
--
Friedrich Foerster Planegger Str 65 D-81241 Muenchen Germany
frifoe@gmail.com
Tel: +49 89 81305541
--
Friedrich Foerster Max-Planck Institut fuer Biochemie Am Klopferspitz 18 D-82152 Martinsried
Tel: +49 89 8578 2651 Fax: +49 89 8578 2641
foerster@biochem.mpg.de
www.tomotronic.org
participants (5)
-
Daniel Russel
-
Dina Schneidman
-
Friedrich Foerster
-
Javier Ángel Velázquez Muriel
-
Keren Lasker