Hi everyone,

I saw on lecture 22 “Some data structure design considerations” Prof. Wolfgang 
described a struct of arrays (SOA) with an accessor interface.  This keeps nice 
encapsulation while also providing nice cache use.  I would like to understand 
this design better for my personal programming growth, separating interface and 
data so the data is stored optimally.  

Here is a snippet from the iterators section of the documentation:

"Since dereferencing iterators yields accessor objects, these calls are to 
member functions Accessor::vertex(), Accessor::child() etc. These in turn 
figure out the relevant data from the various data structures that store this 
data. How this is actually done and what data structures are used is not really 
of concern to authors of applications in deal.II. In particular, by hiding the 
actual data structures we are able to store data in an efficient way, not 
necessarily in a way that makes it easily accessible or understandable to 
application writers.”

What classes should I look at that shows this design the most succinctly?  How 
is the data actually stored?  This design seems very important for writing data 
oriented code but still provided a nice interface layer on top and I would like 
to get comfortable with it.

Cheers,

Zachary

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/1AFF639A-6557-4603-BDF7-D9F94DB622EC%40gmail.com.

Reply via email to