本文整理汇总了C++中real_T函数的典型用法代码示例。如果您正苦于以下问题:C++ real_T函数的具体用法?C++ real_T怎么用?C++ real_T使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了real_T函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: set_sim_state_c2_gesamtmodell
static void set_sim_state_c2_gesamtmodell(SFc2_gesamtmodellInstanceStruct
*chartInstance, const mxArray *c2_st)
{
const mxArray *c2_u;
real_T c2_dv0[3];
int32_T c2_i1;
real_T (*c2_y)[3];
c2_y = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 1);
chartInstance->c2_doneDoubleBufferReInit = TRUE;
c2_u = sf_mex_dup(c2_st);
c2_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c2_u, 0)), "y",
c2_dv0);
for (c2_i1 = 0; c2_i1 < 3; c2_i1++) {
(*c2_y)[c2_i1] = c2_dv0[c2_i1];
}
chartInstance->c2_is_active_c2_gesamtmodell = c2_f_emlrt_marshallIn
(chartInstance, sf_mex_dup(sf_mex_getcell(c2_u, 1)),
"is_active_c2_gesamtmodell");
sf_mex_destroy(&c2_u);
c2_update_debugger_state_c2_gesamtmodell(chartInstance);
sf_mex_destroy(&c2_st);
}
示例2: set_sim_state_c7_WEC_Sim_Driver
static void set_sim_state_c7_WEC_Sim_Driver(SFc7_WEC_Sim_DriverInstanceStruct
*chartInstance, const mxArray *c7_st)
{
const mxArray *c7_u;
real_T c7_dv0[3];
int32_T c7_i1;
real_T (*c7_E)[3];
c7_E = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 1);
chartInstance->c7_doneDoubleBufferReInit = TRUE;
c7_u = sf_mex_dup(c7_st);
c7_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c7_u, 0)), "E",
c7_dv0);
for (c7_i1 = 0; c7_i1 < 3; c7_i1++) {
(*c7_E)[c7_i1] = c7_dv0[c7_i1];
}
chartInstance->c7_is_active_c7_WEC_Sim_Driver = c7_e_emlrt_marshallIn
(chartInstance, sf_mex_dup(sf_mex_getcell(c7_u, 1)),
"is_active_c7_WEC_Sim_Driver");
sf_mex_destroy(&c7_u);
c7_update_debugger_state_c7_WEC_Sim_Driver(chartInstance);
sf_mex_destroy(&c7_st);
}
示例3: real_T
static const mxArray *get_sim_state_c2_car_model(SFc2_car_modelInstanceStruct
*chartInstance)
{
const mxArray *c2_st = NULL;
const mxArray *c2_y = NULL;
int32_T c2_i0;
real_T c2_hoistedGlobal[4];
int32_T c2_i1;
real_T c2_u[4];
const mxArray *c2_b_y = NULL;
uint8_T c2_b_hoistedGlobal;
uint8_T c2_b_u;
const mxArray *c2_c_y = NULL;
real_T (*c2_dX)[4];
c2_dX = (real_T (*)[4])ssGetOutputPortSignal(chartInstance->S, 1);
c2_st = NULL;
c2_y = NULL;
sf_mex_assign(&c2_y, sf_mex_createcellarray(2));
for (c2_i0 = 0; c2_i0 < 4; c2_i0 = c2_i0 + 1) {
c2_hoistedGlobal[c2_i0] = (*c2_dX)[c2_i0];
}
for (c2_i1 = 0; c2_i1 < 4; c2_i1 = c2_i1 + 1) {
c2_u[c2_i1] = c2_hoistedGlobal[c2_i1];
}
c2_b_y = NULL;
sf_mex_assign(&c2_b_y, sf_mex_create("y", &c2_u, 0, 0U, 1U, 0U, 1, 4));
sf_mex_setcell(c2_y, 0, c2_b_y);
c2_b_hoistedGlobal = chartInstance->c2_is_active_c2_car_model;
c2_b_u = c2_b_hoistedGlobal;
c2_c_y = NULL;
sf_mex_assign(&c2_c_y, sf_mex_create("y", &c2_b_u, 3, 0U, 0U, 0U, 0));
sf_mex_setcell(c2_y, 1, c2_c_y);
sf_mex_assign(&c2_st, c2_y);
return c2_st;
}
示例4: real_T
static const mxArray *get_sim_state_c3_car_model(SFc3_car_modelInstanceStruct
*chartInstance)
{
const mxArray *c3_st = NULL;
const mxArray *c3_y = NULL;
int32_T c3_i0;
real_T c3_hoistedGlobal[2];
int32_T c3_i1;
real_T c3_u[2];
const mxArray *c3_b_y = NULL;
uint8_T c3_b_hoistedGlobal;
uint8_T c3_b_u;
const mxArray *c3_c_y = NULL;
real_T (*c3_s)[2];
c3_s = (real_T (*)[2])ssGetOutputPortSignal(chartInstance->S, 1);
c3_st = NULL;
c3_y = NULL;
sf_mex_assign(&c3_y, sf_mex_createcellarray(2));
for (c3_i0 = 0; c3_i0 < 2; c3_i0 = c3_i0 + 1) {
c3_hoistedGlobal[c3_i0] = (*c3_s)[c3_i0];
}
for (c3_i1 = 0; c3_i1 < 2; c3_i1 = c3_i1 + 1) {
c3_u[c3_i1] = c3_hoistedGlobal[c3_i1];
}
c3_b_y = NULL;
sf_mex_assign(&c3_b_y, sf_mex_create("y", &c3_u, 0, 0U, 1U, 0U, 1, 2));
sf_mex_setcell(c3_y, 0, c3_b_y);
c3_b_hoistedGlobal = chartInstance->c3_is_active_c3_car_model;
c3_b_u = c3_b_hoistedGlobal;
c3_c_y = NULL;
sf_mex_assign(&c3_c_y, sf_mex_create("y", &c3_b_u, 3, 0U, 0U, 0U, 0));
sf_mex_setcell(c3_y, 1, c3_c_y);
sf_mex_assign(&c3_st, c3_y);
return c3_st;
}
示例5: real_T
static void set_sim_state_c26_HIL_model_experiments2
(SFc26_HIL_model_experiments2InstanceStruct *chartInstance, const mxArray
*c26_st)
{
const mxArray *c26_u;
real_T c26_dv0[3];
int32_T c26_i1;
real_T (*c26_eta_dot_ref)[3];
c26_eta_dot_ref = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 1);
chartInstance->c26_doneDoubleBufferReInit = TRUE;
c26_u = sf_mex_dup(c26_st);
c26_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c26_u, 0)),
"eta_dot_ref", c26_dv0);
for (c26_i1 = 0; c26_i1 < 3; c26_i1++) {
(*c26_eta_dot_ref)[c26_i1] = c26_dv0[c26_i1];
}
chartInstance->c26_is_active_c26_HIL_model_experiments2 =
c26_f_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c26_u, 1)),
"is_active_c26_HIL_model_experiments2");
sf_mex_destroy(&c26_u);
c26_update_debugger_state_c26_HIL_model_experiments2(chartInstance);
sf_mex_destroy(&c26_st);
}
示例6: features_bta_api
void features_bta_api(const mxArray *prhs[1], const mxArray *plhs[1])
{
real_T (*ft)[2];
emxArray_real_T *tap;
emlrtStack st = { NULL, NULL, NULL };
st.tls = emlrtRootTLSGlobal;
ft = (real_T (*)[2])mxMalloc(sizeof(real_T [2]));
emlrtHeapReferenceStackEnterFcnR2012b(&st);
b_emxInit_real_T(&st, &tap, 2, true);
prhs[0] = emlrtProtectR2012b(prhs[0], 0, false, -1);
/* Marshall function inputs */
e_emlrt_marshallIn(&st, emlrtAlias(prhs[0]), "tap", tap);
/* Invoke the target function */
features_bta(tap, *ft);
/* Marshall function outputs */
plhs[0] = f_emlrt_marshallOut(*ft);
tap->canFreeData = false;
emxFree_real_T(&tap);
emlrtHeapReferenceStackLeaveFcnR2012b(&st);
}
示例7: sf_gateway_c10_experiment_lib2
static void sf_gateway_c10_experiment_lib2(SFc10_experiment_lib2InstanceStruct
*chartInstance)
{
int32_T c10_i2;
real_T c10_hoistedGlobal;
real_T c10_b_hoistedGlobal;
int32_T c10_i3;
real_T c10_V[4];
real_T c10_val;
real_T c10_b_a;
uint32_T c10_debug_family_var_map[6];
real_T c10_nargin = 3.0;
real_T c10_nargout = 1.0;
real_T c10_out[4];
int32_T c10_i4;
int32_T c10_i5;
int32_T c10_i6;
real_T *c10_b_val;
real_T (*c10_b_out)[4];
real_T (*c10_b_V)[4];
c10_b_val = (real_T *)ssGetInputPortSignal(chartInstance->S, 1);
c10_b_out = (real_T (*)[4])ssGetOutputPortSignal(chartInstance->S, 1);
c10_b_V = (real_T (*)[4])ssGetInputPortSignal(chartInstance->S, 0);
_SFD_SYMBOL_SCOPE_PUSH(0U, 0U);
_sfTime_ = sf_get_time(chartInstance->S);
_SFD_CC_CALL(CHART_ENTER_SFUNCTION_TAG, 3U, chartInstance->c10_sfEvent);
for (c10_i2 = 0; c10_i2 < 4; c10_i2++) {
_SFD_DATA_RANGE_CHECK((*c10_b_V)[c10_i2], 0U);
}
chartInstance->c10_sfEvent = CALL_EVENT;
_SFD_CC_CALL(CHART_ENTER_DURING_FUNCTION_TAG, 3U, chartInstance->c10_sfEvent);
c10_hoistedGlobal = *c10_b_val;
c10_b_hoistedGlobal = chartInstance->c10_a;
for (c10_i3 = 0; c10_i3 < 4; c10_i3++) {
c10_V[c10_i3] = (*c10_b_V)[c10_i3];
}
c10_val = c10_hoistedGlobal;
c10_b_a = c10_b_hoistedGlobal;
_SFD_SYMBOL_SCOPE_PUSH_EML(0U, 6U, 6U, c10_debug_family_names,
c10_debug_family_var_map);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c10_nargin, 0U, c10_b_sf_marshallOut,
c10_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c10_nargout, 1U, c10_b_sf_marshallOut,
c10_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML(c10_V, 2U, c10_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML(&c10_val, 3U, c10_b_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c10_b_a, 4U, c10_b_sf_marshallOut,
c10_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(c10_out, 5U, c10_sf_marshallOut,
c10_sf_marshallIn);
CV_EML_FCN(0, 0);
_SFD_EML_CALL(0U, chartInstance->c10_sfEvent, 2);
for (c10_i4 = 0; c10_i4 < 4; c10_i4++) {
c10_out[c10_i4] = c10_V[c10_i4];
}
_SFD_EML_CALL(0U, chartInstance->c10_sfEvent, 3);
c10_out[_SFD_EML_ARRAY_BOUNDS_CHECK("out", (int32_T)_SFD_INTEGER_CHECK("a",
c10_b_a), 1, 4, 1, 0) - 1] = c10_val;
_SFD_EML_CALL(0U, chartInstance->c10_sfEvent, -3);
_SFD_SYMBOL_SCOPE_POP();
for (c10_i5 = 0; c10_i5 < 4; c10_i5++) {
(*c10_b_out)[c10_i5] = c10_out[c10_i5];
}
_SFD_CC_CALL(EXIT_OUT_OF_FUNCTION_TAG, 3U, chartInstance->c10_sfEvent);
_SFD_SYMBOL_SCOPE_POP();
_SFD_CHECK_FOR_STATE_INCONSISTENCY(_experiment_lib2MachineNumber_,
chartInstance->chartNumber, chartInstance->instanceNumber);
for (c10_i6 = 0; c10_i6 < 4; c10_i6++) {
_SFD_DATA_RANGE_CHECK((*c10_b_out)[c10_i6], 1U);
}
_SFD_DATA_RANGE_CHECK(*c10_b_val, 2U);
_SFD_DATA_RANGE_CHECK(chartInstance->c10_a, 3U);
}
示例8: clcOptTrj_tmp_api
/*
* Arguments : const mxArray *prhs[15]
* const mxArray *plhs[7]
* Return Type : void
*/
void clcOptTrj_tmp_api(const mxArray *prhs[15], const mxArray *plhs[7])
{
emxArray_real_T *engKinNumVec_wayInx;
emxArray_real_T *engKinMat_engKinInx_wayInx;
emxArray_real_T *engKinOptVec;
emxArray_real_T *batEngDltOptVec;
emxArray_real_T *fulEngDltOptVec;
emxArray_real_T *staVec;
emxArray_real_T *psiEngKinOptVec;
real_T disFlg;
real_T wayStp;
real_T wayNum;
real_T wayInxBeg;
real_T wayInxEnd;
real_T staEnd;
real_T engKinNum;
real_T engKinEndInxVal;
real_T staNum;
real_T (*optPreInxTn3)[52800];
real_T (*batFrcOptTn3)[52800];
real_T (*fulEngOptTn3)[52800];
real_T (*cos2goActMat)[66];
real_T engKinEndInx;
real_T fulEngOpt;
emlrtStack st = { NULL, NULL, NULL };
st.tls = emlrtRootTLSGlobal;
emlrtHeapReferenceStackEnterFcnR2012b(&st);
emxInit_real_T(&st, &engKinNumVec_wayInx, 1, true);
b_emxInit_real_T(&st, &engKinMat_engKinInx_wayInx, 2, true);
emxInit_real_T(&st, &engKinOptVec, 1, true);
emxInit_real_T(&st, &batEngDltOptVec, 1, true);
emxInit_real_T(&st, &fulEngDltOptVec, 1, true);
emxInit_real_T(&st, &staVec, 1, true);
emxInit_real_T(&st, &psiEngKinOptVec, 1, true);
prhs[9] = emlrtProtectR2012b(prhs[9], 9, false, -1);
prhs[10] = emlrtProtectR2012b(prhs[10], 10, false, -1);
prhs[11] = emlrtProtectR2012b(prhs[11], 11, false, -1);
prhs[12] = emlrtProtectR2012b(prhs[12], 12, false, -1);
prhs[13] = emlrtProtectR2012b(prhs[13], 13, false, -1);
prhs[14] = emlrtProtectR2012b(prhs[14], 14, false, -1);
/* Marshall function inputs */
disFlg = emlrt_marshallIn(&st, emlrtAliasP(prhs[0]), "disFlg");
wayStp = emlrt_marshallIn(&st, emlrtAliasP(prhs[1]), "wayStp");
wayNum = emlrt_marshallIn(&st, emlrtAliasP(prhs[2]), "wayNum");
wayInxBeg = emlrt_marshallIn(&st, emlrtAliasP(prhs[3]), "wayInxBeg");
wayInxEnd = emlrt_marshallIn(&st, emlrtAliasP(prhs[4]), "wayInxEnd");
staEnd = emlrt_marshallIn(&st, emlrtAliasP(prhs[5]), "staEnd");
engKinNum = emlrt_marshallIn(&st, emlrtAliasP(prhs[6]), "engKinNum");
engKinEndInxVal = emlrt_marshallIn(&st, emlrtAliasP(prhs[7]),
"engKinEndInxVal");
staNum = emlrt_marshallIn(&st, emlrtAliasP(prhs[8]), "staNum");
c_emlrt_marshallIn(&st, emlrtAlias(prhs[9]), "engKinNumVec_wayInx",
engKinNumVec_wayInx);
e_emlrt_marshallIn(&st, emlrtAlias(prhs[10]), "engKinMat_engKinInx_wayInx",
engKinMat_engKinInx_wayInx);
optPreInxTn3 = g_emlrt_marshallIn(&st, emlrtAlias(prhs[11]), "optPreInxTn3");
batFrcOptTn3 = g_emlrt_marshallIn(&st, emlrtAlias(prhs[12]), "batFrcOptTn3");
fulEngOptTn3 = g_emlrt_marshallIn(&st, emlrtAlias(prhs[13]), "fulEngOptTn3");
cos2goActMat = i_emlrt_marshallIn(&st, emlrtAlias(prhs[14]), "cos2goActMat");
/* Invoke the target function */
clcOptTrj_tmp(disFlg, wayStp, wayNum, wayInxBeg, wayInxEnd, staEnd, engKinNum,
engKinEndInxVal, staNum, engKinNumVec_wayInx,
engKinMat_engKinInx_wayInx, *optPreInxTn3, *batFrcOptTn3,
*fulEngOptTn3, *cos2goActMat, engKinOptVec, batEngDltOptVec,
fulEngDltOptVec, staVec, psiEngKinOptVec, &fulEngOpt,
&engKinEndInx);
/* Marshall function outputs */
plhs[0] = emlrt_marshallOut(engKinOptVec);
plhs[1] = emlrt_marshallOut(batEngDltOptVec);
plhs[2] = emlrt_marshallOut(fulEngDltOptVec);
plhs[3] = emlrt_marshallOut(staVec);
plhs[4] = emlrt_marshallOut(psiEngKinOptVec);
plhs[5] = b_emlrt_marshallOut(fulEngOpt);
plhs[6] = b_emlrt_marshallOut(engKinEndInx);
psiEngKinOptVec->canFreeData = false;
emxFree_real_T(&psiEngKinOptVec);
staVec->canFreeData = false;
emxFree_real_T(&staVec);
fulEngDltOptVec->canFreeData = false;
emxFree_real_T(&fulEngDltOptVec);
batEngDltOptVec->canFreeData = false;
emxFree_real_T(&batEngDltOptVec);
engKinOptVec->canFreeData = false;
emxFree_real_T(&engKinOptVec);
engKinMat_engKinInx_wayInx->canFreeData = false;
emxFree_real_T(&engKinMat_engKinInx_wayInx);
engKinNumVec_wayInx->canFreeData = false;
emxFree_real_T(&engKinNumVec_wayInx);
emlrtHeapReferenceStackLeaveFcnR2012b(&st);
}
示例9: sf_c1_newtons_cradle
static void sf_c1_newtons_cradle(SFc1_newtons_cradleInstanceStruct
*chartInstance)
{
boolean_T c1_stateChanged;
int32_T c1_i;
int32_T c1_exitg1;
real_T c1_tmp;
real_T (*c1_p)[3];
real_T (*c1_v)[3];
real_T (*c1_p_out)[3];
real_T (*c1_v_out)[3];
c1_v = (real_T (*)[3])(ssGetContStates(chartInstance->S) + 3);
c1_p = (real_T (*)[3])(ssGetContStates(chartInstance->S) + 0);
c1_v_out = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 2);
c1_p_out = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 1);
c1_set_sim_state_side_effects_c1_newtons_cradle(chartInstance);
_sfTime_ = (real_T)ssGetT(chartInstance->S);
if (ssIsMajorTimeStep(chartInstance->S) != 0) {
chartInstance->c1_lastMajorTime = _sfTime_;
c1_stateChanged = (boolean_T)0;
for (c1_i = 0; c1_i < 3; c1_i++) {
(*c1_p_out)[c1_i] = 0.0;
(*c1_v_out)[c1_i] = 0.0;
}
c1_i = 0;
do {
c1_exitg1 = 0;
if (c1_i < 2) {
if ((*c1_p)[c1_i] < (*c1_p)[c1_i + 1]) {
c1_i = 1;
c1_exitg1 = 1;
} else {
c1_i++;
_SF_MEX_LISTEN_FOR_CTRL_C(chartInstance->S);
}
} else {
c1_i = 0;
c1_exitg1 = 1;
}
} while (c1_exitg1 == 0);
if (c1_i != 0) {
for (c1_i = 0; c1_i < 2; c1_i++) {
if ((*c1_p)[c1_i] < (*c1_p)[c1_i + 1]) {
c1_tmp = (*c1_p)[c1_i];
(*c1_p)[c1_i] = (*c1_p)[c1_i + 1];
(*c1_p)[c1_i + 1] = c1_tmp;
c1_tmp = (*c1_v)[c1_i];
(*c1_v)[c1_i] = (*c1_v)[c1_i + 1];
(*c1_v)[c1_i + 1] = c1_tmp;
}
_SF_MEX_LISTEN_FOR_CTRL_C(chartInstance->S);
}
c1_stateChanged = TRUE;
chartInstance->c1_is_c1_newtons_cradle = c1_IN_FreeDynamics;
}
if (c1_stateChanged) {
ssSetSolverNeedsReset(chartInstance->S);
}
}
_sfTime_ = (real_T)ssGetT(chartInstance->S);
for (c1_i = 0; c1_i < 3; c1_i++) {
(*c1_p_out)[c1_i] = (*c1_p)[c1_i];
(*c1_v_out)[c1_i] = (*c1_v)[c1_i];
}
}
示例10: chart_debug_initialization
static void chart_debug_initialization(SimStruct *S, unsigned int
fullDebuggerInitialization)
{
if (!sim_mode_is_rtw_gen(S)) {
SFc3_V2A1_2InstanceStruct *chartInstance;
chartInstance = (SFc3_V2A1_2InstanceStruct *) ((ChartInfoStruct *)
(ssGetUserData(S)))->chartInstance;
if (ssIsFirstInitCond(S) && fullDebuggerInitialization==1) {
/* do this only if simulation is starting */
{
unsigned int chartAlreadyPresent;
chartAlreadyPresent = sf_debug_initialize_chart
(sfGlobalDebugInstanceStruct,
_V2A1_2MachineNumber_,
3,
1,
1,
3,
0,
0,
0,
0,
0,
&(chartInstance->chartNumber),
&(chartInstance->instanceNumber),
ssGetPath(S),
(void *)S);
if (chartAlreadyPresent==0) {
/* this is the first instance */
init_script_number_translation(_V2A1_2MachineNumber_,
chartInstance->chartNumber);
sf_debug_set_chart_disable_implicit_casting
(sfGlobalDebugInstanceStruct,_V2A1_2MachineNumber_,
chartInstance->chartNumber,1);
sf_debug_set_chart_event_thresholds(sfGlobalDebugInstanceStruct,
_V2A1_2MachineNumber_,
chartInstance->chartNumber,
0,
0,
0);
_SFD_SET_DATA_PROPS(0,1,1,0,"delta");
_SFD_SET_DATA_PROPS(1,2,0,1,"x0");
_SFD_SET_DATA_PROPS(2,1,1,0,"hoehe");
_SFD_STATE_INFO(0,0,2);
_SFD_CH_SUBSTATE_COUNT(0);
_SFD_CH_SUBSTATE_DECOMP(0);
}
_SFD_CV_INIT_CHART(0,0,0,0);
{
_SFD_CV_INIT_STATE(0,0,0,0,0,0,NULL,NULL);
}
_SFD_CV_INIT_TRANS(0,0,NULL,NULL,0,NULL);
/* Initialization of MATLAB Function Model Coverage */
_SFD_CV_INIT_EML(0,1,1,0,0,0,0,0,0,0,0);
_SFD_CV_INIT_EML_FCN(0,0,"eML_blk_kernel",0,-1,211);
_SFD_SET_DATA_COMPILED_PROPS(0,SF_DOUBLE,0,NULL,0,0,0,0.0,1.0,0,0,
(MexFcnForType)c3_b_sf_marshallOut,(MexInFcnForType)NULL);
{
unsigned int dimVector[1];
dimVector[0]= 2;
_SFD_SET_DATA_COMPILED_PROPS(1,SF_DOUBLE,1,&(dimVector[0]),0,0,0,0.0,
1.0,0,0,(MexFcnForType)c3_sf_marshallOut,(MexInFcnForType)
c3_sf_marshallIn);
}
_SFD_SET_DATA_COMPILED_PROPS(2,SF_DOUBLE,0,NULL,0,0,0,0.0,1.0,0,0,
(MexFcnForType)c3_b_sf_marshallOut,(MexInFcnForType)NULL);
{
real_T *c3_delta;
real_T *c3_hoehe;
real_T (*c3_x0)[2];
c3_hoehe = (real_T *)ssGetInputPortSignal(chartInstance->S, 1);
c3_x0 = (real_T (*)[2])ssGetOutputPortSignal(chartInstance->S, 1);
c3_delta = (real_T *)ssGetInputPortSignal(chartInstance->S, 0);
_SFD_SET_DATA_VALUE_PTR(0U, c3_delta);
_SFD_SET_DATA_VALUE_PTR(1U, *c3_x0);
_SFD_SET_DATA_VALUE_PTR(2U, c3_hoehe);
}
}
} else {
sf_debug_reset_current_state_configuration(sfGlobalDebugInstanceStruct,
_V2A1_2MachineNumber_,chartInstance->chartNumber,
chartInstance->instanceNumber);
}
}
}
示例11: sf_c12_CusakisME4901arcs
static void sf_c12_CusakisME4901arcs(SFc12_CusakisME4901arcsInstanceStruct
*chartInstance)
{
int32_T c12_i2;
int32_T c12_i3;
int32_T c12_i4;
real_T c12_M[16];
uint32_T c12_debug_family_var_map[11];
real_T c12_m;
real_T c12_n;
real_T c12_a[16];
real_T c12_MM[16];
real_T c12_i;
real_T c12_mm;
real_T c12_j;
real_T c12_nargin = 1.0;
real_T c12_nargout = 1.0;
real_T c12_DD[16];
int32_T c12_i5;
int32_T c12_i6;
int32_T c12_b_mm;
int32_T c12_b_j;
int32_T c12_i7;
int32_T c12_i8;
real_T (*c12_b_DD)[16];
real_T (*c12_b_M)[16];
c12_b_DD = (real_T (*)[16])ssGetOutputPortSignal(chartInstance->S, 1);
c12_b_M = (real_T (*)[16])ssGetInputPortSignal(chartInstance->S, 0);
_sfTime_ = (real_T)ssGetT(chartInstance->S);
_SFD_CC_CALL(CHART_ENTER_SFUNCTION_TAG, 11U, chartInstance->c12_sfEvent);
for (c12_i2 = 0; c12_i2 < 16; c12_i2++) {
_SFD_DATA_RANGE_CHECK((*c12_b_M)[c12_i2], 0U);
}
for (c12_i3 = 0; c12_i3 < 16; c12_i3++) {
_SFD_DATA_RANGE_CHECK((*c12_b_DD)[c12_i3], 1U);
}
chartInstance->c12_sfEvent = CALL_EVENT;
_SFD_CC_CALL(CHART_ENTER_DURING_FUNCTION_TAG, 11U, chartInstance->c12_sfEvent);
for (c12_i4 = 0; c12_i4 < 16; c12_i4++) {
c12_M[c12_i4] = (*c12_b_M)[c12_i4];
}
_SFD_SYMBOL_SCOPE_PUSH_EML(0U, 11U, 11U, c12_debug_family_names,
c12_debug_family_var_map);
_SFD_SYMBOL_SCOPE_ADD_EML(&c12_m, 0U, c12_c_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML(&c12_n, 1U, c12_c_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(c12_a, 2U, c12_sf_marshallOut,
c12_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(c12_MM, 3U, c12_sf_marshallOut,
c12_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c12_i, 4U, c12_c_sf_marshallOut,
c12_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c12_mm, 5U, c12_c_sf_marshallOut,
c12_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c12_j, 6U, c12_c_sf_marshallOut,
c12_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c12_nargin, 7U, c12_c_sf_marshallOut,
c12_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c12_nargout, 8U, c12_c_sf_marshallOut,
c12_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML(c12_M, 9U, c12_b_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(c12_DD, 10U, c12_sf_marshallOut,
c12_sf_marshallIn);
CV_EML_FCN(0, 0);
_SFD_EML_CALL(0U, chartInstance->c12_sfEvent, 3);
c12_m = 2.0;
c12_n = 8.0;
_SFD_EML_CALL(0U, chartInstance->c12_sfEvent, 4);
for (c12_i5 = 0; c12_i5 < 16; c12_i5++) {
c12_a[c12_i5] = 0.0;
}
_SFD_EML_CALL(0U, chartInstance->c12_sfEvent, 5);
for (c12_i6 = 0; c12_i6 < 16; c12_i6++) {
c12_MM[c12_i6] = 0.0;
}
_SFD_EML_CALL(0U, chartInstance->c12_sfEvent, 6);
c12_i = 1.0;
_SFD_EML_CALL(0U, chartInstance->c12_sfEvent, 7);
c12_mm = 0.0;
c12_b_mm = 0;
while (c12_b_mm < 8) {
c12_mm = (real_T)c12_b_mm * 2.0;
CV_EML_FOR(0, 1, 0, 1);
_SFD_EML_CALL(0U, chartInstance->c12_sfEvent, 8);
c12_j = 1.0;
c12_b_j = 0;
while (c12_b_j < 2) {
c12_j = 1.0 + (real_T)c12_b_j;
CV_EML_FOR(0, 1, 1, 1);
_SFD_EML_CALL(0U, chartInstance->c12_sfEvent, 9);
c12_a[(int32_T)(real_T)_SFD_EML_ARRAY_BOUNDS_CHECK("a", (int32_T)
_SFD_INTEGER_CHECK("j+mm", c12_j + c12_mm), 1, 16, 1, 0) - 1] = c12_M
[((int32_T)(real_T)_SFD_EML_ARRAY_BOUNDS_CHECK("M", (int32_T)
_SFD_INTEGER_CHECK("j", c12_j), 1, 2, 1, 0) + (((int32_T)(real_T)
_SFD_EML_ARRAY_BOUNDS_CHECK("M", (int32_T)_SFD_INTEGER_CHECK("i",
c12_i), 1, 8, 2, 0) - 1) << 1)) - 1];
//.........这里部分代码省略.........
示例12: sf_c3_car_model
static void sf_c3_car_model(SFc3_car_modelInstanceStruct *chartInstance)
{
int32_T c3_i3;
int32_T c3_i4;
int32_T c3_i5;
int32_T c3_previousEvent;
int32_T c3_i6;
real_T c3_hoistedGlobal[4];
int32_T c3_i7;
real_T c3_b_hoistedGlobal[3];
int32_T c3_i8;
real_T c3_X[4];
int32_T c3_i9;
real_T c3_u[3];
uint32_T c3_debug_family_var_map[22];
real_T c3_l_F;
real_T c3_l_R;
real_T c3_Vx;
real_T c3_Vy;
real_T c3_r;
real_T c3_psi;
real_T c3_f_Fx;
real_T c3_f_Rx;
real_T c3_delta;
real_T c3_beta;
real_T c3_V;
real_T c3_s_Fy_num;
real_T c3_s_Fy_denum;
real_T c3_s_Fy;
real_T c3_s_Ry_num;
real_T c3_s_Ry_denum;
real_T c3_s_Ry;
real_T c3_nargin = 2.0;
real_T c3_nargout = 1.0;
real_T c3_s[2];
real_T c3_A;
real_T c3_B;
real_T c3_x;
real_T c3_y;
real_T c3_b_x;
real_T c3_b_y;
real_T c3_c_x;
real_T c3_c_y;
real_T c3_d_y;
real_T c3_d_x;
real_T c3_e_x;
real_T c3_f_x;
real_T c3_g_x;
real_T c3_h_x;
real_T c3_i_x;
real_T c3_j_x;
real_T c3_a;
real_T c3_b;
real_T c3_e_y;
real_T c3_b_a;
real_T c3_f_y;
real_T c3_k_x;
real_T c3_l_x;
real_T c3_m_x;
real_T c3_c_a;
real_T c3_b_b;
real_T c3_g_y;
real_T c3_n_x;
real_T c3_o_x;
real_T c3_p_x;
real_T c3_d_a;
real_T c3_c_b;
real_T c3_h_y;
real_T c3_e_a;
real_T c3_i_y;
real_T c3_q_x;
real_T c3_r_x;
real_T c3_s_x;
real_T c3_f_a;
real_T c3_d_b;
real_T c3_j_y;
real_T c3_b_A;
real_T c3_b_B;
real_T c3_t_x;
real_T c3_k_y;
real_T c3_u_x;
real_T c3_l_y;
real_T c3_v_x;
real_T c3_m_y;
real_T c3_w_x;
real_T c3_x_x;
real_T c3_y_x;
real_T c3_g_a;
real_T c3_e_b;
real_T c3_n_y;
real_T c3_h_a;
real_T c3_o_y;
real_T c3_ab_x;
real_T c3_bb_x;
real_T c3_cb_x;
real_T c3_i_a;
real_T c3_f_b;
real_T c3_c_A;
real_T c3_c_B;
real_T c3_db_x;
//.........这里部分代码省略.........
示例13: chart_debug_initialization
static void chart_debug_initialization(SimStruct *S, unsigned int
fullDebuggerInitialization)
{
if (!sim_mode_is_rtw_gen(S)) {
if (ssIsFirstInitCond(S) && fullDebuggerInitialization==1) {
/* do this only if simulation is starting */
{
unsigned int chartAlreadyPresent;
chartAlreadyPresent = sf_debug_initialize_chart
(_adcs_v15_integral_PowerMachineNumber_,
7,
1,
1,
2,
0,
0,
0,
0,
0,
&(chartInstance.chartNumber),
&(chartInstance.instanceNumber),
ssGetPath(S),
(void *)S);
if (chartAlreadyPresent==0) {
/* this is the first instance */
init_script_number_translation(_adcs_v15_integral_PowerMachineNumber_,
chartInstance.chartNumber);
sf_debug_set_chart_disable_implicit_casting
(_adcs_v15_integral_PowerMachineNumber_,chartInstance.chartNumber,1);
sf_debug_set_chart_event_thresholds
(_adcs_v15_integral_PowerMachineNumber_,
chartInstance.chartNumber,
0,
0,
0);
{
unsigned int dimVector[1];
dimVector[0]= 7;
_SFD_SET_DATA_PROPS(0,1,1,0,SF_DOUBLE,1,&(dimVector[0]),0,0,0,0.0,
1.0,0,"x",0,(MexFcnForType)c7_sf_marshall);
}
{
unsigned int dimVector[1];
dimVector[0]= 7;
_SFD_SET_DATA_PROPS(1,2,0,1,SF_DOUBLE,1,&(dimVector[0]),0,0,0,0.0,
1.0,0,"xN",0,(MexFcnForType)c7_sf_marshall);
}
_SFD_STATE_INFO(0,0,2);
_SFD_CH_SUBSTATE_COUNT(0);
_SFD_CH_SUBSTATE_DECOMP(0);
}
_SFD_CV_INIT_CHART(0,0,0,0);
{
_SFD_CV_INIT_STATE(0,0,0,0,0,0,NULL,NULL);
}
_SFD_CV_INIT_TRANS(0,0,NULL,NULL,0,NULL);
/* Initialization of EML Model Coverage */
_SFD_CV_INIT_EML(0,1,0,0,0,0,0,0);
_SFD_CV_INIT_EML_FCN(0,0,"eML_blk_kernel",0,-1,181);
_SFD_TRANS_COV_WTS(0,0,0,1,0);
if (chartAlreadyPresent==0) {
_SFD_TRANS_COV_MAPS(0,
0,NULL,NULL,
0,NULL,NULL,
1,NULL,NULL,
0,NULL,NULL);
}
{
real_T (*c7_x)[7];
real_T (*c7_xN)[7];
c7_xN = (real_T (*)[7])ssGetOutputPortSignal(chartInstance.S, 1);
c7_x = (real_T (*)[7])ssGetInputPortSignal(chartInstance.S, 0);
_SFD_SET_DATA_VALUE_PTR(0U, c7_x);
_SFD_SET_DATA_VALUE_PTR(1U, c7_xN);
}
}
} else {
sf_debug_reset_current_state_configuration
(_adcs_v15_integral_PowerMachineNumber_,chartInstance.chartNumber,
chartInstance.instanceNumber);
}
}
}
示例14: sf_gateway_c6_CSE1_DP
static void sf_gateway_c6_CSE1_DP(SFc6_CSE1_DPInstanceStruct *chartInstance)
{
real_T c6_hoistedGlobal;
real_T c6_u_BT;
int32_T c6_i0;
real_T c6_nu[3];
uint32_T c6_debug_family_var_map[15];
real_T c6_u;
real_T c6_a;
real_T c6_b;
real_T c6_c;
real_T c6_d;
real_T c6_y0;
real_T c6_a0;
real_T c6_a1;
real_T c6_b1;
real_T c6_c1;
real_T c6_nargin = 2.0;
real_T c6_nargout = 1.0;
real_T c6_F_y;
real_T c6_x;
real_T c6_b_x;
real_T c6_c_x;
real_T c6_d_x;
real_T c6_e_x;
real_T c6_f_x;
real_T c6_g_x;
real_T c6_h_x;
real_T c6_i_x;
real_T c6_j_x;
real_T c6_A;
real_T c6_k_x;
real_T c6_l_x;
real_T c6_m_x;
int32_T c6_i1;
real_T *c6_b_u_BT;
real_T *c6_b_F_y;
real_T (*c6_b_nu)[3];
c6_b_nu = (real_T (*)[3])ssGetInputPortSignal(chartInstance->S, 1);
c6_b_F_y = (real_T *)ssGetOutputPortSignal(chartInstance->S, 1);
c6_b_u_BT = (real_T *)ssGetInputPortSignal(chartInstance->S, 0);
_SFD_SYMBOL_SCOPE_PUSH(0U, 0U);
_sfTime_ = sf_get_time(chartInstance->S);
_SFD_CC_CALL(CHART_ENTER_SFUNCTION_TAG, 5U, chartInstance->c6_sfEvent);
_SFD_DATA_RANGE_CHECK(*c6_b_u_BT, 0U);
chartInstance->c6_sfEvent = CALL_EVENT;
_SFD_CC_CALL(CHART_ENTER_DURING_FUNCTION_TAG, 5U, chartInstance->c6_sfEvent);
c6_hoistedGlobal = *c6_b_u_BT;
c6_u_BT = c6_hoistedGlobal;
for (c6_i0 = 0; c6_i0 < 3; c6_i0++) {
c6_nu[c6_i0] = (*c6_b_nu)[c6_i0];
}
_SFD_SYMBOL_SCOPE_PUSH_EML(0U, 15U, 15U, c6_debug_family_names,
c6_debug_family_var_map);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c6_u, 0U, c6_sf_marshallOut,
c6_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML(&c6_a, 1U, c6_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML(&c6_b, 2U, c6_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML(&c6_c, 3U, c6_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML(&c6_d, 4U, c6_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c6_y0, 5U, c6_sf_marshallOut,
c6_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c6_a0, 6U, c6_sf_marshallOut,
c6_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML(&c6_a1, 7U, c6_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML(&c6_b1, 8U, c6_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c6_c1, 9U, c6_sf_marshallOut,
c6_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c6_nargin, 10U, c6_sf_marshallOut,
c6_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c6_nargout, 11U, c6_sf_marshallOut,
c6_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML(&c6_u_BT, 12U, c6_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML(c6_nu, 13U, c6_b_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c6_F_y, 14U, c6_sf_marshallOut,
c6_sf_marshallIn);
CV_EML_FCN(0, 0);
_SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 3);
c6_u = c6_nu[0];
_SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 5);
if (CV_EML_IF(0, 1, 0, c6_u_BT > 0.0879)) {
_SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 6);
c6_a = 2.515;
_SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 7);
c6_b = 0.1174;
_SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 8);
c6_c = -2.807;
_SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 9);
c6_d = -1.131;
_SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 10);
c6_x = 0.1174 * c6_u_BT;
c6_b_x = c6_x;
c6_b_x = muDoubleScalarExp(c6_b_x);
c6_c_x = -1.131 * c6_u_BT;
c6_d_x = c6_c_x;
c6_d_x = muDoubleScalarExp(c6_d_x);
c6_y0 = 2.515 * c6_b_x + -2.807 * c6_d_x;
} else {
_SFD_EML_CALL(0U, chartInstance->c6_sfEvent, 11);
//.........这里部分代码省略.........
示例15: sf_c25_CusakisME4901arcs2
static void sf_c25_CusakisME4901arcs2(SFc25_CusakisME4901arcs2InstanceStruct
*chartInstance)
{
int32_T c25_i2;
int32_T c25_i3;
real_T c25_hoistedGlobal;
real_T c25_b_hoistedGlobal;
real_T c25_c_hoistedGlobal;
int32_T c25_i4;
real_T c25_u[3];
real_T c25_b_mt;
real_T c25_b_mb;
real_T c25_b_m;
uint32_T c25_debug_family_var_map[8];
real_T c25_r;
real_T c25_nargin = 4.0;
real_T c25_nargout = 1.0;
real_T c25_a[6];
real_T c25_b;
real_T c25_y;
real_T c25_A;
real_T c25_B;
real_T c25_x;
real_T c25_b_y;
real_T c25_b_x;
real_T c25_c_y;
int32_T c25_i5;
real_T c25_b_a;
real_T c25_b_b;
real_T c25_d_y;
real_T c25_c_a;
real_T c25_c_b;
real_T c25_e_y;
real_T c25_d_a;
real_T c25_d_b;
real_T c25_f_y;
int32_T c25_i6;
real_T (*c25_e_a)[6];
real_T (*c25_b_u)[3];
c25_e_a = (real_T (*)[6])ssGetOutputPortSignal(chartInstance->S, 1);
c25_b_u = (real_T (*)[3])ssGetInputPortSignal(chartInstance->S, 0);
_sfTime_ = (real_T)ssGetT(chartInstance->S);
_SFD_CC_CALL(CHART_ENTER_SFUNCTION_TAG, 23U, chartInstance->c25_sfEvent);
for (c25_i2 = 0; c25_i2 < 3; c25_i2++) {
_SFD_DATA_RANGE_CHECK((*c25_b_u)[c25_i2], 0U);
}
_SFD_DATA_RANGE_CHECK(chartInstance->c25_mt, 1U);
for (c25_i3 = 0; c25_i3 < 6; c25_i3++) {
_SFD_DATA_RANGE_CHECK((*c25_e_a)[c25_i3], 2U);
}
_SFD_DATA_RANGE_CHECK(chartInstance->c25_mb, 3U);
_SFD_DATA_RANGE_CHECK(chartInstance->c25_m, 4U);
chartInstance->c25_sfEvent = CALL_EVENT;
_SFD_CC_CALL(CHART_ENTER_DURING_FUNCTION_TAG, 23U, chartInstance->c25_sfEvent);
c25_hoistedGlobal = chartInstance->c25_mt;
c25_b_hoistedGlobal = chartInstance->c25_mb;
c25_c_hoistedGlobal = chartInstance->c25_m;
for (c25_i4 = 0; c25_i4 < 3; c25_i4++) {
c25_u[c25_i4] = (*c25_b_u)[c25_i4];
}
c25_b_mt = c25_hoistedGlobal;
c25_b_mb = c25_b_hoistedGlobal;
c25_b_m = c25_c_hoistedGlobal;
_SFD_SYMBOL_SCOPE_PUSH_EML(0U, 8U, 8U, c25_debug_family_names,
c25_debug_family_var_map);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c25_r, 0U, c25_b_sf_marshallOut,
c25_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c25_nargin, 1U, c25_b_sf_marshallOut,
c25_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c25_nargout, 2U, c25_b_sf_marshallOut,
c25_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML(c25_u, 3U, c25_c_sf_marshallOut);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c25_b_mt, 4U, c25_b_sf_marshallOut,
c25_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c25_b_mb, 5U, c25_b_sf_marshallOut,
c25_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c25_b_m, 6U, c25_b_sf_marshallOut,
c25_b_sf_marshallIn);
_SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(c25_a, 7U, c25_sf_marshallOut,
c25_sf_marshallIn);
CV_EML_FCN(0, 0);
_SFD_EML_CALL(0U, chartInstance->c25_sfEvent, 7);
c25_b = c25_b_m;
c25_y = 3.0 * c25_b;
c25_A = c25_b_mt;
c25_B = c25_b_mb + c25_y;
c25_x = c25_A;
c25_b_y = c25_B;
c25_b_x = c25_x;
c25_c_y = c25_b_y;
c25_r = c25_b_x / c25_c_y;
_SFD_EML_CALL(0U, chartInstance->c25_sfEvent, 8);
for (c25_i5 = 0; c25_i5 < 6; c25_i5++) {
c25_a[c25_i5] = 0.0;
}
_SFD_EML_CALL(0U, chartInstance->c25_sfEvent, 10);
//.........这里部分代码省略.........