📄 c5_lmdap_library_ncs.c
字号:
c5_tjcalc = (real_T *)ssGetInputPortSignal(chartInstance->S, 7);
c5_tjcalc1 = (real_T *)ssGetInputPortSignal(chartInstance->S, 6);
c5_Nofjets = (real_T *)ssGetInputPortSignal(chartInstance->S, 0);
c5_ton = (real_T *)ssGetOutputPortSignal(chartInstance->S, 3);
c5_Firefct1 = (real_T *)ssGetInputPortSignal(chartInstance->S, 2);
c5_e = (real_T (*)[2])ssGetInputPortSignal(chartInstance->S, 1);
_SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,0);
_SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,5);
if(CV_TRANSITION_EVAL(5U, (_SFD_CCP_CALL(5,0,(((*c5_e)[1] > 0.0)!=0)) != 0) &&
(_SFD_CCP_CALL(5,1,((*c5_Firefct1 > 0.0)!=0)) != 0))
!= 0U != 0) {
_SFD_CT_CALL(TRANSITION_ACTIVE_TAG,5);
_SFD_CS_CALL(STATE_ENTER_EXIT_FUNCTION_TAG,0);
chartInstance->c5_tp_Coast_region_2 = 0U;
_SFD_CS_CALL(STATE_INACTIVE_TAG,0);
_SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,0);
chartInstance->c5_is_c5_LMdap_Library_NCS = (uint8_T)c5_IN_Fire_region_1;
_SFD_CS_CALL(STATE_ACTIVE_TAG,2);
chartInstance->c5_tp_Fire_region_1 = 1U;
*c5_jets = -(*c5_Nofjets);
_SFD_DATA_RANGE_CHECK(*c5_jets, 0U);
*c5_ton = *c5_tjcalc + *c5_tjcalc1;
_SFD_DATA_RANGE_CHECK(*c5_ton, 3U);
}
_SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,0);
}
static void c5_Coast_region_1(SFc5_LMdap_Library_NCSInstanceStruct
*chartInstance)
{
real_T *c5_Firefct2;
real_T *c5_Nofjets;
real_T *c5_jets;
real_T *c5_tjcalc;
real_T *c5_tjcalc1;
real_T *c5_ton;
real_T (*c5_e)[2];
c5_jets = (real_T *)ssGetOutputPortSignal(chartInstance->S, 1);
c5_tjcalc = (real_T *)ssGetInputPortSignal(chartInstance->S, 7);
c5_tjcalc1 = (real_T *)ssGetInputPortSignal(chartInstance->S, 6);
c5_Nofjets = (real_T *)ssGetInputPortSignal(chartInstance->S, 0);
c5_ton = (real_T *)ssGetOutputPortSignal(chartInstance->S, 3);
c5_Firefct2 = (real_T *)ssGetInputPortSignal(chartInstance->S, 4);
c5_e = (real_T (*)[2])ssGetInputPortSignal(chartInstance->S, 1);
_SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,3);
_SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,22);
if(CV_TRANSITION_EVAL(22U, (_SFD_CCP_CALL(22,0,(((*c5_e)[1] < 0.0)!=0)) != 0)
&& (_SFD_CCP_CALL(22,1,((*c5_Firefct2 < 0.0)!=0)) != 0
)) != 0U != 0) {
_SFD_CT_CALL(TRANSITION_ACTIVE_TAG,22);
_SFD_CS_CALL(STATE_ENTER_EXIT_FUNCTION_TAG,3);
chartInstance->c5_tp_Coast_region_1 = 0U;
_SFD_CS_CALL(STATE_INACTIVE_TAG,3);
_SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,3);
chartInstance->c5_is_c5_LMdap_Library_NCS = (uint8_T)c5_IN_Fire_region_2;
_SFD_CS_CALL(STATE_ACTIVE_TAG,4);
chartInstance->c5_tp_Fire_region_2 = 1U;
*c5_jets = *c5_Nofjets;
_SFD_DATA_RANGE_CHECK(*c5_jets, 0U);
*c5_ton = *c5_tjcalc - *c5_tjcalc1;
_SFD_DATA_RANGE_CHECK(*c5_ton, 3U);
}
_SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,3);
}
static void c5_Fire_region_2(SFc5_LMdap_Library_NCSInstanceStruct *chartInstance)
{
real_T *c5_ton;
real_T *c5_Coastfct2;
real_T *c5_enable;
real_T *c5_Nofjets;
real_T *c5_jets;
real_T *c5_tjcalc;
real_T *c5_tjcalc1;
real_T (*c5_e)[2];
c5_jets = (real_T *)ssGetOutputPortSignal(chartInstance->S, 1);
c5_tjcalc = (real_T *)ssGetInputPortSignal(chartInstance->S, 7);
c5_tjcalc1 = (real_T *)ssGetInputPortSignal(chartInstance->S, 6);
c5_enable = (real_T *)ssGetOutputPortSignal(chartInstance->S, 2);
c5_Coastfct2 = (real_T *)ssGetInputPortSignal(chartInstance->S, 5);
c5_Nofjets = (real_T *)ssGetInputPortSignal(chartInstance->S, 0);
c5_ton = (real_T *)ssGetOutputPortSignal(chartInstance->S, 3);
c5_e = (real_T (*)[2])ssGetInputPortSignal(chartInstance->S, 1);
_SFD_CS_CALL(STATE_ENTER_DURING_FUNCTION_TAG,4);
_SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,13);
if(CV_TRANSITION_EVAL(13U, (int32_T)_SFD_CCP_CALL(13,0,((*c5_ton < 2.0 *
chartInstance->c5_delt)!=0))) != 0U != 0) {
if(sf_debug_transition_conflict_check_enabled()) {
unsigned int transitionList[2];
unsigned int numTransitions=1;
transitionList[0] = 13;
sf_debug_transition_conflict_check_begin();
if(((*c5_e)[1] > 0.0) && (*c5_Coastfct2 > 0.0)) {
transitionList[numTransitions] = 9;
numTransitions++;
}
sf_debug_transition_conflict_check_end();
if(numTransitions>1) {
_SFD_TRANSITION_CONFLICT(&(transitionList[0]),numTransitions);
}
}
_SFD_CT_CALL(TRANSITION_ACTIVE_TAG,13);
*c5_enable = 1.0;
_SFD_DATA_RANGE_CHECK(*c5_enable, 9U);
_SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,6);
if(CV_TRANSITION_EVAL(6U, (int32_T)_SFD_CCP_CALL(6,0,((*c5_ton >
chartInstance->c5_tmin)!=0))) != 0U != 0) {
_SFD_CT_CALL(TRANSITION_ACTIVE_TAG,6);
chartInstance->c5_count = 2.0;
_SFD_DATA_RANGE_CHECK(chartInstance->c5_count, 7U);
_SFD_CS_CALL(STATE_ENTER_EXIT_FUNCTION_TAG,4);
chartInstance->c5_tp_Fire_region_2 = 0U;
chartInstance->c5_is_c5_LMdap_Library_NCS = (uint8_T)c5_IN_NO_ACTIVE_CHILD;
_SFD_CS_CALL(STATE_INACTIVE_TAG,4);
_SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,4);
chartInstance->c5_is_c5_LMdap_Library_NCS = (uint8_T)c5_IN_Skip_a_Sample_2;
_SFD_CS_CALL(STATE_ACTIVE_TAG,1);
chartInstance->c5_tp_Skip_a_Sample_2 = 1U;
chartInstance->c5_count = chartInstance->c5_count - 1.0;
_SFD_DATA_RANGE_CHECK(chartInstance->c5_count, 7U);
} else {
_SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,2);
_SFD_CT_CALL(TRANSITION_ACTIVE_TAG,2);
*c5_enable = 0.0;
_SFD_DATA_RANGE_CHECK(*c5_enable, 9U);
_SFD_CS_CALL(STATE_ENTER_EXIT_FUNCTION_TAG,4);
chartInstance->c5_tp_Fire_region_2 = 0U;
chartInstance->c5_is_c5_LMdap_Library_NCS = (uint8_T)c5_IN_NO_ACTIVE_CHILD;
_SFD_CS_CALL(STATE_INACTIVE_TAG,4);
_SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,4);
chartInstance->c5_is_c5_LMdap_Library_NCS = (uint8_T)c5_IN_Coast_region_2;
_SFD_CS_CALL(STATE_ACTIVE_TAG,0);
chartInstance->c5_tp_Coast_region_2 = 1U;
*c5_jets = 0.0;
_SFD_DATA_RANGE_CHECK(*c5_jets, 0U);
*c5_ton = 0.0;
_SFD_DATA_RANGE_CHECK(*c5_ton, 3U);
*c5_enable = 0.0;
_SFD_DATA_RANGE_CHECK(*c5_enable, 9U);
}
} else {
_SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,9);
if(CV_TRANSITION_EVAL(9U, (_SFD_CCP_CALL(9,0,(((*c5_e)[1] > 0.0)!=0)) != 0)
&& (_SFD_CCP_CALL(9,1,((*c5_Coastfct2 > 0.0)!=0)) != 0))
!= 0U != 0) {
_SFD_CT_CALL(TRANSITION_ACTIVE_TAG,9);
_SFD_CS_CALL(STATE_ENTER_EXIT_FUNCTION_TAG,4);
chartInstance->c5_tp_Fire_region_2 = 0U;
_SFD_CS_CALL(STATE_INACTIVE_TAG,4);
_SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,4);
chartInstance->c5_is_c5_LMdap_Library_NCS = (uint8_T)c5_IN_Coast_region_2;
_SFD_CS_CALL(STATE_ACTIVE_TAG,0);
chartInstance->c5_tp_Coast_region_2 = 1U;
*c5_jets = 0.0;
_SFD_DATA_RANGE_CHECK(*c5_jets, 0U);
*c5_ton = 0.0;
_SFD_DATA_RANGE_CHECK(*c5_ton, 3U);
*c5_enable = 0.0;
_SFD_DATA_RANGE_CHECK(*c5_enable, 9U);
} else {
_SFD_CT_CALL(TRANSITION_BEFORE_PROCESSING_TAG,14);
_SFD_CT_CALL(TRANSITION_ACTIVE_TAG,14);
_SFD_CS_CALL(STATE_ENTER_EXIT_FUNCTION_TAG,4);
chartInstance->c5_tp_Fire_region_2 = 0U;
_SFD_CS_CALL(STATE_INACTIVE_TAG,4);
_SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,4);
chartInstance->c5_is_c5_LMdap_Library_NCS = (uint8_T)c5_IN_Fire_region_2;
_SFD_CS_CALL(STATE_ACTIVE_TAG,4);
chartInstance->c5_tp_Fire_region_2 = 1U;
*c5_jets = *c5_Nofjets;
_SFD_DATA_RANGE_CHECK(*c5_jets, 0U);
*c5_ton = *c5_tjcalc - *c5_tjcalc1;
_SFD_DATA_RANGE_CHECK(*c5_ton, 3U);
}
}
_SFD_CS_CALL(EXIT_OUT_OF_FUNCTION_TAG,4);
}
static void init_script_number_translation(uint32_T c5_machineNumber, uint32_T
c5_chartNumber)
{
}
const mxArray *sf_c5_LMdap_Library_NCS_get_eml_resolved_functions_info(void)
{
const mxArray *c5_nameCaptureInfo = NULL;
c5_nameCaptureInfo = NULL;
sf_mex_assign(&c5_nameCaptureInfo, sf_mex_create(NULL, "nameCaptureInfo", 0,
0U, 1U, 2, 0, 1));
return c5_nameCaptureInfo;
}
static void init_test_point_addr_map(SFc5_LMdap_Library_NCSInstanceStruct
*chartInstance)
{
chartInstance->c5_testPointAddrMap[0] = &chartInstance->c5_count;
chartInstance->c5_testPointAddrMap[1] = &chartInstance->c5_tp_Coast_region_1;
chartInstance->c5_testPointAddrMap[2] = &chartInstance->c5_tp_Coast_region_2;
chartInstance->c5_testPointAddrMap[3] = &chartInstance->c5_tp_Fire_region_1;
chartInstance->c5_testPointAddrMap[4] = &chartInstance->c5_tp_Fire_region_2;
chartInstance->c5_testPointAddrMap[5] = &chartInstance->c5_tp_Skip_a_Sample_1;
chartInstance->c5_testPointAddrMap[6] = &chartInstance->c5_tp_Skip_a_Sample_2;
chartInstance->c5_testPointAddrMap[7] = &chartInstance->c5_tp_Start;
chartInstance->c5_testPointAddrMap[8] =
&chartInstance->c5_tp_Wait_for_stable_rate;
}
static void **get_test_point_address_map(SFc5_LMdap_Library_NCSInstanceStruct
*chartInstance)
{
return &chartInstance->c5_testPointAddrMap[0];
}
static rtwCAPI_ModelMappingInfo
*get_test_point_mapping_info(SFc5_LMdap_Library_NCSInstanceStruct *chartInstance)
{
return &chartInstance->c5_testPointMappingInfo;
}
static void init_dsm_address_info(SFc5_LMdap_Library_NCSInstanceStruct
*chartInstance)
{
}
/* SFunction Glue Code */
static void init_test_point_mapping_info(SimStruct *S);
void sf_c5_LMdap_Library_NCS_get_check_sum(mxArray *plhs[])
{
((real_T *)mxGetPr((plhs[0])))[0] = (real_T)(1812582305U);
((real_T *)mxGetPr((plhs[0])))[1] = (real_T)(3669507377U);
((real_T *)mxGetPr((plhs[0])))[2] = (real_T)(3681109533U);
((real_T *)mxGetPr((plhs[0])))[3] = (real_T)(529047913U);
}
mxArray *sf_c5_LMdap_Library_NCS_get_autoinheritance_info(void)
{
const char *autoinheritanceFields[] =
{"checksum","inputs","parameters","outputs"};
mxArray *mxAutoinheritanceInfo =
mxCreateStructMatrix(1,1,4,autoinheritanceFields);
{
mxArray *mxChecksum = mxCreateDoubleMatrix(4,1,mxREAL);
double *pr = mxGetPr(mxChecksum);
pr[0] = (double)(1325420091U);
pr[1] = (double)(1016604680U);
pr[2] = (double)(3208558491U);
pr[3] = (double)(3002036755U);
mxSetField(mxAutoinheritanceInfo,0,"checksum",mxChecksum);
}
{
const char *dataFields[] = {"size","type","complexity"};
mxArray *mxData = mxCreateStructMatrix(1,8,3,dataFields);
{
mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL);
double *pr = mxGetPr(mxSize);
pr[0] = (double)(1);
pr[1] = (double)(1);
mxSetField(mxData,0,"size",mxSize);
}
{
const char *typeFields[] = {"base","aliasId","fixpt"};
mxArray *mxType = mxCreateStructMatrix(1,1,3,typeFields);
mxSetField(mxType,0,"base",mxCreateDoubleScalar(10));
mxSetField(mxType,0,"aliasId",mxCreateDoubleScalar(0));
mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL));
mxSetField(mxData,0,"type",mxType);
}
mxSetField(mxData,0,"complexity",mxCreateDoubleScalar(0));
{
mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL);
double *pr = mxGetPr(mxSize);
pr[0] = (double)(2);
pr[1] = (double)(1);
mxSetField(mxData,1,"size",mxSize);
}
{
const char *typeFields[] = {"base","aliasId","fixpt"};
mxArray *mxType = mxCreateStructMatrix(1,1,3,typeFields);
mxSetField(mxType,0,"base",mxCreateDoubleScalar(10));
mxSetField(mxType,0,"aliasId",mxCreateDoubleScalar(0));
mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL));
mxSetField(mxData,1,"type",mxType);
}
mxSetField(mxData,1,"complexity",mxCreateDoubleScalar(0));
{
mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL);
double *pr = mxGetPr(mxSize);
pr[0] = (double)(1);
pr[1] = (double)(1);
mxSetField(mxData,2,"size",mxSize);
}
{
const char *typeFields[] = {"base","aliasId","fixpt"};
mxArray *mxType = mxCreateStructMatrix(1,1,3,typeFields);
mxSetField(mxType,0,"base",mxCreateDoubleScalar(10));
mxSetField(mxType,0,"aliasId",mxCreateDoubleScalar(0));
mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL));
mxSetField(mxData,2,"type",mxType);
}
mxSetField(mxData,2,"complexity",mxCreateDoubleScalar(0));
{
mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL);
double *pr = mxGetPr(mxSize);
pr[0] = (double)(1);
pr[1] = (double)(1);
mxSetField(mxData,3,"size",mxSize);
}
{
const char *typeFields[] = {"base","aliasId","fixpt"};
mxArray *mxType = mxCreateStructMatrix(1,1,3,typeFields);
mxSetField(mxType,0,"base",mxCreateDoubleScalar(10));
mxSetField(mxType,0,"aliasId",mxCreateDoubleScalar(0));
mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL));
mxSetField(mxData,3,"type",mxType);
}
mxSetField(mxData,3,"complexity",mxCreateDoubleScalar(0));
{
mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL);
double *pr = mxGetPr(mxSize);
pr[0] = (double)(1);
pr[1] = (double)(1);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -