Skip to content

File FlowCPU.cu

FileList > src > FlowCPU.cu

Go to the source code of this file

  • #include "FlowCPU.h"

Public Functions

Type Name
void FlowCPU (Param XParam, Loop< T > & XLoop, Forcing< float > XForcing, Model< T > XModel)
Main CPU flow solver for the flood model.
template void FlowCPU< double > (Param XParam, Loop< double > & XLoop, Forcing< float > XForcing, Model< double > XModel)
template void FlowCPU< float > (Param XParam, Loop< float > & XLoop, Forcing< float > XForcing, Model< float > XModel)
void HalfStepCPU (Param XParam, Loop< T > & XLoop, Forcing< float > XForcing, Model< T > XModel)
Debugging flow step for the flood model.
template void HalfStepCPU< double > (Param XParam, Loop< double > & XLoop, Forcing< float > XForcing, Model< double > XModel)
template void HalfStepCPU< float > (Param XParam, Loop< float > & XLoop, Forcing< float > XForcing, Model< float > XModel)

Public Functions Documentation

function FlowCPU

Main CPU flow solver for the flood model.

template<class T>
void FlowCPU (
    Param XParam,
    Loop < T > & XLoop,
    Forcing < float > XForcing,
    Model < T > XModel
) 

Executes predictor and corrector steps, applies atmospheric, wind, and river forcing, updates advection and friction terms, and manages halo and gradient reconstruction for all blocks.

Template parameters:

  • T Data type (float or double)

Parameters:

  • XParam Simulation parameters
  • XLoop Loop control and time stepping
  • XForcing Forcing data (atmospheric, wind, river, rain)
  • XModel Model data structure

function FlowCPU< double >

template void FlowCPU< double > (
    Param XParam,
    Loop < double > & XLoop,
    Forcing < float > XForcing,
    Model < double > XModel
) 

function FlowCPU< float >

template void FlowCPU< float > (
    Param XParam,
    Loop < float > & XLoop,
    Forcing < float > XForcing,
    Model < float > XModel
) 

function HalfStepCPU

Debugging flow step for the flood model.

template<class T>
void HalfStepCPU (
    Param XParam,
    Loop < T > & XLoop,
    Forcing < float > XForcing,
    Model < T > XModel
) 

Runs a simplified flow step for debugging the main engine, including forcing, advection, friction, and halo/gradient reconstruction.

Template parameters:

  • T Data type (float or double)

Parameters:

  • XParam Simulation parameters
  • XLoop Loop control and time stepping
  • XForcing Forcing data (atmospheric, wind, river, rain)
  • XModel Model data structure

Debugging flow step This function was created to debug the main engine of the model


function HalfStepCPU< double >

template void HalfStepCPU< double > (
    Param XParam,
    Loop < double > & XLoop,
    Forcing < float > XForcing,
    Model < double > XModel
) 

function HalfStepCPU< float >

template void HalfStepCPU< float > (
    Param XParam,
    Loop < float > & XLoop,
    Forcing < float > XForcing,
    Model < float > XModel
) 


The documentation for this class was generated from the following file src/FlowCPU.cu