Skip to content

List of potential things to be refactored #38

@Pbellive

Description

@Pbellive

Hi All,
jInv is in pretty good shape at the moment but there are still many potential areas that could be improved. Thinking ahead to a possible hackathon next week, here are some things to look at:

  • Generalizing the globalToLocal interpolation to better handle inversions where a single forward problem has more than one parameter type, especially where a single inversion model parameter might effect multiple physical parameters of a forward problem.
  • Better document the forward problem API so we're clear exactly what new forward problems need to be fully compatible with jInv. This goes hand in hand with cleaning up getDataParallel.jl
  • Rethink implementation of supported regularization methods, with a view to clarifying input and adding flexibility
  • Clarify when functions modify their input arguments.
    • Stop explicitly returning arguments that are modified in place.
    • Add ! to function names where inputs are modified? This might be a pain to add but I think it would
      improve the clarity of the code significantly.
  • Update prepareMesh2Mesh so calling signature is consistent with prepareMesh2MeshOT from JOcTree. Consider using optional keyword arguments to replace overloading.
  • Think more generally about where optional keyword arguments might be better than overloading?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions