Thermal Separated Interaction Files Rev0 - #276
Conversation
There was a problem hiding this comment.
we dont need host view for DEM calculations. should be transferred to DEMSystems part.
There was a problem hiding this comment.
This should not be here. it should not be done here. Maybe in thermalSphereParticle class.
There was a problem hiding this comment.
Moved all per-mechanism sweep logic out of this function. thermalRadiationMechanism and thermalConductionPFPMechanism each now own a complete, independent 27-cell neighbour traversal in their own files. iterate() here no longer contains any per-pair physics — it only rebuilds the shared mapper and dispatches to whichever mechanism objects exist.
There was a problem hiding this comment.
define a parameter in thermoPhysicalInteraction file like "listUpdateInterval" or "neighborListUpdataInterval" or any other proper name.
then here the build() function should happen based on this interval.
There was a problem hiding this comment.
Added a new, dedicated neighborListUpdateInterval entry, read unconditionally by thermalInteraction regardless of whether radiation is enabled, since conduction/PFP depend on the same mapper too. mapper_->build() now runs only every neighborListUpdateInterval steps. This is kept as a separate key from radiation's own radUpdateInterval — the two serve different purposes (rebuild cost vs. radiation's own update cadence) even though the names are similar.
There was a problem hiding this comment.
you should use fatalErrorInFunction macro for error report.
and then fatalExit.
There was a problem hiding this comment.
Replaced the warning-and-skip path with fatalErrorInFunction followed by fatalExit.
| bool calcPFP = condPfpMech_ && condPfpMech_->pfpEnabled(); | ||
|
|
||
| thermalKernelTimer_.start(); | ||
| bool doRadThisStep = hasRad && |
There was a problem hiding this comment.
this check should be moved into the radiation objection.
in there keep a history of the source term and in each iteration just copy the history to the the radiation heat source.
but each for example 10th iteration, just perform the actual calculations to update the history.
There was a problem hiding this comment.
thermalRadiationMechanism now owns its own step counter and its radUpdateInterval. Its iterate() checks internally: on a non-update step it returns immediately, leaving radSumTemp/ radNumPrt at their last value (the history); on an update step it runs the full sweep and overwrites them.
| /// Sum of neighbouring particle temperatures per particle, | ||
| /// used by the linearised radiation model (CFD side) [K]. | ||
| deviceViewType1D<real> radSumTemp_; | ||
|
|
There was a problem hiding this comment.
use pointFiled, like realPointField and uint32PointField
There was a problem hiding this comment.
radSumTemp_/radNumPrt_ are now realPointField_D/ uint32PointField_D, owned by thermalSphereParticles (same ownership split as heatSourceCondPP_/heatSourcePFP_). thermalRadiationMechanism receives them as parameters to iterate() and writes into them; it owns no per-particle storage itself.
thermalInteraction — review fixesAddresses the 5 review comments on Summary
thermoPhysicalInteraction dictionaryBoth intervals are now mandatory (no default): Files changed
Removed
|
No description provided.