0001 function [sys, VERSION] = model_NSF_TM
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027 VERSION ='$Id:$';
0028 utils.helper.msg(utils.const.msg.MNAME, ['running ', mfilename]);
0029
0030
0031 sys = ssm();
0032
0033
0034 sys.paramnames = ...
0035 {'p_p1_N_TM_x' 'p_p2_N_TM_x' 'p_p3_N_TM_x' 'p_p4_N_TM_x' 'p_p5_N_TM_x' ...
0036 'p_g1_N_TM_x' 'p_g2_N_TM_x' 'p_g3_N_TM_x' 'p_g4_N_TM_x' 'p_g5_N_TM_x' 'p_g6_N_TM_x' ...
0037 'p_p1_N_TM_y' 'p_p2_N_TM_y' 'p_p3_N_TM_y' 'p_p4_N_TM_y' 'p_p5_N_TM_y' ...
0038 'p_g1_N_TM_y' 'p_g2_N_TM_y' 'p_g3_N_TM_y' 'p_g4_N_TM_y' 'p_g5_N_TM_y' 'p_g6_N_TM_y' ...
0039 'p_p1_N_TM_z' 'p_p2_N_TM_z' 'p_p3_N_TM_z' 'p_p4_N_TM_z' 'p_p5_N_TM_z' ...
0040 'p_g1_N_TM_z' 'p_g2_N_TM_z' 'p_g3_N_TM_z' 'p_g4_N_TM_z' 'p_g5_N_TM_z' 'p_g6_N_TM_z' ...
0041 ...
0042 'p_p1_N_TM_t' 'p_p2_N_TM_t' 'p_p3_N_TM_t' 'p_p4_N_TM_t' ...
0043 'p_g1_N_TM_t' 'p_g2_N_TM_t' 'p_g3_N_TM_t' 'p_g4_N_TM_t' 'p_g5_N_TM_t' ...
0044 'p_p1_N_TM_e' 'p_p2_N_TM_e' 'p_p3_N_TM_e' 'p_p4_N_TM_e' ...
0045 'p_g1_N_TM_e' 'p_g2_N_TM_e' 'p_g3_N_TM_e' 'p_g4_N_TM_e' 'p_g5_N_TM_e' ...
0046 'p_p1_N_TM_p' 'p_p2_N_TM_p' 'p_p3_N_TM_p' 'p_p4_N_TM_p' ...
0047 'p_g1_N_TM_p' 'p_g2_N_TM_p' 'p_g3_N_TM_p' 'p_g4_N_TM_p' 'p_g5_N_TM_p' ...
0048 ...
0049 'p_gDC_N_TM_x' 'p_gDC_N_TM_y' 'p_gDC_N_TM_z' 'p_gDC_N_TM_t' 'p_gDC_N_TM_e' 'p_gDC_N_TM_p' ...
0050 };
0051 sys.paramvalues = ...
0052 [0 0 0 0 0 ...
0053 0 0 0 0 0 0 ...
0054 0 0 0 0 0 ...
0055 0 0 0 0 0 0 ...
0056 0 0 0 0 0 ...
0057 0 0 0 0 0 0 ...
0058 ...
0059 0 0 0 0 ...
0060 0 0 0 0 0 ...
0061 0 0 0 0 ...
0062 0 0 0 0 0 ...
0063 0 0 0 0 ...
0064 0 0 0 0 0 ...
0065 ...
0066 0 0 0 0 0 0 ...
0067 ];
0068 sys.paramsigmas = ...
0069 [0 0 0 0 0 ...
0070 0 0 0 0 0 0 ...
0071 0 0 0 0 0 ...
0072 0 0 0 0 0 0 ...
0073 0 0 0 0 0 ...
0074 0 0 0 0 0 0 ...
0075 ...
0076 0 0 0 0 ...
0077 0 0 0 0 0 ...
0078 0 0 0 0 ...
0079 0 0 0 0 0 ...
0080 0 0 0 0 ...
0081 0 0 0 0 0 ...
0082 ...
0083 0 0 0 0 0 0 ...
0084 ];
0085
0086
0087 for i_params=1:length(sys.paramnames)
0088 cmd = [sys.paramnames{i_params}, '=sym(''', sys.paramnames{i_params},''');'];
0089 eval(cmd);
0090 end
0091
0092
0093
0094
0095 f = 0.1*1/sqrt(2);
0096 f1 = f* 25/20.35*1.8164e-14;
0097 A1 =[-5e-5+p_p1_N_TM_x 1 0 0 0 ;...
0098 0 -5e-5+p_p2_N_TM_x 1 0 0 ;...
0099 0 0 -5e-5+p_p3_N_TM_x 0 0 ;...
0100 0 0 0 -4.5e-5+p_p4_N_TM_x 0 ;...
0101 0 0 0 0 -1e-4+p_p5_N_TM_x];
0102 B1 =[ 0; 0; 1; 1; 1];
0103 C1 =f1*[3.409875000e-9+p_g1_N_TM_x, 0.0004114874890+p_g2_N_TM_x, 91.66094784+p_g3_N_TM_x, -90.69787011+p_g4_N_TM_x, -0.9584727300+p_g5_N_TM_x];
0104 D1 =f1*(1+p_g6_N_TM_x) ;
0105
0106 f2 = f*25/20.35*1.8106e-14;
0107 A2 =[-5e-5+p_p1_N_TM_y 1 0 0 0 ;...
0108 0 -5e-5+p_p2_N_TM_y 1 0 0 ;...
0109 0 0 -5e-5+p_p3_N_TM_y 0 0 ;...
0110 0 0 0 -4.5e-5+p_p4_N_TM_y 0 ;...
0111 0 0 0 0 -1e-4+p_p5_N_TM_y];
0112 B2 =[ 0; 0; 1; 1; 1];
0113 C2 =f2*[3.968625000e-9+p_g1_N_TM_y, 0.0004786624900+p_g2_N_TM_y, 106.6504479+p_g3_N_TM_y, -105.5263929+p_g4_N_TM_y, -1.119200000+p_g5_N_TM_y];
0114 D2 =f2*(1+p_g6_N_TM_y) ;
0115
0116 f3 = f*25/20.35*1.8262e-13;
0117 A3 =[-5e-5+p_p1_N_TM_z 1 0 0 0 ;...
0118 0 -5e-5+p_p2_N_TM_z 1 0 0 ;...
0119 0 0 -5e-5+p_p3_N_TM_z 0 0 ;...
0120 0 0 0 -4.5e-5+p_p4_N_TM_z 0 ;...
0121 0 0 0 0 -1e-4+p_p5_N_TM_z];
0122 B3 =[ 0; 0; 1; 1; 1];
0123 C3 =f3*[2.322875000e-9+p_g1_N_TM_z, 0.0002807874940+p_g2_N_TM_z, 62.49814869+p_g3_N_TM_z, -61.84802733+p_g4_N_TM_z, -0.6460363600+p_g5_N_TM_z];
0124 D3 =f3*(1+p_g6_N_TM_z) ;
0125
0126 f4 = f*25/20.35*1.2985e-11;
0127 A4 =[-9.5e-5+p_p1_N_TM_t 1 0 0 ;...
0128 0 -9.5e-5+p_p2_N_TM_t 0 0 ;...
0129 0 0 -9e-5+p_p3_N_TM_t 0 ;...
0130 0 0 0 -1e-4+p_p4_N_TM_t];
0131 B4 =[ 0; 1; 1; 1 ];
0132 C4 =f4*[-0.001894924902+p_g1_N_TM_t, 38.36974950+p_g2_N_TM_t, 170.7544552+p_g3_N_TM_t, -209.1199847+p_g4_N_TM_t ];
0133 D4 =f4*(1+p_g5_N_TM_t) ;
0134
0135 f5 = f*25/20.35*1.2932e-11;
0136 A5 =[-9.5e-5+p_p1_N_TM_e 1 0 0 ;...
0137 0 -9.5e-5+p_p2_N_TM_e 1 0 ;...
0138 0 0 -9.5e-5+p_p3_N_TM_e 0 ;...
0139 0 0 0 -1e-4+p_p4_N_TM_e];
0140 B5 =[ 0; 0; 1; 1 ];
0141 C5 =f5*[8.897160875e-9+p_g1_N_TM_e, -0.001959277150+p_g2_N_TM_e, 392.6841350+p_g3_N_TM_e, -392.6800000+p_g4_N_TM_e ];
0142 D5 =f5*(1+p_g5_N_TM_e) ;
0143
0144 f6 = f*25/20.35*2.5628e-12;
0145 A6 =[-9.5e-5+p_p1_N_TM_p 1 0 0 ;...
0146 0 -9.5e-5+p_p2_N_TM_p 1 0 ;...
0147 0 0 -9.5e-5+p_p3_N_TM_p 0 ;...
0148 0 0 0 -1e-4+p_p4_N_TM_p];
0149 B6 =[ 0; 0; 1; 1 ];
0150 C6 =f6*[1.560165288e-8+p_g1_N_TM_p, -0.003439734350+p_g2_N_TM_p, 689.4850150+p_g3_N_TM_p, -689.4800000+p_g4_N_TM_p ];
0151 D6 =f6*(1+p_g5_N_TM_p) ;
0152
0153 A =blkdiag(A1, A2, A3, A4, A5, A6, A1, A2, A3, A4, A5, A6);
0154 B_TM_noise =blkdiag(B1, B2, B3, B4, B5, B6, B1, B2, B3, B4, B5, B6);
0155 C =blkdiag(C1, C2, C3, C4, C5, C6, C1, C2, C3, C4, C5, C6);
0156 D_TM_noise =blkdiag(D1, D2, D3, D4, D5, D6, D1, D2, D3, D4, D5, D6);
0157
0158
0159 B_TM_DC =zeros(54,12);
0160 D_TM_DC =eye(12) + diag([p_gDC_N_TM_x, p_gDC_N_TM_y, p_gDC_N_TM_z, p_gDC_N_TM_t, p_gDC_N_TM_e, p_gDC_N_TM_p, ...
0161 p_gDC_N_TM_x, p_gDC_N_TM_y, p_gDC_N_TM_z, p_gDC_N_TM_t, p_gDC_N_TM_e, p_gDC_N_TM_p ]);
0162
0163
0164
0165
0166
0167
0168
0169 sys.name = 'NSF_TM';
0170
0171 sys.amats = {A};
0172 sys.bmats = {B_TM_noise B_TM_DC};
0173 sys.cmats = {C};
0174 sys.dmats = {D_TM_noise D_TM_DC};
0175 sys.timestep = 0;
0176
0177 sys.ssnames = {'NSF_TM'};
0178
0179 sys.inputnames = {'Noise_F_TM' 'DC_F_TM'};
0180 sys.inputvarnames = ...
0181 {{'n_fx1_TM' 'n_fy1_TM' 'n_fz1_TM' 'n_tx1_TM' 'n_ty1_TM' 'n_tz1_TM' ...
0182 'n_fx2_TM' 'n_fy2_TM' 'n_fz2_TM' 'n_tx2_TM' 'n_ty2_TM' 'n_tz2_TM'} ...
0183 {'DC_fx1_TM' 'DC_fy1_TM' 'DC_fz1_TM' 'DC_tx1_TM' 'DC_ty1_TM' 'DC_tz1_TM' ...
0184 'DC_fx2_TM' 'DC_fy2_TM' 'DC_fz2_TM' 'DC_tx2_TM' 'DC_ty2_TM' 'DC_tz2_TM'}...
0185 };
0186
0187 sys.outputnames = {'Dist_F_TM'};
0188 sys.outputvarnames = ...
0189 {{'Dist_fx1_TM' 'Dist_fy1_TM' 'Dist_fz1_TM' 'Dist_tx1_TM' 'Dist_ty1_TM' 'Dist_tz1_TM' ...
0190 'Dist_fx2_TM' 'Dist_fy2_TM' 'Dist_fz2_TM' 'Dist_tx2_TM' 'Dist_ty2_TM' 'Dist_tz2_TM'}};
0191
0192 end