JuliaGraphs / MultilayerGraphs.jl

A Julia package for the creation, manipulation and analysis of the structure, dynamics and functions of multilayer graphs.
https://juliagraphs.org/MultilayerGraphs.jl/dev
MIT License
118 stars 3 forks source link

Related packages -> MultiScaleTreeGraph.jl #78

Closed VEZY closed 1 year ago

VEZY commented 1 year ago

Hey, I just saw your package and it seems pretty nice ! I'll look more into it when I have more time.

I saw that you have no packages in the Julia sub-section of the "Related Packages" section, so I just wanted to let you know there's the MultiScaleTreeGraph.jl that I develop. I don't know yet how close our approaches are, but we use it to describe plants and (actual) trees. It is based on the publication of Gaudin and Caraglio (1998) (and the subsequent works in FSP modelling) and on the Python implementation here.

The purpose of the package is to be able to represent multi-scale structures, make computations, analyse data and make plots. Here's a short description of the concept.

Godin, C., et Y. Caraglio. 1998. « A Multiscale Model of Plant Topological Structures ». Journal of Theoretical Biology 191 (1): 1‑46. https://doi.org/10.1006/jtbi.1997.0561.

InterdisciplinaryPhysicsTeam commented 1 year ago

Hi @VEZY,

We apologize for the delay in responding to you.

Having read your short description, it seems to us that MTGs may indeed be special cases of multilayer graphs, under the following (natural?) choices:

  1. Different scales would correspond to different Layers;
  2. All nodes of all types (i.e. of all "symbols" as your documentation puts it) would be part of the multilayer graph's set of nodes. Their "type" (or "symbol") would be given by the layer they are represented into;
  3. The "decomposition" relation (/) could be given by the order of the layers (or just by the semantics of the name associated with each one);
  4. The "branch" (+) relation may currently be represented only via semantics (see #100);
  5. The "follow" relation (<) should be embedded in the graph underlying each layer, where required.

Our next main focus will be trying to "elevate" MultilayerGraphs.jl to be a trait-based sub-ecosystem of Graphs.jl with an obvious specialization. Thus we aim at making it easier for developers to implement their own custom multilayer graphs, even though the currently exported MultilayerGraph and MultilayerDiGraph should already be able to represent many of the graph types that can be mapped to a multilayer graph.

Thus, we hope to be soon able to support you in implementing your graph type as a special trait of MultilayerGraphs.jl. Keep an eye on the traits_based_sub_ecosystem branch for updates!

InterdisciplinaryPhysicsTeam commented 1 year ago

Hi @VEZY,

We hope we have been exhaustive in our response.

Can we close this issue now?

VEZY commented 1 year ago

Hi @VEZY,

We hope we have been exhaustive in our response.

Can we close this issue now?

Yes of course ! Thank you for the detailed answer ! I'll keep an eye on your package and if I find some time one day I'll try to use it in mine.

InterdisciplinaryPhysicsTeam commented 1 year ago

Great @VEZY!,

Should you decide to do so, we encourage you to open an issue where we may give you dedicated support!