hi everyone,
as discussed a bit in the zulip I'm working on building a set of tools within EcoJulia that will use Simulation.jl as a base. as i've started to familiarize myself with the code i've noticed a few things i'd like to add
- abstract measurement type for trajectories (abundance / occupancy)
- abstract landscape geometries, integration with SpatialGraphs.jl (as far as i can tell you can only use a grid at the moment?)
- integration with EcologicalNetworks.jl, define a set of consumer-resource relationships from an EN.jl metaweb
- integration with the new RasterDataSources.jl
- abstract environmental variables: at the moment, in
Biodiversity/Habitats.jl, HabitatsUpdate.jl, and AbioticEnv.jl, etc. have lots of duplicate/nearly-duplicate code,
e.g.
function TempChange(eco::AbstractEcosystem, hab::ContinuousHab, timestep::Unitful.Time)
val = hab.change.rate
v = uconvert(K/unit(timestep), val)
hab.matrix .+= v * timestep
end
function RainfallChange(eco::AbstractEcosystem, hab::ContinuousHab, timestep::Unitful.Time)
val = hab.change.rate
v = uconvert(mm/unit(timestep), val)
hab.matrix .+= v * timestep
end
which could be condensed if each environmental variable was a type that holds its unit.
happy to help with implementation of any/all
hi everyone,
as discussed a bit in the zulip I'm working on building a set of tools within EcoJulia that will use Simulation.jl as a base. as i've started to familiarize myself with the code i've noticed a few things i'd like to add
Biodiversity/Habitats.jl,HabitatsUpdate.jl, andAbioticEnv.jl, etc. have lots of duplicate/nearly-duplicate code,e.g.
which could be condensed if each environmental variable was a type that holds its unit.
happy to help with implementation of any/all