Skip to content
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

Create a diagram about ASPECT's architecture #1667

Closed
bangerth opened this issue May 15, 2017 · 7 comments
Closed

Create a diagram about ASPECT's architecture #1667

bangerth opened this issue May 15, 2017 · 7 comments

Comments

@bangerth
Copy link
Contributor

@ljhwang asked whether there is a diagram that explains the structure of the ASPECT. There isn't, but it should not actually be very difficult to generate one.

In essence, we have the following structure:

  • There is a "core", which consists of the Simulator class
  • There is class that allows querying some information from the Simulator class, called SimulatorAccess. So there would be an arrow from Simulator to SimulatorAccess.
  • There are a number of "Interfaces" for plugins (e.g., for mesh refinement, material model, boundary temperature, etc). They provide information to the Simulator, so there should be an arrow from each of these interfaces to the Simulator.
  • There are a number of implementations of each of these interfaces in the various classes. So there should be arrows from each implementation to their corresponding interface.
  • Some of these implementations need information from SimulatorAccess, so there may be an arrow from the latter to the former.

@ljhwang -- I guess this is too abstract to draw a graph? Or is it good enough?

@ljhwang
Copy link
Contributor

ljhwang commented May 15, 2017

@bangerth I think @jdannberg has done something like this in her tutorial slides "Modularity". Can someone review and modify as per above?
screen shot 2017-05-14 at 8 20 15 pm

@bangerth
Copy link
Contributor Author

This is not a bad graph, but there are about a dozen plugin systems that are responsible for the "Model setup" part. Some of them also require feedback from the simulator.

@ljhwang
Copy link
Contributor

ljhwang commented May 16, 2017 via email

@bangerth
Copy link
Contributor Author

If I have a fifteen minute break today, I may just come up with a way to create the graph from ASPECT internals. Each plugin system should be able to tell about itself what we need for this graph.

@ljhwang
Copy link
Contributor

ljhwang commented May 16, 2017

This is a screen shot from @jdannberg tutorial presentation 'aspect_tutorial_slides.pdf'.

modularity2

@bangerth
Copy link
Contributor Author

@jdannberg -- how did you make this graph? Do you still have the sources? I'd like to put something like this into the manual.

@bangerth
Copy link
Contributor Author

This can now be closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants