subroutine JetImpactForce use sROP_Other_Variables use sROP_Variables use CStringConfigurationVariables use CformationVariables ! use CSimulationVariables use CmudPropertiesVariables USE MudSystemVARIABLES use SimulationVariables !@@@ implicit none Real(8) :: DeltaPb , NozzleTotalArea , Cd=0.95d0 data%State%ROP_Bit%BitFlowrate = data%State%MudSystem%StringFlowRateFinal ![gpm] !if(print_log) print*, 'data%State%ROP_Bit%BitFlowrate=' , data%State%ROP_Bit%BitFlowrate !check :: data%State%ROP_Bit%MudDensity [ppg] ?????????? NozzleTotalArea = data%State%ROP_Spec%NumberOfBitNozzles*(data%State%ROP_Spec%DiameterOfBitNozzle**2)*(PI/4.d0) DeltaPb = (8.311d-5*data%State%ROP_Bit%MudDensity*(data%State%ROP_Bit%BitFlowrate**2))/((Cd**2)*(NozzleTotalArea**2)) data%State%ROP_Bit%JetImpactForce = 0.01823d0*Cd*data%State%ROP_Bit%BitFlowrate*sqrt(data%State%ROP_Bit%MudDensity*DeltaPb) end subroutine