abarret / clotting_model

An IBAMR implementation of Fogelson and Guy, 2008
2 stars 0 forks source link

Bond sources #11

Closed abarret closed 2 years ago

abarret commented 2 years ago

We need an implementation of CartGridFunction that computes the bond formation/breakage rates. Note that this should look similar to #10, although because the bond equation is a scalar equation, we don't need to evolve with CFINSForcing.

jmcragun commented 2 years ago

You mention that this is similar to viscoelastic stress dynamics, but CohesionStressRHS implements (or does it inherit an abstract class?) CFRelaxationOperator instead of CardGridFunction. On the other hand, ActivatedPlateletSource does implement CardGridFunction but apparently is fairly different from what this class will be. Could you explain these similarities and differences some more?

abarret commented 2 years ago

You mention that this is similar to viscoelastic stress dynamics, but CohesionStressRHS implements (or does it inherit an abstract class?) CFRelaxationOperator instead of CardGridFunction. On the other hand, ActivatedPlateletSource does implement CardGridFunction but apparently is fairly different from what this class will be. Could you explain these similarities and differences some more?

CFRelaxationOperator works specifically with CFINSForcing. It allows for specifying relaxation and growth of the extra stress tensor. CartGridFunction is an interface for specifying a function on a patch hierarchy. In particular, CFRelaxationOperator inherits from CartGridFunction, for the specialized purpose of tensors.

You should implement a CartGridFunction as ActivatedPlateletSource does, but the evaluation of the operator should be similar to CohesionStressRHS, modified for scalars instead of tensors. Does this make sense?

implements (or does it inherit an abstract class?)

When I say 'implement' I mean we're inheriting an abstract class and implementing the pure virtual functions.

jmcragun commented 2 years ago

Makes sense! It will follow the same general flow of CSRHS, but instead of having ret_data in setDataOnPatch be a tensor, it will just be a scalar that we solve for?

I recall there being a lot more setup/methods in CohesionStressRHS (iterating through ghost cells and the like) but those methods seem to have disappeared. Will I be re-implementing those kinds of methods in the bond source files?

abarret commented 2 years ago

Closed by #23