From 3d3f6ea88853f9d6b31d46a5db5446e453fc014c Mon Sep 17 00:00:00 2001 From: firestar5683 <168790843+firestar5683@users.noreply.github.com> Date: Thu, 4 Jun 2026 13:49:02 -0500 Subject: [PATCH] build --- common/libcommon.a | Bin 728560 -> 728560 bytes common/params_pyx.so | Bin 771872 -> 771872 bytes panda/board/obj/body_h7.bin.signed | Bin 89796 -> 89796 bytes panda/board/obj/body_h7/bootstub.elf | Bin 112692 -> 112692 bytes panda/board/obj/body_h7/main.bin | Bin 89660 -> 89660 bytes panda/board/obj/body_h7/main.elf | Bin 403536 -> 403536 bytes panda/board/obj/bootstub.body_h7.bin | Bin 12644 -> 12644 bytes panda/board/obj/bootstub.panda.bin | Bin 11068 -> 11068 bytes panda/board/obj/bootstub.panda_h7.bin | Bin 18784 -> 18784 bytes panda/board/obj/bootstub.panda_h7_remote.bin | Bin 18784 -> 18784 bytes panda/board/obj/bootstub.panda_jungle_h7.bin | Bin 13956 -> 13956 bytes panda/board/obj/bootstub.panda_remote.bin | Bin 11068 -> 11068 bytes panda/board/obj/gitversion.h | 2 +- panda/board/obj/panda.bin.signed | Bin 81212 -> 81212 bytes panda/board/obj/panda/bootstub.elf | Bin 100760 -> 100760 bytes panda/board/obj/panda/main.bin | Bin 81076 -> 81076 bytes panda/board/obj/panda/main.elf | Bin 366400 -> 366400 bytes panda/board/obj/panda_h7.bin.signed | Bin 97824 -> 97824 bytes panda/board/obj/panda_h7/bootstub.elf | Bin 152728 -> 152728 bytes panda/board/obj/panda_h7/main.bin | Bin 97688 -> 97688 bytes panda/board/obj/panda_h7/main.elf | Bin 446700 -> 446700 bytes panda/board/obj/panda_h7_remote.bin.signed | Bin 97760 -> 97760 bytes panda/board/obj/panda_h7_remote/bootstub.elf | Bin 152736 -> 152736 bytes panda/board/obj/panda_h7_remote/main.bin | Bin 97624 -> 97624 bytes panda/board/obj/panda_h7_remote/main.elf | Bin 446708 -> 446708 bytes panda/board/obj/panda_jungle_h7.bin.signed | Bin 91784 -> 91784 bytes panda/board/obj/panda_jungle_h7/bootstub.elf | Bin 123936 -> 123936 bytes panda/board/obj/panda_jungle_h7/main.bin | Bin 91648 -> 91648 bytes panda/board/obj/panda_jungle_h7/main.elf | Bin 407384 -> 407384 bytes panda/board/obj/panda_remote.bin.signed | Bin 81172 -> 81172 bytes panda/board/obj/panda_remote/bootstub.elf | Bin 100768 -> 100768 bytes panda/board/obj/panda_remote/main.bin | Bin 81036 -> 81036 bytes panda/board/obj/panda_remote/main.elf | Bin 366604 -> 366604 bytes panda/board/obj/version | 2 +- selfdrive/locationd/models/generated/car.cpp | 684 +++--- selfdrive/locationd/models/generated/car.h | 42 +- selfdrive/locationd/models/generated/pose.cpp | 1938 ++++++++--------- selfdrive/locationd/models/generated/pose.h | 26 +- selfdrive/pandad/pandad | Bin 785576 -> 785576 bytes selfdrive/ui/ui | Bin 4405720 -> 4405720 bytes system/camerad/camerad | Bin 874136 -> 874136 bytes system/loggerd/bootlog | Bin 617808 -> 617808 bytes system/loggerd/encoderd | Bin 856944 -> 856944 bytes system/loggerd/loggerd | Bin 793048 -> 793048 bytes 44 files changed, 1347 insertions(+), 1347 deletions(-) diff --git a/common/libcommon.a b/common/libcommon.a index daaf9e0b9ff3f2ebf572a731032462a5ac066f9f..79a984d38150219707baf5b01436e6ff9b7a3eb8 100644 GIT binary patch delta 15434 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 delta 15437 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 YD+0?)Ht)?-@K41*ZO`7kiPyyc2kIFLApigX diff --git a/common/params_pyx.so b/common/params_pyx.so index c63af44bc733f49e6b3158e501c3816b06cdb908..5e97323a4e93c2a736aa637aa2b388cac08e45b0 100755 GIT binary patch delta 7887 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 delta 7944 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 delta 27 jcmdn;fo;nNwhgW}946+;M#;&Rmd(C4+kI^qpH~9_n@kFI diff --git a/panda/board/obj/body_h7/main.bin b/panda/board/obj/body_h7/main.bin index ec7bba7cae0e06bfb16d15a1360f9f9df02b0cfc..58bcb21b1d3970c43d1b3adeb14cf6bffec1366c 100755 GIT binary patch delta 23 fcmdn9hjq^$)(sj5IZ{oNlg&-c3^p4azi;iJ8G>UmbB)0AQ2{F8}}l delta 21 ccmaEo^dxD6s}6^Wd9qP*vZdu_UmbB)0AG{`HUIzs diff --git a/panda/board/obj/bootstub.panda.bin b/panda/board/obj/bootstub.panda.bin index 3b3670cae364f4c4274427e15dc2c073755850f6..5225b82f91c6dd8391cbc7c436ff559d35bc34e3 100755 GIT binary patch delta 34 qcmdlJwkK?ZubN=0X>zi;iJ5_}i>p(pJ3|A*Zo9oo}u>b(fL<=AQ delta 34 qcmdlJwkK?ZubQBVd9qP*vZbZ2i>p(pJ3|A*Zo9oo}u>b(ep9?1d diff --git a/panda/board/obj/bootstub.panda_h7.bin b/panda/board/obj/bootstub.panda_h7.bin index 6c75311dabdc251ef02478afefb01d2a6d01b549..09c1e9cf5bb5e9dd4f4ef7c73b9922bac86b4adb 100755 GIT binary patch delta 23 fcmaDbiSfZC#tog$9I2+s$>t_z2Ad~3pJxRCbMXlG delta 23 fcmaDbiSfZC#tog$946+;M#;&RmYXL!pJxRCa`6cM diff --git a/panda/board/obj/bootstub.panda_h7_remote.bin b/panda/board/obj/bootstub.panda_h7_remote.bin index 6c75311dabdc251ef02478afefb01d2a6d01b549..09c1e9cf5bb5e9dd4f4ef7c73b9922bac86b4adb 100755 GIT binary patch delta 23 fcmaDbiSfZC#tog$9I2+s$>t_z2Ad~3pJxRCbMXlG delta 23 fcmaDbiSfZC#tog$946+;M#;&RmYXL!pJxRCa`6cM diff --git a/panda/board/obj/bootstub.panda_jungle_h7.bin b/panda/board/obj/bootstub.panda_jungle_h7.bin index fd0f9ef5e508a62226ec052e10df01f516a23c77..fb11c0434613cb0e0f16447f689887155f09d2f1 100755 GIT binary patch delta 21 ccmZq4ZOPrR*MK9{G&$Ma#LQsxQG@-g0A4N#B>(^b delta 21 ccmZq4ZOPrR*MP&sJlQBY+0t_JQG@-g09`H!EC2ui diff --git a/panda/board/obj/bootstub.panda_remote.bin b/panda/board/obj/bootstub.panda_remote.bin index 3b3670cae364f4c4274427e15dc2c073755850f6..5225b82f91c6dd8391cbc7c436ff559d35bc34e3 100755 GIT binary patch delta 34 qcmdlJwkK?ZubN=0X>zi;iJ5_}i>p(pJ3|A*Zo9oo}u>b(fL<=AQ delta 34 qcmdlJwkK?ZubQBVd9qP*vZbZ2i>p(pJ3|A*Zo9oo}u>b(ep9?1d diff --git a/panda/board/obj/gitversion.h b/panda/board/obj/gitversion.h index 3d7e852b7..1ce3a787e 100644 --- a/panda/board/obj/gitversion.h +++ b/panda/board/obj/gitversion.h @@ -1,2 +1,2 @@ extern const uint8_t gitversion[19]; -const uint8_t gitversion[19] = "DEV-47c2cc99-DEBUG"; +const uint8_t gitversion[19] = "DEV-e5cc7460-DEBUG"; diff --git a/panda/board/obj/panda.bin.signed b/panda/board/obj/panda.bin.signed index 1131eb781eb46b879bbd3420fb8bf8c3c1d51302..1023134df84eef573a850ce4cb5c2c1014b91438 100644 GIT binary patch delta 153 zcmV;K0A~NZ`UJfC1h81J2xT>6V>dK5FtcE=T#SDuAIxhy*(KKxeoi(Mncq(()!S^i zM@}Y$YLawH@SZ0s4%wa=S^)@fWy?^uT!{pC+H?i*DzCVzyQ0GTLj`d|2Cd&Qm0kHg z*0_q~0u3Z&FYK%pZCX(>#qSRKWRIMN-3CW~u{VlW>&0U5CS?kDT#W@`q113tMBmgP H;*|mFk$*;F delta 153 zcmV;K0A~NZ`UJfC1h81J2sAfiGGk*oIkRA}T#SEHz!k^si(8b``i6Wr7BITAHwyw? zMIBRX(!?@>wst>&lg|1W?i><2jwx|hjYNq6jfet$jn^BBNljzlclX7K8erYfbSl6* zNf5;3@S@B0)G-;tr%(NM3^1BGACcQj>1%bAc!fS#%?W;`jV=`B+q~O|p#iKz35&9> Hn;QYBR?|o; diff --git a/panda/board/obj/panda/bootstub.elf b/panda/board/obj/panda/bootstub.elf index e5ab600d80e48ec5ab265f50c08180e0ad678742..dbd53064cd25fa0921dcae2564fdcf15e7251b50 100755 GIT binary patch delta 40 wcmbO+nQg{owhg{!f~ls-$>t_z2D&b;PND7$4GfbfnkqEcnQgB#W0VR8014I%bpQYW delta 40 wcmbO+nQg{owhg{!f+pt4M#;&RmbxykPND7$4GfbfnkqEcnQgB#W0VR800~VDd;kCd diff --git a/panda/board/obj/panda/main.bin b/panda/board/obj/panda/main.bin index da9e972f0567fba7ae2208f84a9cf3561416c900..bfc239ed5ab1ce34f26ec4842b9e342c18a09fcb 100755 GIT binary patch delta 23 fcmdn;lV!_KmJJabI8sfMlg&-c3^pfh26V>dK5FtdQ&AfSI!*6C6o1$(ent5F>u&H}QHddht| zsG4fGHyCd!CmHpwEvED_X8i-8OUNk{C|tTI0b)CzJIG`^>lg@_sVv{EcfuXWM0K!I zJBgpbX>68^>fa7_EGWJ@varKCX$HxAfSI&0ld}^Wd*_WbQ;?61WF{H8NUi+ zpF_WlQ1}PWxF&#p<$R5=@^l%zos@~!-1mido~9lhi;C35jD1gvO6Gk{fJ;4KN-eA$ zh&QqY8Y87!;W^r!udn4miuJQxW%N-jCMwT$4lZldW4{l+{TVE_UrO%SI!)Ni>3U6T H<6Z%J1~f`L diff --git a/panda/board/obj/panda_h7/bootstub.elf b/panda/board/obj/panda_h7/bootstub.elf index da905ab083642ed9e9931fe3935e2775329d8514..c1c1dae5e562dde2f9a81fef48922ac6dd478701 100755 GIT binary patch delta 31 ncmbQSl5@sN&JCTx9I2+s$>t_z2F(+L+b0GyZl4&;#Lfr+zS9cQ delta 31 ncmbQSl5@sN&JCTx946+;M#;&Rmdz7`+b0GyZl4&;#Lfr+z6%Q3 diff --git a/panda/board/obj/panda_h7/main.bin b/panda/board/obj/panda_h7/main.bin index 9c554868503afe0456bf8f8c176013a77a1495a0..8047a27daaaa88a3afadf42c304538887ce5b38e 100755 GIT binary patch delta 23 fcmbR7n{~!-)(sVRIZ{oNlg&-c3^q61l~@1(f%6JC delta 23 fcmbR7n{~!-)(sVRIZVuxjgpfsEjKsZl~@1(fb$AI diff --git a/panda/board/obj/panda_h7/main.elf b/panda/board/obj/panda_h7/main.elf index 796e24bb3e1b6f76ae9832adafd93a56a9de9422..744190b3be9980c9b5a373a42e5af373898651bd 100755 GIT binary patch delta 43 vcmaE}Q2Nb6=?xWcIZ{oNlg&-c44NC>wl}6V>dK5Ftb42AfSH%I|G5NImR@MDlcs3LXt#oRyI&i z0$L%TNHw6?0jv6V=PexyAp%M8kI-N@{1wn_e&N+J2to}@8|;gqF2sJaHv)k&{8F?a z_Y0_GvYI{_2NGWcnI_HK!^~s6#eh~3c{es^I`m6P{P?vV?D?aj*mjz delta 153 zcmV;K0A~N-`vu_p1+X~X2sAfiGGk*oIkQ0BAfSI?L(X-DDgea+WXkmXU=U{gmsYa$UOr&o;eyMSBZ5po^E Hk5B<-HY!Mm diff --git a/panda/board/obj/panda_h7_remote/bootstub.elf b/panda/board/obj/panda_h7_remote/bootstub.elf index 3bd8a9196acd6a2e9370564aae2002a3d2e5e468..59ff4ccfb7763a5cc5f9ff8f2bb5d2c8415c7909 100755 GIT binary patch delta 31 ncmZ3ml5@dI&JCTx9I2+s$>t_z2F(+L+b0GyZl4&;#Lox-z`F|S delta 31 ncmZ3ml5@dI&JCTx946+;M#;&Rmdz7`+b0GyZl4&;#Lox-zw-+5 diff --git a/panda/board/obj/panda_h7_remote/main.bin b/panda/board/obj/panda_h7_remote/main.bin index fd67759d258fcfadc6222910e40a6bce7ccf3a2e..13e46a3df2ea6aa5f61087b1c942fd53b7a9cf64 100755 GIT binary patch delta 23 fcmccdi}l7Y)(sYSIZ{oNlg&-c3^qI5l~@1(hl&a{ delta 23 fcmccdi}l7Y)(sYSIZVuxjgpfsEjK&dl~@1(hKdS2 diff --git a/panda/board/obj/panda_h7_remote/main.elf b/panda/board/obj/panda_h7_remote/main.elf index 509abeef146666f7e2ddc4d9df9da35f08b8ab52..3d2df1174cf00b6a948df1241a96949ae2d71605 100755 GIT binary patch delta 43 vcmeyeQ2NV4=?xZdIZ{oNlg&-c44NI@wmZCK1Y#y2W(H!G?GA5Qw>$;_r_d95 delta 43 vcmeyeQ2NV4=?xZdIZVuxjgpfsEt?(QwmZCK1Y#y2W(H!G?GA5Qw>$;_r(6?& diff --git a/panda/board/obj/panda_jungle_h7.bin.signed b/panda/board/obj/panda_jungle_h7.bin.signed index 8cdfa9df6a32d40305f2fa0ea3fc9bc0bc39d06c..be4a4d9721d2172ca902cb738fcea07bf8a68357 100644 GIT binary patch delta 153 zcmV;K0A~M)%>{_f1+ZYo2xT>6V>dK5FtcdJpr3z7^-Rq%x<*vhfkTa1FWf2rmdMa=TX1@{_f1+ZYo2sAfiGGk*oIkRZSpr3!3LI_g)UVd~bLC*v5m}?|5!CFg? zq5(0iu1Lz^zxP?gQUBhVnI0_n`7 Hc(4H=P5Vl+ diff --git a/panda/board/obj/panda_jungle_h7/bootstub.elf b/panda/board/obj/panda_jungle_h7/bootstub.elf index 5705980b103167cc1a954802ebcb8297b3427a89..5b7ebbf5fd3c8e5ed022037b8dbb6aa636c6daee 100755 GIT binary patch delta 27 jcmZ2*f_=dW_6>U-I8sfMlg&-c44RKRY(MJ27`+$(pSueP delta 27 jcmZ2*f_=dW_6>U-I84lwjgpfsEt`)zY(MJ27`+$(p4STx diff --git a/panda/board/obj/panda_jungle_h7/main.bin b/panda/board/obj/panda_jungle_h7/main.bin index b1ed508aade472078d34e68d483aeb9531c661de..c228035c32cc053775efb84b3ed62a01d6281c99 100755 GIT binary patch delta 23 fcmZoT!`g6$bwk22j#Sg+WOEZUgUuPoX3PfwbL9!j delta 23 fcmZoT!`g6$bwk224iocaqvT{u%gq_bX3Pfwa^(rp diff --git a/panda/board/obj/panda_jungle_h7/main.elf b/panda/board/obj/panda_jungle_h7/main.elf index 6885b65d368ecbbf7d1d22fd416e7dabb90b3ed4..0e82a2dc66d947c7b06188785359f79a187744a8 100755 GIT binary patch delta 43 vcmccdPU6Npi46(YI8sfMlg&-c44N~pwP##o1Y#y2W(H!G?HSitKO_JEzYi1z delta 43 vcmccdPU6Npi46(YI84lwjgpfsEt@m0wP##o1Y#y2W(H!G?HSitKO_JEzMB*b diff --git a/panda/board/obj/panda_remote.bin.signed b/panda/board/obj/panda_remote.bin.signed index b173864c4af7d2c231686fa728133fc34b6b6615..e0b25f7cf27530f9804eabb294626e5c9ca061ce 100644 GIT binary patch delta 153 zcmV;K0A~M``UI5v1h6o$2xT>6V>dK5Fta$YT#SEVL6l#2*213#>w{lJNFKACh19qfQp%J!0K@=BL+%= delta 153 zcmV;K0A~M``UI5v1h6o$2sAfiGGk*oIkPyhT#SDJpUJpNjp$z)_+%n4<~+=(>Z<8( zfjK$=US2#k0-PUsN&2)$JxvDow&I?AoE;@M;e`NQx~?XzZFE1n2H)G)P*cUK87iIS zZNa|e0FT0utUSnthWB^Y;ovAhcd+;(Bs{Q4qND-DA`bwd^VtTPl`umXmxE%^IWpWm H(;@*^V1GxN diff --git a/panda/board/obj/panda_remote/bootstub.elf b/panda/board/obj/panda_remote/bootstub.elf index 2b523249647037271e5445bc75092019b061ac2a..e4ccbadb9d8dc760bf0a8577a13f5af432403adb 100755 GIT binary patch delta 40 wcmZ25nQg&jwhg{!f~ls-$>t_z2D&b;PND7$4GfbfnkqEcnQgB#V^j(T01QqHjQ{`u delta 40 wcmZ25nQg&jwhg{!f+pt4M#;&RmbxykPND7$4GfbfnkqEcnQgB#V^j(T01L$olmGw# diff --git a/panda/board/obj/panda_remote/main.bin b/panda/board/obj/panda_remote/main.bin index fa0909228680c82710663ec86c0af2b7812d6543..f787ea248e0bec26a4249dd7263d5af9118198d0 100755 GIT binary patch delta 23 ecmeDA$ #include @@ -518,68 +518,68 @@ void car_update_28(double *in_x, double *in_P, double *in_z, double *in_R, doubl void car_update_31(double *in_x, double *in_P, double *in_z, double *in_R, double *in_ea) { update<1, 3, 0>(in_x, in_P, h_31, H_31, NULL, in_z, in_R, in_ea, MAHA_THRESH_31); } -void car_err_fun(double *nom_x, double *delta_x, double *out_2057434223379957831) { - err_fun(nom_x, delta_x, out_2057434223379957831); +void car_err_fun(double *nom_x, double *delta_x, double *out_2765937094321424100) { + err_fun(nom_x, delta_x, out_2765937094321424100); } -void car_inv_err_fun(double *nom_x, double *true_x, double *out_4924816816161575884) { - inv_err_fun(nom_x, true_x, out_4924816816161575884); +void car_inv_err_fun(double *nom_x, double *true_x, double *out_1382255689110899984) { + inv_err_fun(nom_x, true_x, out_1382255689110899984); } -void car_H_mod_fun(double *state, double *out_8615316232539034437) { - H_mod_fun(state, out_8615316232539034437); +void car_H_mod_fun(double *state, double *out_6175643942212596402) { + H_mod_fun(state, out_6175643942212596402); } -void car_f_fun(double *state, double dt, double *out_8159180570289535402) { - f_fun(state, dt, out_8159180570289535402); +void car_f_fun(double *state, double dt, double *out_2437881867604815540) { + f_fun(state, dt, out_2437881867604815540); } -void car_F_fun(double *state, double dt, double *out_8855850861951736689) { - F_fun(state, dt, out_8855850861951736689); +void car_F_fun(double *state, double dt, double *out_3645925778664752399) { + F_fun(state, dt, out_3645925778664752399); } -void car_h_25(double *state, double *unused, double *out_7057179500116168670) { - h_25(state, unused, out_7057179500116168670); +void car_h_25(double *state, double *unused, double *out_1347552076965832871) { + h_25(state, unused, out_1347552076965832871); } -void car_H_25(double *state, double *unused, double *out_8109981790338737725) { - H_25(state, unused, out_8109981790338737725); +void car_H_25(double *state, double *unused, double *out_6035190491488835800) { + H_25(state, unused, out_6035190491488835800); } -void car_h_24(double *state, double *unused, double *out_6854320894517861807) { - h_24(state, unused, out_6854320894517861807); +void car_h_24(double *state, double *unused, double *out_7176999251413506765) { + h_24(state, unused, out_7176999251413506765); } -void car_H_24(double *state, double *unused, double *out_8607899164193499822) { - H_24(state, unused, out_8607899164193499822); +void car_H_24(double *state, double *unused, double *out_6210520902369554390) { + H_24(state, unused, out_6210520902369554390); } -void car_h_30(double *state, double *unused, double *out_3929005809344494621) { - h_30(state, unused, out_3929005809344494621); +void car_h_30(double *state, double *unused, double *out_2798183469594716038) { + h_30(state, unused, out_2798183469594716038); } -void car_H_30(double *state, double *unused, double *out_1193291448847120970) { - H_30(state, unused, out_1193291448847120970); +void car_H_30(double *state, double *unused, double *out_881499850002780955) { + H_30(state, unused, out_881499850002780955); } -void car_h_26(double *state, double *unused, double *out_6807016989944022268) { - h_26(state, unused, out_6807016989944022268); +void car_h_26(double *state, double *unused, double *out_7428563492211452550) { + h_26(state, unused, out_7428563492211452550); } -void car_H_26(double *state, double *unused, double *out_6595258964496757667) { - H_26(state, unused, out_6595258964496757667); +void car_H_26(double *state, double *unused, double *out_8670050263346659592) { + H_26(state, unused, out_8670050263346659592); } -void car_h_27(double *state, double *unused, double *out_2055506232455323025) { - h_27(state, unused, out_2055506232455323025); +void car_h_27(double *state, double *unused, double *out_3654121190695012774) { + h_27(state, unused, out_3654121190695012774); } -void car_H_27(double *state, double *unused, double *out_3368054760647545881) { - H_27(state, unused, out_3368054760647545881); +void car_H_27(double *state, double *unused, double *out_8339292750432500781) { + H_27(state, unused, out_8339292750432500781); } -void car_h_29(double *state, double *unused, double *out_7581563669006346138) { - h_29(state, unused, out_7581563669006346138); +void car_h_29(double *state, double *unused, double *out_2203489798066129607) { + h_29(state, unused, out_2203489798066129607); } -void car_H_29(double *state, double *unused, double *out_683060104532728786) { - H_29(state, unused, out_683060104532728786); +void car_H_29(double *state, double *unused, double *out_5654298094317683686) { + H_29(state, unused, out_5654298094317683686); } -void car_h_28(double *state, double *unused, double *out_7985581021610001938) { - h_28(state, unused, out_7985581021610001938); +void car_h_28(double *state, double *unused, double *out_3781022243733688039) { + h_28(state, unused, out_3781022243733688039); } -void car_H_28(double *state, double *unused, double *out_5765459121602259360) { - H_28(state, unused, out_5765459121602259360); +void car_H_28(double *state, double *unused, double *out_3690667822752357435) { + H_28(state, unused, out_3690667822752357435); } -void car_h_31(double *state, double *unused, double *out_706085756704503771) { - h_31(state, unused, out_706085756704503771); +void car_h_31(double *state, double *unused, double *out_5423283149384518065) { + h_31(state, unused, out_5423283149384518065); } -void car_H_31(double *state, double *unused, double *out_8079335828461777297) { - H_31(state, unused, out_8079335828461777297); +void car_H_31(double *state, double *unused, double *out_6004544529611875372) { + H_31(state, unused, out_6004544529611875372); } void car_predict(double *in_x, double *in_P, double *in_Q, double dt) { predict(in_x, in_P, in_Q, dt); diff --git a/selfdrive/locationd/models/generated/car.h b/selfdrive/locationd/models/generated/car.h index 0c68b398d..627c90f74 100644 --- a/selfdrive/locationd/models/generated/car.h +++ b/selfdrive/locationd/models/generated/car.h @@ -9,27 +9,27 @@ void car_update_27(double *in_x, double *in_P, double *in_z, double *in_R, doubl void car_update_29(double *in_x, double *in_P, double *in_z, double *in_R, double *in_ea); void car_update_28(double *in_x, double *in_P, double *in_z, double *in_R, double *in_ea); void car_update_31(double *in_x, double *in_P, double *in_z, double *in_R, double *in_ea); -void car_err_fun(double *nom_x, double *delta_x, double *out_2057434223379957831); -void car_inv_err_fun(double *nom_x, double *true_x, double *out_4924816816161575884); -void car_H_mod_fun(double *state, double *out_8615316232539034437); -void car_f_fun(double *state, double dt, double *out_8159180570289535402); -void car_F_fun(double *state, double dt, double *out_8855850861951736689); -void car_h_25(double *state, double *unused, double *out_7057179500116168670); -void car_H_25(double *state, double *unused, double *out_8109981790338737725); -void car_h_24(double *state, double *unused, double *out_6854320894517861807); -void car_H_24(double *state, double *unused, double *out_8607899164193499822); -void car_h_30(double *state, double *unused, double *out_3929005809344494621); -void car_H_30(double *state, double *unused, double *out_1193291448847120970); -void car_h_26(double *state, double *unused, double *out_6807016989944022268); -void car_H_26(double *state, double *unused, double *out_6595258964496757667); -void car_h_27(double *state, double *unused, double *out_2055506232455323025); -void car_H_27(double *state, double *unused, double *out_3368054760647545881); -void car_h_29(double *state, double *unused, double *out_7581563669006346138); -void car_H_29(double *state, double *unused, double *out_683060104532728786); -void car_h_28(double *state, double *unused, double *out_7985581021610001938); -void car_H_28(double *state, double *unused, double *out_5765459121602259360); -void car_h_31(double *state, double *unused, double *out_706085756704503771); -void car_H_31(double *state, double *unused, double *out_8079335828461777297); +void car_err_fun(double *nom_x, double *delta_x, double *out_2765937094321424100); +void car_inv_err_fun(double *nom_x, double *true_x, double *out_1382255689110899984); +void car_H_mod_fun(double *state, double *out_6175643942212596402); +void car_f_fun(double *state, double dt, double *out_2437881867604815540); +void car_F_fun(double *state, double dt, double *out_3645925778664752399); +void car_h_25(double *state, double *unused, double *out_1347552076965832871); +void car_H_25(double *state, double *unused, double *out_6035190491488835800); +void car_h_24(double *state, double *unused, double *out_7176999251413506765); +void car_H_24(double *state, double *unused, double *out_6210520902369554390); +void car_h_30(double *state, double *unused, double *out_2798183469594716038); +void car_H_30(double *state, double *unused, double *out_881499850002780955); +void car_h_26(double *state, double *unused, double *out_7428563492211452550); +void car_H_26(double *state, double *unused, double *out_8670050263346659592); +void car_h_27(double *state, double *unused, double *out_3654121190695012774); +void car_H_27(double *state, double *unused, double *out_8339292750432500781); +void car_h_29(double *state, double *unused, double *out_2203489798066129607); +void car_H_29(double *state, double *unused, double *out_5654298094317683686); +void car_h_28(double *state, double *unused, double *out_3781022243733688039); +void car_H_28(double *state, double *unused, double *out_3690667822752357435); +void car_h_31(double *state, double *unused, double *out_5423283149384518065); +void car_H_31(double *state, double *unused, double *out_6004544529611875372); void car_predict(double *in_x, double *in_P, double *in_Q, double dt); void car_set_mass(double x); void car_set_rotational_inertia(double x); diff --git a/selfdrive/locationd/models/generated/pose.cpp b/selfdrive/locationd/models/generated/pose.cpp index c83cc8fd8..1366d16bb 100644 --- a/selfdrive/locationd/models/generated/pose.cpp +++ b/selfdrive/locationd/models/generated/pose.cpp @@ -17,961 +17,961 @@ const static double MAHA_THRESH_14 = 7.814727903251177; * * * This file is part of 'ekf' * ******************************************************************************/ -void err_fun(double *nom_x, double *delta_x, double *out_2423125642091007723) { - out_2423125642091007723[0] = delta_x[0] + nom_x[0]; - out_2423125642091007723[1] = delta_x[1] + nom_x[1]; - out_2423125642091007723[2] = delta_x[2] + nom_x[2]; - out_2423125642091007723[3] = delta_x[3] + nom_x[3]; - out_2423125642091007723[4] = delta_x[4] + nom_x[4]; - out_2423125642091007723[5] = delta_x[5] + nom_x[5]; - out_2423125642091007723[6] = delta_x[6] + nom_x[6]; - out_2423125642091007723[7] = delta_x[7] + nom_x[7]; - out_2423125642091007723[8] = delta_x[8] + nom_x[8]; - out_2423125642091007723[9] = delta_x[9] + nom_x[9]; - out_2423125642091007723[10] = delta_x[10] + nom_x[10]; - out_2423125642091007723[11] = delta_x[11] + nom_x[11]; - out_2423125642091007723[12] = delta_x[12] + nom_x[12]; - out_2423125642091007723[13] = delta_x[13] + nom_x[13]; - out_2423125642091007723[14] = delta_x[14] + nom_x[14]; - out_2423125642091007723[15] = delta_x[15] + nom_x[15]; - out_2423125642091007723[16] = delta_x[16] + nom_x[16]; - out_2423125642091007723[17] = delta_x[17] + nom_x[17]; +void err_fun(double *nom_x, double *delta_x, double *out_2822233615381903085) { + out_2822233615381903085[0] = delta_x[0] + nom_x[0]; + out_2822233615381903085[1] = delta_x[1] + nom_x[1]; + out_2822233615381903085[2] = delta_x[2] + nom_x[2]; + out_2822233615381903085[3] = delta_x[3] + nom_x[3]; + out_2822233615381903085[4] = delta_x[4] + nom_x[4]; + out_2822233615381903085[5] = delta_x[5] + nom_x[5]; + out_2822233615381903085[6] = delta_x[6] + nom_x[6]; + out_2822233615381903085[7] = delta_x[7] + nom_x[7]; + out_2822233615381903085[8] = delta_x[8] + nom_x[8]; + out_2822233615381903085[9] = delta_x[9] + nom_x[9]; + out_2822233615381903085[10] = delta_x[10] + nom_x[10]; + out_2822233615381903085[11] = delta_x[11] + nom_x[11]; + out_2822233615381903085[12] = delta_x[12] + nom_x[12]; + out_2822233615381903085[13] = delta_x[13] + nom_x[13]; + out_2822233615381903085[14] = delta_x[14] + nom_x[14]; + out_2822233615381903085[15] = delta_x[15] + nom_x[15]; + out_2822233615381903085[16] = delta_x[16] + nom_x[16]; + out_2822233615381903085[17] = delta_x[17] + nom_x[17]; } -void inv_err_fun(double *nom_x, double *true_x, double *out_1501585610038659930) { - out_1501585610038659930[0] = -nom_x[0] + true_x[0]; - out_1501585610038659930[1] = -nom_x[1] + true_x[1]; - out_1501585610038659930[2] = -nom_x[2] + true_x[2]; - out_1501585610038659930[3] = -nom_x[3] + true_x[3]; - out_1501585610038659930[4] = -nom_x[4] + true_x[4]; - out_1501585610038659930[5] = -nom_x[5] + true_x[5]; - out_1501585610038659930[6] = -nom_x[6] + true_x[6]; - out_1501585610038659930[7] = -nom_x[7] + true_x[7]; - out_1501585610038659930[8] = -nom_x[8] + true_x[8]; - out_1501585610038659930[9] = -nom_x[9] + true_x[9]; - out_1501585610038659930[10] = -nom_x[10] + true_x[10]; - out_1501585610038659930[11] = -nom_x[11] + true_x[11]; - out_1501585610038659930[12] = -nom_x[12] + true_x[12]; - out_1501585610038659930[13] = -nom_x[13] + true_x[13]; - out_1501585610038659930[14] = -nom_x[14] + true_x[14]; - out_1501585610038659930[15] = -nom_x[15] + true_x[15]; - out_1501585610038659930[16] = -nom_x[16] + true_x[16]; - out_1501585610038659930[17] = -nom_x[17] + true_x[17]; +void inv_err_fun(double *nom_x, double *true_x, double *out_3556797172859207138) { + out_3556797172859207138[0] = -nom_x[0] + true_x[0]; + out_3556797172859207138[1] = -nom_x[1] + true_x[1]; + out_3556797172859207138[2] = -nom_x[2] + true_x[2]; + out_3556797172859207138[3] = -nom_x[3] + true_x[3]; + out_3556797172859207138[4] = -nom_x[4] + true_x[4]; + out_3556797172859207138[5] = -nom_x[5] + true_x[5]; + out_3556797172859207138[6] = -nom_x[6] + true_x[6]; + out_3556797172859207138[7] = -nom_x[7] + true_x[7]; + out_3556797172859207138[8] = -nom_x[8] + true_x[8]; + out_3556797172859207138[9] = -nom_x[9] + true_x[9]; + out_3556797172859207138[10] = -nom_x[10] + true_x[10]; + out_3556797172859207138[11] = -nom_x[11] + true_x[11]; + out_3556797172859207138[12] = -nom_x[12] + true_x[12]; + out_3556797172859207138[13] = -nom_x[13] + true_x[13]; + out_3556797172859207138[14] = -nom_x[14] + true_x[14]; + out_3556797172859207138[15] = -nom_x[15] + true_x[15]; + out_3556797172859207138[16] = -nom_x[16] + true_x[16]; + out_3556797172859207138[17] = -nom_x[17] + true_x[17]; } -void H_mod_fun(double *state, double *out_313504174478215792) { - out_313504174478215792[0] = 1.0; - out_313504174478215792[1] = 0.0; - out_313504174478215792[2] = 0.0; - out_313504174478215792[3] = 0.0; - out_313504174478215792[4] = 0.0; - out_313504174478215792[5] = 0.0; - out_313504174478215792[6] = 0.0; - out_313504174478215792[7] = 0.0; - out_313504174478215792[8] = 0.0; - out_313504174478215792[9] = 0.0; - out_313504174478215792[10] = 0.0; - out_313504174478215792[11] = 0.0; - out_313504174478215792[12] = 0.0; - out_313504174478215792[13] = 0.0; - out_313504174478215792[14] = 0.0; - out_313504174478215792[15] = 0.0; - out_313504174478215792[16] = 0.0; - out_313504174478215792[17] = 0.0; - out_313504174478215792[18] = 0.0; - out_313504174478215792[19] = 1.0; - out_313504174478215792[20] = 0.0; - out_313504174478215792[21] = 0.0; - out_313504174478215792[22] = 0.0; - out_313504174478215792[23] = 0.0; - out_313504174478215792[24] = 0.0; - out_313504174478215792[25] = 0.0; - out_313504174478215792[26] = 0.0; - out_313504174478215792[27] = 0.0; - out_313504174478215792[28] = 0.0; - out_313504174478215792[29] = 0.0; - out_313504174478215792[30] = 0.0; - out_313504174478215792[31] = 0.0; - out_313504174478215792[32] = 0.0; - out_313504174478215792[33] = 0.0; - out_313504174478215792[34] = 0.0; - out_313504174478215792[35] = 0.0; - out_313504174478215792[36] = 0.0; - out_313504174478215792[37] = 0.0; - out_313504174478215792[38] = 1.0; - out_313504174478215792[39] = 0.0; - out_313504174478215792[40] = 0.0; - out_313504174478215792[41] = 0.0; - out_313504174478215792[42] = 0.0; - out_313504174478215792[43] = 0.0; - out_313504174478215792[44] = 0.0; - out_313504174478215792[45] = 0.0; - out_313504174478215792[46] = 0.0; - out_313504174478215792[47] = 0.0; - out_313504174478215792[48] = 0.0; - out_313504174478215792[49] = 0.0; - out_313504174478215792[50] = 0.0; - out_313504174478215792[51] = 0.0; - out_313504174478215792[52] = 0.0; - out_313504174478215792[53] = 0.0; - out_313504174478215792[54] = 0.0; - out_313504174478215792[55] = 0.0; - out_313504174478215792[56] = 0.0; - out_313504174478215792[57] = 1.0; - out_313504174478215792[58] = 0.0; - out_313504174478215792[59] = 0.0; - out_313504174478215792[60] = 0.0; - out_313504174478215792[61] = 0.0; - out_313504174478215792[62] = 0.0; - out_313504174478215792[63] = 0.0; - out_313504174478215792[64] = 0.0; - out_313504174478215792[65] = 0.0; - out_313504174478215792[66] = 0.0; - out_313504174478215792[67] = 0.0; - out_313504174478215792[68] = 0.0; - out_313504174478215792[69] = 0.0; - out_313504174478215792[70] = 0.0; - out_313504174478215792[71] = 0.0; - out_313504174478215792[72] = 0.0; - out_313504174478215792[73] = 0.0; - out_313504174478215792[74] = 0.0; - out_313504174478215792[75] = 0.0; - out_313504174478215792[76] = 1.0; - out_313504174478215792[77] = 0.0; - out_313504174478215792[78] = 0.0; - out_313504174478215792[79] = 0.0; - out_313504174478215792[80] = 0.0; - out_313504174478215792[81] = 0.0; - out_313504174478215792[82] = 0.0; - out_313504174478215792[83] = 0.0; - out_313504174478215792[84] = 0.0; - out_313504174478215792[85] = 0.0; - out_313504174478215792[86] = 0.0; - out_313504174478215792[87] = 0.0; - out_313504174478215792[88] = 0.0; - out_313504174478215792[89] = 0.0; - out_313504174478215792[90] = 0.0; - out_313504174478215792[91] = 0.0; - out_313504174478215792[92] = 0.0; - out_313504174478215792[93] = 0.0; - out_313504174478215792[94] = 0.0; - out_313504174478215792[95] = 1.0; - out_313504174478215792[96] = 0.0; - out_313504174478215792[97] = 0.0; - out_313504174478215792[98] = 0.0; - out_313504174478215792[99] = 0.0; - out_313504174478215792[100] = 0.0; - out_313504174478215792[101] = 0.0; - out_313504174478215792[102] = 0.0; - out_313504174478215792[103] = 0.0; - out_313504174478215792[104] = 0.0; - out_313504174478215792[105] = 0.0; - out_313504174478215792[106] = 0.0; - out_313504174478215792[107] = 0.0; - out_313504174478215792[108] = 0.0; - out_313504174478215792[109] = 0.0; - out_313504174478215792[110] = 0.0; - out_313504174478215792[111] = 0.0; - out_313504174478215792[112] = 0.0; - out_313504174478215792[113] = 0.0; - out_313504174478215792[114] = 1.0; - out_313504174478215792[115] = 0.0; - out_313504174478215792[116] = 0.0; - out_313504174478215792[117] = 0.0; - out_313504174478215792[118] = 0.0; - out_313504174478215792[119] = 0.0; - out_313504174478215792[120] = 0.0; - out_313504174478215792[121] = 0.0; - out_313504174478215792[122] = 0.0; - out_313504174478215792[123] = 0.0; - out_313504174478215792[124] = 0.0; - out_313504174478215792[125] = 0.0; - out_313504174478215792[126] = 0.0; - out_313504174478215792[127] = 0.0; - out_313504174478215792[128] = 0.0; - out_313504174478215792[129] = 0.0; - out_313504174478215792[130] = 0.0; - out_313504174478215792[131] = 0.0; - out_313504174478215792[132] = 0.0; - out_313504174478215792[133] = 1.0; - out_313504174478215792[134] = 0.0; - out_313504174478215792[135] = 0.0; - out_313504174478215792[136] = 0.0; - out_313504174478215792[137] = 0.0; - out_313504174478215792[138] = 0.0; - out_313504174478215792[139] = 0.0; - out_313504174478215792[140] = 0.0; - out_313504174478215792[141] = 0.0; - out_313504174478215792[142] = 0.0; - out_313504174478215792[143] = 0.0; - out_313504174478215792[144] = 0.0; - out_313504174478215792[145] = 0.0; - out_313504174478215792[146] = 0.0; - out_313504174478215792[147] = 0.0; - out_313504174478215792[148] = 0.0; - out_313504174478215792[149] = 0.0; - out_313504174478215792[150] = 0.0; - out_313504174478215792[151] = 0.0; - out_313504174478215792[152] = 1.0; - out_313504174478215792[153] = 0.0; - out_313504174478215792[154] = 0.0; - out_313504174478215792[155] = 0.0; - out_313504174478215792[156] = 0.0; - out_313504174478215792[157] = 0.0; - out_313504174478215792[158] = 0.0; - out_313504174478215792[159] = 0.0; - out_313504174478215792[160] = 0.0; - out_313504174478215792[161] = 0.0; - out_313504174478215792[162] = 0.0; - out_313504174478215792[163] = 0.0; - out_313504174478215792[164] = 0.0; - out_313504174478215792[165] = 0.0; - out_313504174478215792[166] = 0.0; - out_313504174478215792[167] = 0.0; - out_313504174478215792[168] = 0.0; - out_313504174478215792[169] = 0.0; - out_313504174478215792[170] = 0.0; - out_313504174478215792[171] = 1.0; - out_313504174478215792[172] = 0.0; - out_313504174478215792[173] = 0.0; - out_313504174478215792[174] = 0.0; - out_313504174478215792[175] = 0.0; - out_313504174478215792[176] = 0.0; - out_313504174478215792[177] = 0.0; - out_313504174478215792[178] = 0.0; - out_313504174478215792[179] = 0.0; - out_313504174478215792[180] = 0.0; - out_313504174478215792[181] = 0.0; - out_313504174478215792[182] = 0.0; - out_313504174478215792[183] = 0.0; - out_313504174478215792[184] = 0.0; - out_313504174478215792[185] = 0.0; - out_313504174478215792[186] = 0.0; - out_313504174478215792[187] = 0.0; - out_313504174478215792[188] = 0.0; - out_313504174478215792[189] = 0.0; - out_313504174478215792[190] = 1.0; - out_313504174478215792[191] = 0.0; - out_313504174478215792[192] = 0.0; - out_313504174478215792[193] = 0.0; - out_313504174478215792[194] = 0.0; - out_313504174478215792[195] = 0.0; - out_313504174478215792[196] = 0.0; - out_313504174478215792[197] = 0.0; - out_313504174478215792[198] = 0.0; - out_313504174478215792[199] = 0.0; - out_313504174478215792[200] = 0.0; - out_313504174478215792[201] = 0.0; - out_313504174478215792[202] = 0.0; - out_313504174478215792[203] = 0.0; - out_313504174478215792[204] = 0.0; - out_313504174478215792[205] = 0.0; - out_313504174478215792[206] = 0.0; - out_313504174478215792[207] = 0.0; - out_313504174478215792[208] = 0.0; - out_313504174478215792[209] = 1.0; - out_313504174478215792[210] = 0.0; - out_313504174478215792[211] = 0.0; - out_313504174478215792[212] = 0.0; - out_313504174478215792[213] = 0.0; - out_313504174478215792[214] = 0.0; - out_313504174478215792[215] = 0.0; - out_313504174478215792[216] = 0.0; - out_313504174478215792[217] = 0.0; - out_313504174478215792[218] = 0.0; - out_313504174478215792[219] = 0.0; - out_313504174478215792[220] = 0.0; - out_313504174478215792[221] = 0.0; - out_313504174478215792[222] = 0.0; - out_313504174478215792[223] = 0.0; - out_313504174478215792[224] = 0.0; - out_313504174478215792[225] = 0.0; - out_313504174478215792[226] = 0.0; - out_313504174478215792[227] = 0.0; - out_313504174478215792[228] = 1.0; - out_313504174478215792[229] = 0.0; - out_313504174478215792[230] = 0.0; - out_313504174478215792[231] = 0.0; - out_313504174478215792[232] = 0.0; - out_313504174478215792[233] = 0.0; - out_313504174478215792[234] = 0.0; - out_313504174478215792[235] = 0.0; - out_313504174478215792[236] = 0.0; - out_313504174478215792[237] = 0.0; - out_313504174478215792[238] = 0.0; - out_313504174478215792[239] = 0.0; - out_313504174478215792[240] = 0.0; - out_313504174478215792[241] = 0.0; - out_313504174478215792[242] = 0.0; - out_313504174478215792[243] = 0.0; - out_313504174478215792[244] = 0.0; - out_313504174478215792[245] = 0.0; - out_313504174478215792[246] = 0.0; - out_313504174478215792[247] = 1.0; - out_313504174478215792[248] = 0.0; - out_313504174478215792[249] = 0.0; - out_313504174478215792[250] = 0.0; - out_313504174478215792[251] = 0.0; - out_313504174478215792[252] = 0.0; - out_313504174478215792[253] = 0.0; - out_313504174478215792[254] = 0.0; - out_313504174478215792[255] = 0.0; - out_313504174478215792[256] = 0.0; - out_313504174478215792[257] = 0.0; - out_313504174478215792[258] = 0.0; - out_313504174478215792[259] = 0.0; - out_313504174478215792[260] = 0.0; - out_313504174478215792[261] = 0.0; - out_313504174478215792[262] = 0.0; - out_313504174478215792[263] = 0.0; - out_313504174478215792[264] = 0.0; - out_313504174478215792[265] = 0.0; - out_313504174478215792[266] = 1.0; - out_313504174478215792[267] = 0.0; - out_313504174478215792[268] = 0.0; - out_313504174478215792[269] = 0.0; - out_313504174478215792[270] = 0.0; - out_313504174478215792[271] = 0.0; - out_313504174478215792[272] = 0.0; - out_313504174478215792[273] = 0.0; - out_313504174478215792[274] = 0.0; - out_313504174478215792[275] = 0.0; - out_313504174478215792[276] = 0.0; - out_313504174478215792[277] = 0.0; - out_313504174478215792[278] = 0.0; - out_313504174478215792[279] = 0.0; - out_313504174478215792[280] = 0.0; - out_313504174478215792[281] = 0.0; - out_313504174478215792[282] = 0.0; - out_313504174478215792[283] = 0.0; - out_313504174478215792[284] = 0.0; - out_313504174478215792[285] = 1.0; - out_313504174478215792[286] = 0.0; - out_313504174478215792[287] = 0.0; - out_313504174478215792[288] = 0.0; - out_313504174478215792[289] = 0.0; - out_313504174478215792[290] = 0.0; - out_313504174478215792[291] = 0.0; - out_313504174478215792[292] = 0.0; - out_313504174478215792[293] = 0.0; - out_313504174478215792[294] = 0.0; - out_313504174478215792[295] = 0.0; - out_313504174478215792[296] = 0.0; - out_313504174478215792[297] = 0.0; - out_313504174478215792[298] = 0.0; - out_313504174478215792[299] = 0.0; - out_313504174478215792[300] = 0.0; - out_313504174478215792[301] = 0.0; - out_313504174478215792[302] = 0.0; - out_313504174478215792[303] = 0.0; - out_313504174478215792[304] = 1.0; - out_313504174478215792[305] = 0.0; - out_313504174478215792[306] = 0.0; - out_313504174478215792[307] = 0.0; - out_313504174478215792[308] = 0.0; - out_313504174478215792[309] = 0.0; - out_313504174478215792[310] = 0.0; - out_313504174478215792[311] = 0.0; - out_313504174478215792[312] = 0.0; - out_313504174478215792[313] = 0.0; - out_313504174478215792[314] = 0.0; - out_313504174478215792[315] = 0.0; - out_313504174478215792[316] = 0.0; - out_313504174478215792[317] = 0.0; - out_313504174478215792[318] = 0.0; - out_313504174478215792[319] = 0.0; - out_313504174478215792[320] = 0.0; - out_313504174478215792[321] = 0.0; - out_313504174478215792[322] = 0.0; - out_313504174478215792[323] = 1.0; +void H_mod_fun(double *state, double *out_4158952900173024917) { + out_4158952900173024917[0] = 1.0; + out_4158952900173024917[1] = 0.0; + out_4158952900173024917[2] = 0.0; + out_4158952900173024917[3] = 0.0; + out_4158952900173024917[4] = 0.0; + out_4158952900173024917[5] = 0.0; + out_4158952900173024917[6] = 0.0; + out_4158952900173024917[7] = 0.0; + out_4158952900173024917[8] = 0.0; + out_4158952900173024917[9] = 0.0; + out_4158952900173024917[10] = 0.0; + out_4158952900173024917[11] = 0.0; + out_4158952900173024917[12] = 0.0; + out_4158952900173024917[13] = 0.0; + out_4158952900173024917[14] = 0.0; + out_4158952900173024917[15] = 0.0; + out_4158952900173024917[16] = 0.0; + out_4158952900173024917[17] = 0.0; + out_4158952900173024917[18] = 0.0; + out_4158952900173024917[19] = 1.0; + out_4158952900173024917[20] = 0.0; + out_4158952900173024917[21] = 0.0; + out_4158952900173024917[22] = 0.0; + out_4158952900173024917[23] = 0.0; + out_4158952900173024917[24] = 0.0; + out_4158952900173024917[25] = 0.0; + out_4158952900173024917[26] = 0.0; + out_4158952900173024917[27] = 0.0; + out_4158952900173024917[28] = 0.0; + out_4158952900173024917[29] = 0.0; + out_4158952900173024917[30] = 0.0; + out_4158952900173024917[31] = 0.0; + out_4158952900173024917[32] = 0.0; + out_4158952900173024917[33] = 0.0; + out_4158952900173024917[34] = 0.0; + out_4158952900173024917[35] = 0.0; + out_4158952900173024917[36] = 0.0; + out_4158952900173024917[37] = 0.0; + out_4158952900173024917[38] = 1.0; + out_4158952900173024917[39] = 0.0; + out_4158952900173024917[40] = 0.0; + out_4158952900173024917[41] = 0.0; + out_4158952900173024917[42] = 0.0; + out_4158952900173024917[43] = 0.0; + out_4158952900173024917[44] = 0.0; + out_4158952900173024917[45] = 0.0; + out_4158952900173024917[46] = 0.0; + out_4158952900173024917[47] = 0.0; + out_4158952900173024917[48] = 0.0; + out_4158952900173024917[49] = 0.0; + out_4158952900173024917[50] = 0.0; + out_4158952900173024917[51] = 0.0; + out_4158952900173024917[52] = 0.0; + out_4158952900173024917[53] = 0.0; + out_4158952900173024917[54] = 0.0; + out_4158952900173024917[55] = 0.0; + out_4158952900173024917[56] = 0.0; + out_4158952900173024917[57] = 1.0; + out_4158952900173024917[58] = 0.0; + out_4158952900173024917[59] = 0.0; + out_4158952900173024917[60] = 0.0; + out_4158952900173024917[61] = 0.0; + out_4158952900173024917[62] = 0.0; + out_4158952900173024917[63] = 0.0; + out_4158952900173024917[64] = 0.0; + out_4158952900173024917[65] = 0.0; + out_4158952900173024917[66] = 0.0; + out_4158952900173024917[67] = 0.0; + out_4158952900173024917[68] = 0.0; + out_4158952900173024917[69] = 0.0; + out_4158952900173024917[70] = 0.0; + out_4158952900173024917[71] = 0.0; + out_4158952900173024917[72] = 0.0; + out_4158952900173024917[73] = 0.0; + out_4158952900173024917[74] = 0.0; + out_4158952900173024917[75] = 0.0; + out_4158952900173024917[76] = 1.0; + out_4158952900173024917[77] = 0.0; + out_4158952900173024917[78] = 0.0; + out_4158952900173024917[79] = 0.0; + out_4158952900173024917[80] = 0.0; + out_4158952900173024917[81] = 0.0; + out_4158952900173024917[82] = 0.0; + out_4158952900173024917[83] = 0.0; + out_4158952900173024917[84] = 0.0; + out_4158952900173024917[85] = 0.0; + out_4158952900173024917[86] = 0.0; + out_4158952900173024917[87] = 0.0; + out_4158952900173024917[88] = 0.0; + out_4158952900173024917[89] = 0.0; + out_4158952900173024917[90] = 0.0; + out_4158952900173024917[91] = 0.0; + out_4158952900173024917[92] = 0.0; + out_4158952900173024917[93] = 0.0; + out_4158952900173024917[94] = 0.0; + out_4158952900173024917[95] = 1.0; + out_4158952900173024917[96] = 0.0; + out_4158952900173024917[97] = 0.0; + out_4158952900173024917[98] = 0.0; + out_4158952900173024917[99] = 0.0; + out_4158952900173024917[100] = 0.0; + out_4158952900173024917[101] = 0.0; + out_4158952900173024917[102] = 0.0; + out_4158952900173024917[103] = 0.0; + out_4158952900173024917[104] = 0.0; + out_4158952900173024917[105] = 0.0; + out_4158952900173024917[106] = 0.0; + out_4158952900173024917[107] = 0.0; + out_4158952900173024917[108] = 0.0; + out_4158952900173024917[109] = 0.0; + out_4158952900173024917[110] = 0.0; + out_4158952900173024917[111] = 0.0; + out_4158952900173024917[112] = 0.0; + out_4158952900173024917[113] = 0.0; + out_4158952900173024917[114] = 1.0; + out_4158952900173024917[115] = 0.0; + out_4158952900173024917[116] = 0.0; + out_4158952900173024917[117] = 0.0; + out_4158952900173024917[118] = 0.0; + out_4158952900173024917[119] = 0.0; + out_4158952900173024917[120] = 0.0; + out_4158952900173024917[121] = 0.0; + out_4158952900173024917[122] = 0.0; + out_4158952900173024917[123] = 0.0; + out_4158952900173024917[124] = 0.0; + out_4158952900173024917[125] = 0.0; + out_4158952900173024917[126] = 0.0; + out_4158952900173024917[127] = 0.0; + out_4158952900173024917[128] = 0.0; + out_4158952900173024917[129] = 0.0; + out_4158952900173024917[130] = 0.0; + out_4158952900173024917[131] = 0.0; + out_4158952900173024917[132] = 0.0; + out_4158952900173024917[133] = 1.0; + out_4158952900173024917[134] = 0.0; + out_4158952900173024917[135] = 0.0; + out_4158952900173024917[136] = 0.0; + out_4158952900173024917[137] = 0.0; + out_4158952900173024917[138] = 0.0; + out_4158952900173024917[139] = 0.0; + out_4158952900173024917[140] = 0.0; + out_4158952900173024917[141] = 0.0; + out_4158952900173024917[142] = 0.0; + out_4158952900173024917[143] = 0.0; + out_4158952900173024917[144] = 0.0; + out_4158952900173024917[145] = 0.0; + out_4158952900173024917[146] = 0.0; + out_4158952900173024917[147] = 0.0; + out_4158952900173024917[148] = 0.0; + out_4158952900173024917[149] = 0.0; + out_4158952900173024917[150] = 0.0; + out_4158952900173024917[151] = 0.0; + out_4158952900173024917[152] = 1.0; + out_4158952900173024917[153] = 0.0; + out_4158952900173024917[154] = 0.0; + out_4158952900173024917[155] = 0.0; + out_4158952900173024917[156] = 0.0; + out_4158952900173024917[157] = 0.0; + out_4158952900173024917[158] = 0.0; + out_4158952900173024917[159] = 0.0; + out_4158952900173024917[160] = 0.0; + out_4158952900173024917[161] = 0.0; + out_4158952900173024917[162] = 0.0; + out_4158952900173024917[163] = 0.0; + out_4158952900173024917[164] = 0.0; + out_4158952900173024917[165] = 0.0; + out_4158952900173024917[166] = 0.0; + out_4158952900173024917[167] = 0.0; + out_4158952900173024917[168] = 0.0; + out_4158952900173024917[169] = 0.0; + out_4158952900173024917[170] = 0.0; + out_4158952900173024917[171] = 1.0; + out_4158952900173024917[172] = 0.0; + out_4158952900173024917[173] = 0.0; + out_4158952900173024917[174] = 0.0; + out_4158952900173024917[175] = 0.0; + out_4158952900173024917[176] = 0.0; + out_4158952900173024917[177] = 0.0; + out_4158952900173024917[178] = 0.0; + out_4158952900173024917[179] = 0.0; + out_4158952900173024917[180] = 0.0; + out_4158952900173024917[181] = 0.0; + out_4158952900173024917[182] = 0.0; + out_4158952900173024917[183] = 0.0; + out_4158952900173024917[184] = 0.0; + out_4158952900173024917[185] = 0.0; + out_4158952900173024917[186] = 0.0; + out_4158952900173024917[187] = 0.0; + out_4158952900173024917[188] = 0.0; + out_4158952900173024917[189] = 0.0; + out_4158952900173024917[190] = 1.0; + out_4158952900173024917[191] = 0.0; + out_4158952900173024917[192] = 0.0; + out_4158952900173024917[193] = 0.0; + out_4158952900173024917[194] = 0.0; + out_4158952900173024917[195] = 0.0; + out_4158952900173024917[196] = 0.0; + out_4158952900173024917[197] = 0.0; + out_4158952900173024917[198] = 0.0; + out_4158952900173024917[199] = 0.0; + out_4158952900173024917[200] = 0.0; + out_4158952900173024917[201] = 0.0; + out_4158952900173024917[202] = 0.0; + out_4158952900173024917[203] = 0.0; + out_4158952900173024917[204] = 0.0; + out_4158952900173024917[205] = 0.0; + out_4158952900173024917[206] = 0.0; + out_4158952900173024917[207] = 0.0; + out_4158952900173024917[208] = 0.0; + out_4158952900173024917[209] = 1.0; + out_4158952900173024917[210] = 0.0; + out_4158952900173024917[211] = 0.0; + out_4158952900173024917[212] = 0.0; + out_4158952900173024917[213] = 0.0; + out_4158952900173024917[214] = 0.0; + out_4158952900173024917[215] = 0.0; + out_4158952900173024917[216] = 0.0; + out_4158952900173024917[217] = 0.0; + out_4158952900173024917[218] = 0.0; + out_4158952900173024917[219] = 0.0; + out_4158952900173024917[220] = 0.0; + out_4158952900173024917[221] = 0.0; + out_4158952900173024917[222] = 0.0; + out_4158952900173024917[223] = 0.0; + out_4158952900173024917[224] = 0.0; + out_4158952900173024917[225] = 0.0; + out_4158952900173024917[226] = 0.0; + out_4158952900173024917[227] = 0.0; + out_4158952900173024917[228] = 1.0; + out_4158952900173024917[229] = 0.0; + out_4158952900173024917[230] = 0.0; + out_4158952900173024917[231] = 0.0; + out_4158952900173024917[232] = 0.0; + out_4158952900173024917[233] = 0.0; + out_4158952900173024917[234] = 0.0; + out_4158952900173024917[235] = 0.0; + out_4158952900173024917[236] = 0.0; + out_4158952900173024917[237] = 0.0; + out_4158952900173024917[238] = 0.0; + out_4158952900173024917[239] = 0.0; + out_4158952900173024917[240] = 0.0; + out_4158952900173024917[241] = 0.0; + out_4158952900173024917[242] = 0.0; + out_4158952900173024917[243] = 0.0; + out_4158952900173024917[244] = 0.0; + out_4158952900173024917[245] = 0.0; + out_4158952900173024917[246] = 0.0; + out_4158952900173024917[247] = 1.0; + out_4158952900173024917[248] = 0.0; + out_4158952900173024917[249] = 0.0; + out_4158952900173024917[250] = 0.0; + out_4158952900173024917[251] = 0.0; + out_4158952900173024917[252] = 0.0; + out_4158952900173024917[253] = 0.0; + out_4158952900173024917[254] = 0.0; + out_4158952900173024917[255] = 0.0; + out_4158952900173024917[256] = 0.0; + out_4158952900173024917[257] = 0.0; + out_4158952900173024917[258] = 0.0; + out_4158952900173024917[259] = 0.0; + out_4158952900173024917[260] = 0.0; + out_4158952900173024917[261] = 0.0; + out_4158952900173024917[262] = 0.0; + out_4158952900173024917[263] = 0.0; + out_4158952900173024917[264] = 0.0; + out_4158952900173024917[265] = 0.0; + out_4158952900173024917[266] = 1.0; + out_4158952900173024917[267] = 0.0; + out_4158952900173024917[268] = 0.0; + out_4158952900173024917[269] = 0.0; + out_4158952900173024917[270] = 0.0; + out_4158952900173024917[271] = 0.0; + out_4158952900173024917[272] = 0.0; + out_4158952900173024917[273] = 0.0; + out_4158952900173024917[274] = 0.0; + out_4158952900173024917[275] = 0.0; + out_4158952900173024917[276] = 0.0; + out_4158952900173024917[277] = 0.0; + out_4158952900173024917[278] = 0.0; + out_4158952900173024917[279] = 0.0; + out_4158952900173024917[280] = 0.0; + out_4158952900173024917[281] = 0.0; + out_4158952900173024917[282] = 0.0; + out_4158952900173024917[283] = 0.0; + out_4158952900173024917[284] = 0.0; + out_4158952900173024917[285] = 1.0; + out_4158952900173024917[286] = 0.0; + out_4158952900173024917[287] = 0.0; + out_4158952900173024917[288] = 0.0; + out_4158952900173024917[289] = 0.0; + out_4158952900173024917[290] = 0.0; + out_4158952900173024917[291] = 0.0; + out_4158952900173024917[292] = 0.0; + out_4158952900173024917[293] = 0.0; + out_4158952900173024917[294] = 0.0; + out_4158952900173024917[295] = 0.0; + out_4158952900173024917[296] = 0.0; + out_4158952900173024917[297] = 0.0; + out_4158952900173024917[298] = 0.0; + out_4158952900173024917[299] = 0.0; + out_4158952900173024917[300] = 0.0; + out_4158952900173024917[301] = 0.0; + out_4158952900173024917[302] = 0.0; + out_4158952900173024917[303] = 0.0; + out_4158952900173024917[304] = 1.0; + out_4158952900173024917[305] = 0.0; + out_4158952900173024917[306] = 0.0; + out_4158952900173024917[307] = 0.0; + out_4158952900173024917[308] = 0.0; + out_4158952900173024917[309] = 0.0; + out_4158952900173024917[310] = 0.0; + out_4158952900173024917[311] = 0.0; + out_4158952900173024917[312] = 0.0; + out_4158952900173024917[313] = 0.0; + out_4158952900173024917[314] = 0.0; + out_4158952900173024917[315] = 0.0; + out_4158952900173024917[316] = 0.0; + out_4158952900173024917[317] = 0.0; + out_4158952900173024917[318] = 0.0; + out_4158952900173024917[319] = 0.0; + out_4158952900173024917[320] = 0.0; + out_4158952900173024917[321] = 0.0; + out_4158952900173024917[322] = 0.0; + out_4158952900173024917[323] = 1.0; } -void f_fun(double *state, double dt, double *out_8978916703249748052) { - out_8978916703249748052[0] = atan2((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), -(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1])); - out_8978916703249748052[1] = asin(sin(dt*state[7])*cos(state[0])*cos(state[1]) - sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) + sin(state[1])*cos(dt*state[7])*cos(dt*state[8])); - out_8978916703249748052[2] = atan2(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), -(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2])); - out_8978916703249748052[3] = dt*state[12] + state[3]; - out_8978916703249748052[4] = dt*state[13] + state[4]; - out_8978916703249748052[5] = dt*state[14] + state[5]; - out_8978916703249748052[6] = state[6]; - out_8978916703249748052[7] = state[7]; - out_8978916703249748052[8] = state[8]; - out_8978916703249748052[9] = state[9]; - out_8978916703249748052[10] = state[10]; - out_8978916703249748052[11] = state[11]; - out_8978916703249748052[12] = state[12]; - out_8978916703249748052[13] = state[13]; - out_8978916703249748052[14] = state[14]; - out_8978916703249748052[15] = state[15]; - out_8978916703249748052[16] = state[16]; - out_8978916703249748052[17] = state[17]; +void f_fun(double *state, double dt, double *out_4480310224533440205) { + out_4480310224533440205[0] = atan2((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), -(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1])); + out_4480310224533440205[1] = asin(sin(dt*state[7])*cos(state[0])*cos(state[1]) - sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) + sin(state[1])*cos(dt*state[7])*cos(dt*state[8])); + out_4480310224533440205[2] = atan2(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), -(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2])); + out_4480310224533440205[3] = dt*state[12] + state[3]; + out_4480310224533440205[4] = dt*state[13] + state[4]; + out_4480310224533440205[5] = dt*state[14] + state[5]; + out_4480310224533440205[6] = state[6]; + out_4480310224533440205[7] = state[7]; + out_4480310224533440205[8] = state[8]; + out_4480310224533440205[9] = state[9]; + out_4480310224533440205[10] = state[10]; + out_4480310224533440205[11] = state[11]; + out_4480310224533440205[12] = state[12]; + out_4480310224533440205[13] = state[13]; + out_4480310224533440205[14] = state[14]; + out_4480310224533440205[15] = state[15]; + out_4480310224533440205[16] = state[16]; + out_4480310224533440205[17] = state[17]; } -void F_fun(double *state, double dt, double *out_3060487946531646253) { - out_3060487946531646253[0] = ((-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*cos(state[0])*cos(state[1]) - sin(state[0])*cos(dt*state[6])*cos(dt*state[7])*cos(state[1]))*(-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) - sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)) + ((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*cos(state[0])*cos(state[1]) - sin(dt*state[6])*sin(state[0])*cos(dt*state[7])*cos(state[1]))*(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)); - out_3060487946531646253[1] = ((-sin(dt*state[6])*sin(dt*state[8]) - sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*cos(state[1]) - (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*sin(state[1]) - sin(state[1])*cos(dt*state[6])*cos(dt*state[7])*cos(state[0]))*(-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) - sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)) + (-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))*(-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*sin(state[1]) + (-sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) + sin(dt*state[8])*cos(dt*state[6]))*cos(state[1]) - sin(dt*state[6])*sin(state[1])*cos(dt*state[7])*cos(state[0]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)); - out_3060487946531646253[2] = 0; - out_3060487946531646253[3] = 0; - out_3060487946531646253[4] = 0; - out_3060487946531646253[5] = 0; - out_3060487946531646253[6] = (-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))*(dt*cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]) + (-dt*sin(dt*state[6])*sin(dt*state[8]) - dt*sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-dt*sin(dt*state[6])*cos(dt*state[8]) + dt*sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)) + (-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) - sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))*(-dt*sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]) + (-dt*sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) - dt*cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (dt*sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - dt*sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)); - out_3060487946531646253[7] = (-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))*(-dt*sin(dt*state[6])*sin(dt*state[7])*cos(state[0])*cos(state[1]) + dt*sin(dt*state[6])*sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) - dt*sin(dt*state[6])*sin(state[1])*cos(dt*state[7])*cos(dt*state[8]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)) + (-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) - sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))*(-dt*sin(dt*state[7])*cos(dt*state[6])*cos(state[0])*cos(state[1]) + dt*sin(dt*state[8])*sin(state[0])*cos(dt*state[6])*cos(dt*state[7])*cos(state[1]) - dt*sin(state[1])*cos(dt*state[6])*cos(dt*state[7])*cos(dt*state[8]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)); - out_3060487946531646253[8] = ((dt*sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + dt*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (dt*sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - dt*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]))*(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)) + ((dt*sin(dt*state[6])*sin(dt*state[8]) + dt*sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (-dt*sin(dt*state[6])*cos(dt*state[8]) + dt*sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]))*(-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) - sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)); - out_3060487946531646253[9] = 0; - out_3060487946531646253[10] = 0; - out_3060487946531646253[11] = 0; - out_3060487946531646253[12] = 0; - out_3060487946531646253[13] = 0; - out_3060487946531646253[14] = 0; - out_3060487946531646253[15] = 0; - out_3060487946531646253[16] = 0; - out_3060487946531646253[17] = 0; - out_3060487946531646253[18] = (-sin(dt*state[7])*sin(state[0])*cos(state[1]) - sin(dt*state[8])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/sqrt(1 - pow(sin(dt*state[7])*cos(state[0])*cos(state[1]) - sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) + sin(state[1])*cos(dt*state[7])*cos(dt*state[8]), 2)); - out_3060487946531646253[19] = (-sin(dt*state[7])*sin(state[1])*cos(state[0]) + sin(dt*state[8])*sin(state[0])*sin(state[1])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))/sqrt(1 - pow(sin(dt*state[7])*cos(state[0])*cos(state[1]) - sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) + sin(state[1])*cos(dt*state[7])*cos(dt*state[8]), 2)); - out_3060487946531646253[20] = 0; - out_3060487946531646253[21] = 0; - out_3060487946531646253[22] = 0; - out_3060487946531646253[23] = 0; - out_3060487946531646253[24] = 0; - out_3060487946531646253[25] = (dt*sin(dt*state[7])*sin(dt*state[8])*sin(state[0])*cos(state[1]) - dt*sin(dt*state[7])*sin(state[1])*cos(dt*state[8]) + dt*cos(dt*state[7])*cos(state[0])*cos(state[1]))/sqrt(1 - pow(sin(dt*state[7])*cos(state[0])*cos(state[1]) - sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) + sin(state[1])*cos(dt*state[7])*cos(dt*state[8]), 2)); - out_3060487946531646253[26] = (-dt*sin(dt*state[8])*sin(state[1])*cos(dt*state[7]) - dt*sin(state[0])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))/sqrt(1 - pow(sin(dt*state[7])*cos(state[0])*cos(state[1]) - sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) + sin(state[1])*cos(dt*state[7])*cos(dt*state[8]), 2)); - out_3060487946531646253[27] = 0; - out_3060487946531646253[28] = 0; - out_3060487946531646253[29] = 0; - out_3060487946531646253[30] = 0; - out_3060487946531646253[31] = 0; - out_3060487946531646253[32] = 0; - out_3060487946531646253[33] = 0; - out_3060487946531646253[34] = 0; - out_3060487946531646253[35] = 0; - out_3060487946531646253[36] = ((sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[7]))*((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) - (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)) + ((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[7]))*(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)); - out_3060487946531646253[37] = (-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))*(-sin(dt*state[7])*sin(state[2])*cos(state[0])*cos(state[1]) + sin(dt*state[8])*sin(state[0])*sin(state[2])*cos(dt*state[7])*cos(state[1]) - sin(state[1])*sin(state[2])*cos(dt*state[7])*cos(dt*state[8]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)) + ((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) - (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))*(-sin(dt*state[7])*cos(state[0])*cos(state[1])*cos(state[2]) + sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1])*cos(state[2]) - sin(state[1])*cos(dt*state[7])*cos(dt*state[8])*cos(state[2]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)); - out_3060487946531646253[38] = ((-sin(state[0])*sin(state[2]) - sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))*(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)) + ((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (-sin(state[0])*sin(state[1])*sin(state[2]) - cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))*((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) - (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)); - out_3060487946531646253[39] = 0; - out_3060487946531646253[40] = 0; - out_3060487946531646253[41] = 0; - out_3060487946531646253[42] = 0; - out_3060487946531646253[43] = (-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))*(dt*(sin(state[0])*cos(state[2]) - sin(state[1])*sin(state[2])*cos(state[0]))*cos(dt*state[7]) - dt*(sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[7])*sin(dt*state[8]) - dt*sin(dt*state[7])*sin(state[2])*cos(dt*state[8])*cos(state[1]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)) + ((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) - (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))*(dt*(-sin(state[0])*sin(state[2]) - sin(state[1])*cos(state[0])*cos(state[2]))*cos(dt*state[7]) - dt*(sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[7])*sin(dt*state[8]) - dt*sin(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)); - out_3060487946531646253[44] = (dt*(sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*cos(dt*state[7])*cos(dt*state[8]) - dt*sin(dt*state[8])*sin(state[2])*cos(dt*state[7])*cos(state[1]))*(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)) + (dt*(sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*cos(dt*state[7])*cos(dt*state[8]) - dt*sin(dt*state[8])*cos(dt*state[7])*cos(state[1])*cos(state[2]))*((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) - (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)); - out_3060487946531646253[45] = 0; - out_3060487946531646253[46] = 0; - out_3060487946531646253[47] = 0; - out_3060487946531646253[48] = 0; - out_3060487946531646253[49] = 0; - out_3060487946531646253[50] = 0; - out_3060487946531646253[51] = 0; - out_3060487946531646253[52] = 0; - out_3060487946531646253[53] = 0; - out_3060487946531646253[54] = 0; - out_3060487946531646253[55] = 0; - out_3060487946531646253[56] = 0; - out_3060487946531646253[57] = 1; - out_3060487946531646253[58] = 0; - out_3060487946531646253[59] = 0; - out_3060487946531646253[60] = 0; - out_3060487946531646253[61] = 0; - out_3060487946531646253[62] = 0; - out_3060487946531646253[63] = 0; - out_3060487946531646253[64] = 0; - out_3060487946531646253[65] = 0; - out_3060487946531646253[66] = dt; - out_3060487946531646253[67] = 0; - out_3060487946531646253[68] = 0; - out_3060487946531646253[69] = 0; - out_3060487946531646253[70] = 0; - out_3060487946531646253[71] = 0; - out_3060487946531646253[72] = 0; - out_3060487946531646253[73] = 0; - out_3060487946531646253[74] = 0; - out_3060487946531646253[75] = 0; - out_3060487946531646253[76] = 1; - out_3060487946531646253[77] = 0; - out_3060487946531646253[78] = 0; - out_3060487946531646253[79] = 0; - out_3060487946531646253[80] = 0; - out_3060487946531646253[81] = 0; - out_3060487946531646253[82] = 0; - out_3060487946531646253[83] = 0; - out_3060487946531646253[84] = 0; - out_3060487946531646253[85] = dt; - out_3060487946531646253[86] = 0; - out_3060487946531646253[87] = 0; - out_3060487946531646253[88] = 0; - out_3060487946531646253[89] = 0; - out_3060487946531646253[90] = 0; - out_3060487946531646253[91] = 0; - out_3060487946531646253[92] = 0; - out_3060487946531646253[93] = 0; - out_3060487946531646253[94] = 0; - out_3060487946531646253[95] = 1; - out_3060487946531646253[96] = 0; - out_3060487946531646253[97] = 0; - out_3060487946531646253[98] = 0; - out_3060487946531646253[99] = 0; - out_3060487946531646253[100] = 0; - out_3060487946531646253[101] = 0; - out_3060487946531646253[102] = 0; - out_3060487946531646253[103] = 0; - out_3060487946531646253[104] = dt; - out_3060487946531646253[105] = 0; - out_3060487946531646253[106] = 0; - out_3060487946531646253[107] = 0; - out_3060487946531646253[108] = 0; - out_3060487946531646253[109] = 0; - out_3060487946531646253[110] = 0; - out_3060487946531646253[111] = 0; - out_3060487946531646253[112] = 0; - out_3060487946531646253[113] = 0; - out_3060487946531646253[114] = 1; - out_3060487946531646253[115] = 0; - out_3060487946531646253[116] = 0; - out_3060487946531646253[117] = 0; - out_3060487946531646253[118] = 0; - out_3060487946531646253[119] = 0; - out_3060487946531646253[120] = 0; - out_3060487946531646253[121] = 0; - out_3060487946531646253[122] = 0; - out_3060487946531646253[123] = 0; - out_3060487946531646253[124] = 0; - out_3060487946531646253[125] = 0; - out_3060487946531646253[126] = 0; - out_3060487946531646253[127] = 0; - out_3060487946531646253[128] = 0; - out_3060487946531646253[129] = 0; - out_3060487946531646253[130] = 0; - out_3060487946531646253[131] = 0; - out_3060487946531646253[132] = 0; - out_3060487946531646253[133] = 1; - out_3060487946531646253[134] = 0; - out_3060487946531646253[135] = 0; - out_3060487946531646253[136] = 0; - out_3060487946531646253[137] = 0; - out_3060487946531646253[138] = 0; - out_3060487946531646253[139] = 0; - out_3060487946531646253[140] = 0; - out_3060487946531646253[141] = 0; - out_3060487946531646253[142] = 0; - out_3060487946531646253[143] = 0; - out_3060487946531646253[144] = 0; - out_3060487946531646253[145] = 0; - out_3060487946531646253[146] = 0; - out_3060487946531646253[147] = 0; - out_3060487946531646253[148] = 0; - out_3060487946531646253[149] = 0; - out_3060487946531646253[150] = 0; - out_3060487946531646253[151] = 0; - out_3060487946531646253[152] = 1; - out_3060487946531646253[153] = 0; - out_3060487946531646253[154] = 0; - out_3060487946531646253[155] = 0; - out_3060487946531646253[156] = 0; - out_3060487946531646253[157] = 0; - out_3060487946531646253[158] = 0; - out_3060487946531646253[159] = 0; - out_3060487946531646253[160] = 0; - out_3060487946531646253[161] = 0; - out_3060487946531646253[162] = 0; - out_3060487946531646253[163] = 0; - out_3060487946531646253[164] = 0; - out_3060487946531646253[165] = 0; - out_3060487946531646253[166] = 0; - out_3060487946531646253[167] = 0; - out_3060487946531646253[168] = 0; - out_3060487946531646253[169] = 0; - out_3060487946531646253[170] = 0; - out_3060487946531646253[171] = 1; - out_3060487946531646253[172] = 0; - out_3060487946531646253[173] = 0; - out_3060487946531646253[174] = 0; - out_3060487946531646253[175] = 0; - out_3060487946531646253[176] = 0; - out_3060487946531646253[177] = 0; - out_3060487946531646253[178] = 0; - out_3060487946531646253[179] = 0; - out_3060487946531646253[180] = 0; - out_3060487946531646253[181] = 0; - out_3060487946531646253[182] = 0; - out_3060487946531646253[183] = 0; - out_3060487946531646253[184] = 0; - out_3060487946531646253[185] = 0; - out_3060487946531646253[186] = 0; - out_3060487946531646253[187] = 0; - out_3060487946531646253[188] = 0; - out_3060487946531646253[189] = 0; - out_3060487946531646253[190] = 1; - out_3060487946531646253[191] = 0; - out_3060487946531646253[192] = 0; - out_3060487946531646253[193] = 0; - out_3060487946531646253[194] = 0; - out_3060487946531646253[195] = 0; - out_3060487946531646253[196] = 0; - out_3060487946531646253[197] = 0; - out_3060487946531646253[198] = 0; - out_3060487946531646253[199] = 0; - out_3060487946531646253[200] = 0; - out_3060487946531646253[201] = 0; - out_3060487946531646253[202] = 0; - out_3060487946531646253[203] = 0; - out_3060487946531646253[204] = 0; - out_3060487946531646253[205] = 0; - out_3060487946531646253[206] = 0; - out_3060487946531646253[207] = 0; - out_3060487946531646253[208] = 0; - out_3060487946531646253[209] = 1; - out_3060487946531646253[210] = 0; - out_3060487946531646253[211] = 0; - out_3060487946531646253[212] = 0; - out_3060487946531646253[213] = 0; - out_3060487946531646253[214] = 0; - out_3060487946531646253[215] = 0; - out_3060487946531646253[216] = 0; - out_3060487946531646253[217] = 0; - out_3060487946531646253[218] = 0; - out_3060487946531646253[219] = 0; - out_3060487946531646253[220] = 0; - out_3060487946531646253[221] = 0; - out_3060487946531646253[222] = 0; - out_3060487946531646253[223] = 0; - out_3060487946531646253[224] = 0; - out_3060487946531646253[225] = 0; - out_3060487946531646253[226] = 0; - out_3060487946531646253[227] = 0; - out_3060487946531646253[228] = 1; - out_3060487946531646253[229] = 0; - out_3060487946531646253[230] = 0; - out_3060487946531646253[231] = 0; - out_3060487946531646253[232] = 0; - out_3060487946531646253[233] = 0; - out_3060487946531646253[234] = 0; - out_3060487946531646253[235] = 0; - out_3060487946531646253[236] = 0; - out_3060487946531646253[237] = 0; - out_3060487946531646253[238] = 0; - out_3060487946531646253[239] = 0; - out_3060487946531646253[240] = 0; - out_3060487946531646253[241] = 0; - out_3060487946531646253[242] = 0; - out_3060487946531646253[243] = 0; - out_3060487946531646253[244] = 0; - out_3060487946531646253[245] = 0; - out_3060487946531646253[246] = 0; - out_3060487946531646253[247] = 1; - out_3060487946531646253[248] = 0; - out_3060487946531646253[249] = 0; - out_3060487946531646253[250] = 0; - out_3060487946531646253[251] = 0; - out_3060487946531646253[252] = 0; - out_3060487946531646253[253] = 0; - out_3060487946531646253[254] = 0; - out_3060487946531646253[255] = 0; - out_3060487946531646253[256] = 0; - out_3060487946531646253[257] = 0; - out_3060487946531646253[258] = 0; - out_3060487946531646253[259] = 0; - out_3060487946531646253[260] = 0; - out_3060487946531646253[261] = 0; - out_3060487946531646253[262] = 0; - out_3060487946531646253[263] = 0; - out_3060487946531646253[264] = 0; - out_3060487946531646253[265] = 0; - out_3060487946531646253[266] = 1; - out_3060487946531646253[267] = 0; - out_3060487946531646253[268] = 0; - out_3060487946531646253[269] = 0; - out_3060487946531646253[270] = 0; - out_3060487946531646253[271] = 0; - out_3060487946531646253[272] = 0; - out_3060487946531646253[273] = 0; - out_3060487946531646253[274] = 0; - out_3060487946531646253[275] = 0; - out_3060487946531646253[276] = 0; - out_3060487946531646253[277] = 0; - out_3060487946531646253[278] = 0; - out_3060487946531646253[279] = 0; - out_3060487946531646253[280] = 0; - out_3060487946531646253[281] = 0; - out_3060487946531646253[282] = 0; - out_3060487946531646253[283] = 0; - out_3060487946531646253[284] = 0; - out_3060487946531646253[285] = 1; - out_3060487946531646253[286] = 0; - out_3060487946531646253[287] = 0; - out_3060487946531646253[288] = 0; - out_3060487946531646253[289] = 0; - out_3060487946531646253[290] = 0; - out_3060487946531646253[291] = 0; - out_3060487946531646253[292] = 0; - out_3060487946531646253[293] = 0; - out_3060487946531646253[294] = 0; - out_3060487946531646253[295] = 0; - out_3060487946531646253[296] = 0; - out_3060487946531646253[297] = 0; - out_3060487946531646253[298] = 0; - out_3060487946531646253[299] = 0; - out_3060487946531646253[300] = 0; - out_3060487946531646253[301] = 0; - out_3060487946531646253[302] = 0; - out_3060487946531646253[303] = 0; - out_3060487946531646253[304] = 1; - out_3060487946531646253[305] = 0; - out_3060487946531646253[306] = 0; - out_3060487946531646253[307] = 0; - out_3060487946531646253[308] = 0; - out_3060487946531646253[309] = 0; - out_3060487946531646253[310] = 0; - out_3060487946531646253[311] = 0; - out_3060487946531646253[312] = 0; - out_3060487946531646253[313] = 0; - out_3060487946531646253[314] = 0; - out_3060487946531646253[315] = 0; - out_3060487946531646253[316] = 0; - out_3060487946531646253[317] = 0; - out_3060487946531646253[318] = 0; - out_3060487946531646253[319] = 0; - out_3060487946531646253[320] = 0; - out_3060487946531646253[321] = 0; - out_3060487946531646253[322] = 0; - out_3060487946531646253[323] = 1; +void F_fun(double *state, double dt, double *out_2252133042369597057) { + out_2252133042369597057[0] = ((-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*cos(state[0])*cos(state[1]) - sin(state[0])*cos(dt*state[6])*cos(dt*state[7])*cos(state[1]))*(-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) - sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)) + ((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*cos(state[0])*cos(state[1]) - sin(dt*state[6])*sin(state[0])*cos(dt*state[7])*cos(state[1]))*(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)); + out_2252133042369597057[1] = ((-sin(dt*state[6])*sin(dt*state[8]) - sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*cos(state[1]) - (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*sin(state[1]) - sin(state[1])*cos(dt*state[6])*cos(dt*state[7])*cos(state[0]))*(-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) - sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)) + (-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))*(-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*sin(state[1]) + (-sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) + sin(dt*state[8])*cos(dt*state[6]))*cos(state[1]) - sin(dt*state[6])*sin(state[1])*cos(dt*state[7])*cos(state[0]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)); + out_2252133042369597057[2] = 0; + out_2252133042369597057[3] = 0; + out_2252133042369597057[4] = 0; + out_2252133042369597057[5] = 0; + out_2252133042369597057[6] = (-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))*(dt*cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]) + (-dt*sin(dt*state[6])*sin(dt*state[8]) - dt*sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-dt*sin(dt*state[6])*cos(dt*state[8]) + dt*sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)) + (-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) - sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))*(-dt*sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]) + (-dt*sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) - dt*cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (dt*sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - dt*sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)); + out_2252133042369597057[7] = (-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))*(-dt*sin(dt*state[6])*sin(dt*state[7])*cos(state[0])*cos(state[1]) + dt*sin(dt*state[6])*sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) - dt*sin(dt*state[6])*sin(state[1])*cos(dt*state[7])*cos(dt*state[8]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)) + (-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) - sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))*(-dt*sin(dt*state[7])*cos(dt*state[6])*cos(state[0])*cos(state[1]) + dt*sin(dt*state[8])*sin(state[0])*cos(dt*state[6])*cos(dt*state[7])*cos(state[1]) - dt*sin(state[1])*cos(dt*state[6])*cos(dt*state[7])*cos(dt*state[8]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)); + out_2252133042369597057[8] = ((dt*sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + dt*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (dt*sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - dt*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]))*(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)) + ((dt*sin(dt*state[6])*sin(dt*state[8]) + dt*sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (-dt*sin(dt*state[6])*cos(dt*state[8]) + dt*sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]))*(-(sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) + (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) - sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/(pow(-(sin(dt*state[6])*sin(dt*state[8]) + sin(dt*state[7])*cos(dt*state[6])*cos(dt*state[8]))*sin(state[1]) + (-sin(dt*state[6])*cos(dt*state[8]) + sin(dt*state[7])*sin(dt*state[8])*cos(dt*state[6]))*sin(state[0])*cos(state[1]) + cos(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2) + pow((sin(dt*state[6])*sin(dt*state[7])*sin(dt*state[8]) + cos(dt*state[6])*cos(dt*state[8]))*sin(state[0])*cos(state[1]) - (sin(dt*state[6])*sin(dt*state[7])*cos(dt*state[8]) - sin(dt*state[8])*cos(dt*state[6]))*sin(state[1]) + sin(dt*state[6])*cos(dt*state[7])*cos(state[0])*cos(state[1]), 2)); + out_2252133042369597057[9] = 0; + out_2252133042369597057[10] = 0; + out_2252133042369597057[11] = 0; + out_2252133042369597057[12] = 0; + out_2252133042369597057[13] = 0; + out_2252133042369597057[14] = 0; + out_2252133042369597057[15] = 0; + out_2252133042369597057[16] = 0; + out_2252133042369597057[17] = 0; + out_2252133042369597057[18] = (-sin(dt*state[7])*sin(state[0])*cos(state[1]) - sin(dt*state[8])*cos(dt*state[7])*cos(state[0])*cos(state[1]))/sqrt(1 - pow(sin(dt*state[7])*cos(state[0])*cos(state[1]) - sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) + sin(state[1])*cos(dt*state[7])*cos(dt*state[8]), 2)); + out_2252133042369597057[19] = (-sin(dt*state[7])*sin(state[1])*cos(state[0]) + sin(dt*state[8])*sin(state[0])*sin(state[1])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))/sqrt(1 - pow(sin(dt*state[7])*cos(state[0])*cos(state[1]) - sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) + sin(state[1])*cos(dt*state[7])*cos(dt*state[8]), 2)); + out_2252133042369597057[20] = 0; + out_2252133042369597057[21] = 0; + out_2252133042369597057[22] = 0; + out_2252133042369597057[23] = 0; + out_2252133042369597057[24] = 0; + out_2252133042369597057[25] = (dt*sin(dt*state[7])*sin(dt*state[8])*sin(state[0])*cos(state[1]) - dt*sin(dt*state[7])*sin(state[1])*cos(dt*state[8]) + dt*cos(dt*state[7])*cos(state[0])*cos(state[1]))/sqrt(1 - pow(sin(dt*state[7])*cos(state[0])*cos(state[1]) - sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) + sin(state[1])*cos(dt*state[7])*cos(dt*state[8]), 2)); + out_2252133042369597057[26] = (-dt*sin(dt*state[8])*sin(state[1])*cos(dt*state[7]) - dt*sin(state[0])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))/sqrt(1 - pow(sin(dt*state[7])*cos(state[0])*cos(state[1]) - sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1]) + sin(state[1])*cos(dt*state[7])*cos(dt*state[8]), 2)); + out_2252133042369597057[27] = 0; + out_2252133042369597057[28] = 0; + out_2252133042369597057[29] = 0; + out_2252133042369597057[30] = 0; + out_2252133042369597057[31] = 0; + out_2252133042369597057[32] = 0; + out_2252133042369597057[33] = 0; + out_2252133042369597057[34] = 0; + out_2252133042369597057[35] = 0; + out_2252133042369597057[36] = ((sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[7]))*((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) - (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)) + ((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[7]))*(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)); + out_2252133042369597057[37] = (-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))*(-sin(dt*state[7])*sin(state[2])*cos(state[0])*cos(state[1]) + sin(dt*state[8])*sin(state[0])*sin(state[2])*cos(dt*state[7])*cos(state[1]) - sin(state[1])*sin(state[2])*cos(dt*state[7])*cos(dt*state[8]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)) + ((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) - (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))*(-sin(dt*state[7])*cos(state[0])*cos(state[1])*cos(state[2]) + sin(dt*state[8])*sin(state[0])*cos(dt*state[7])*cos(state[1])*cos(state[2]) - sin(state[1])*cos(dt*state[7])*cos(dt*state[8])*cos(state[2]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)); + out_2252133042369597057[38] = ((-sin(state[0])*sin(state[2]) - sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))*(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)) + ((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (-sin(state[0])*sin(state[1])*sin(state[2]) - cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))*((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) - (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)); + out_2252133042369597057[39] = 0; + out_2252133042369597057[40] = 0; + out_2252133042369597057[41] = 0; + out_2252133042369597057[42] = 0; + out_2252133042369597057[43] = (-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))*(dt*(sin(state[0])*cos(state[2]) - sin(state[1])*sin(state[2])*cos(state[0]))*cos(dt*state[7]) - dt*(sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[7])*sin(dt*state[8]) - dt*sin(dt*state[7])*sin(state[2])*cos(dt*state[8])*cos(state[1]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)) + ((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) - (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))*(dt*(-sin(state[0])*sin(state[2]) - sin(state[1])*cos(state[0])*cos(state[2]))*cos(dt*state[7]) - dt*(sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[7])*sin(dt*state[8]) - dt*sin(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)); + out_2252133042369597057[44] = (dt*(sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*cos(dt*state[7])*cos(dt*state[8]) - dt*sin(dt*state[8])*sin(state[2])*cos(dt*state[7])*cos(state[1]))*(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)) + (dt*(sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*cos(dt*state[7])*cos(dt*state[8]) - dt*sin(dt*state[8])*cos(dt*state[7])*cos(state[1])*cos(state[2]))*((-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) - (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) - sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]))/(pow(-(sin(state[0])*sin(state[2]) + sin(state[1])*cos(state[0])*cos(state[2]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*cos(state[2]) - sin(state[2])*cos(state[0]))*sin(dt*state[8])*cos(dt*state[7]) + cos(dt*state[7])*cos(dt*state[8])*cos(state[1])*cos(state[2]), 2) + pow(-(-sin(state[0])*cos(state[2]) + sin(state[1])*sin(state[2])*cos(state[0]))*sin(dt*state[7]) + (sin(state[0])*sin(state[1])*sin(state[2]) + cos(state[0])*cos(state[2]))*sin(dt*state[8])*cos(dt*state[7]) + sin(state[2])*cos(dt*state[7])*cos(dt*state[8])*cos(state[1]), 2)); + out_2252133042369597057[45] = 0; + out_2252133042369597057[46] = 0; + out_2252133042369597057[47] = 0; + out_2252133042369597057[48] = 0; + out_2252133042369597057[49] = 0; + out_2252133042369597057[50] = 0; + out_2252133042369597057[51] = 0; + out_2252133042369597057[52] = 0; + out_2252133042369597057[53] = 0; + out_2252133042369597057[54] = 0; + out_2252133042369597057[55] = 0; + out_2252133042369597057[56] = 0; + out_2252133042369597057[57] = 1; + out_2252133042369597057[58] = 0; + out_2252133042369597057[59] = 0; + out_2252133042369597057[60] = 0; + out_2252133042369597057[61] = 0; + out_2252133042369597057[62] = 0; + out_2252133042369597057[63] = 0; + out_2252133042369597057[64] = 0; + out_2252133042369597057[65] = 0; + out_2252133042369597057[66] = dt; + out_2252133042369597057[67] = 0; + out_2252133042369597057[68] = 0; + out_2252133042369597057[69] = 0; + out_2252133042369597057[70] = 0; + out_2252133042369597057[71] = 0; + out_2252133042369597057[72] = 0; + out_2252133042369597057[73] = 0; + out_2252133042369597057[74] = 0; + out_2252133042369597057[75] = 0; + out_2252133042369597057[76] = 1; + out_2252133042369597057[77] = 0; + out_2252133042369597057[78] = 0; + out_2252133042369597057[79] = 0; + out_2252133042369597057[80] = 0; + out_2252133042369597057[81] = 0; + out_2252133042369597057[82] = 0; + out_2252133042369597057[83] = 0; + out_2252133042369597057[84] = 0; + out_2252133042369597057[85] = dt; + out_2252133042369597057[86] = 0; + out_2252133042369597057[87] = 0; + out_2252133042369597057[88] = 0; + out_2252133042369597057[89] = 0; + out_2252133042369597057[90] = 0; + out_2252133042369597057[91] = 0; + out_2252133042369597057[92] = 0; + out_2252133042369597057[93] = 0; + out_2252133042369597057[94] = 0; + out_2252133042369597057[95] = 1; + out_2252133042369597057[96] = 0; + out_2252133042369597057[97] = 0; + out_2252133042369597057[98] = 0; + out_2252133042369597057[99] = 0; + out_2252133042369597057[100] = 0; + out_2252133042369597057[101] = 0; + out_2252133042369597057[102] = 0; + out_2252133042369597057[103] = 0; + out_2252133042369597057[104] = dt; + out_2252133042369597057[105] = 0; + out_2252133042369597057[106] = 0; + out_2252133042369597057[107] = 0; + out_2252133042369597057[108] = 0; + out_2252133042369597057[109] = 0; + out_2252133042369597057[110] = 0; + out_2252133042369597057[111] = 0; + out_2252133042369597057[112] = 0; + out_2252133042369597057[113] = 0; + out_2252133042369597057[114] = 1; + out_2252133042369597057[115] = 0; + out_2252133042369597057[116] = 0; + out_2252133042369597057[117] = 0; + out_2252133042369597057[118] = 0; + out_2252133042369597057[119] = 0; + out_2252133042369597057[120] = 0; + out_2252133042369597057[121] = 0; + out_2252133042369597057[122] = 0; + out_2252133042369597057[123] = 0; + out_2252133042369597057[124] = 0; + out_2252133042369597057[125] = 0; + out_2252133042369597057[126] = 0; + out_2252133042369597057[127] = 0; + out_2252133042369597057[128] = 0; + out_2252133042369597057[129] = 0; + out_2252133042369597057[130] = 0; + out_2252133042369597057[131] = 0; + out_2252133042369597057[132] = 0; + out_2252133042369597057[133] = 1; + out_2252133042369597057[134] = 0; + out_2252133042369597057[135] = 0; + out_2252133042369597057[136] = 0; + out_2252133042369597057[137] = 0; + out_2252133042369597057[138] = 0; + out_2252133042369597057[139] = 0; + out_2252133042369597057[140] = 0; + out_2252133042369597057[141] = 0; + out_2252133042369597057[142] = 0; + out_2252133042369597057[143] = 0; + out_2252133042369597057[144] = 0; + out_2252133042369597057[145] = 0; + out_2252133042369597057[146] = 0; + out_2252133042369597057[147] = 0; + out_2252133042369597057[148] = 0; + out_2252133042369597057[149] = 0; + out_2252133042369597057[150] = 0; + out_2252133042369597057[151] = 0; + out_2252133042369597057[152] = 1; + out_2252133042369597057[153] = 0; + out_2252133042369597057[154] = 0; + out_2252133042369597057[155] = 0; + out_2252133042369597057[156] = 0; + out_2252133042369597057[157] = 0; + out_2252133042369597057[158] = 0; + out_2252133042369597057[159] = 0; + out_2252133042369597057[160] = 0; + out_2252133042369597057[161] = 0; + out_2252133042369597057[162] = 0; + out_2252133042369597057[163] = 0; + out_2252133042369597057[164] = 0; + out_2252133042369597057[165] = 0; + out_2252133042369597057[166] = 0; + out_2252133042369597057[167] = 0; + out_2252133042369597057[168] = 0; + out_2252133042369597057[169] = 0; + out_2252133042369597057[170] = 0; + out_2252133042369597057[171] = 1; + out_2252133042369597057[172] = 0; + out_2252133042369597057[173] = 0; + out_2252133042369597057[174] = 0; + out_2252133042369597057[175] = 0; + out_2252133042369597057[176] = 0; + out_2252133042369597057[177] = 0; + out_2252133042369597057[178] = 0; + out_2252133042369597057[179] = 0; + out_2252133042369597057[180] = 0; + out_2252133042369597057[181] = 0; + out_2252133042369597057[182] = 0; + out_2252133042369597057[183] = 0; + out_2252133042369597057[184] = 0; + out_2252133042369597057[185] = 0; + out_2252133042369597057[186] = 0; + out_2252133042369597057[187] = 0; + out_2252133042369597057[188] = 0; + out_2252133042369597057[189] = 0; + out_2252133042369597057[190] = 1; + out_2252133042369597057[191] = 0; + out_2252133042369597057[192] = 0; + out_2252133042369597057[193] = 0; + out_2252133042369597057[194] = 0; + out_2252133042369597057[195] = 0; + out_2252133042369597057[196] = 0; + out_2252133042369597057[197] = 0; + out_2252133042369597057[198] = 0; + out_2252133042369597057[199] = 0; + out_2252133042369597057[200] = 0; + out_2252133042369597057[201] = 0; + out_2252133042369597057[202] = 0; + out_2252133042369597057[203] = 0; + out_2252133042369597057[204] = 0; + out_2252133042369597057[205] = 0; + out_2252133042369597057[206] = 0; + out_2252133042369597057[207] = 0; + out_2252133042369597057[208] = 0; + out_2252133042369597057[209] = 1; + out_2252133042369597057[210] = 0; + out_2252133042369597057[211] = 0; + out_2252133042369597057[212] = 0; + out_2252133042369597057[213] = 0; + out_2252133042369597057[214] = 0; + out_2252133042369597057[215] = 0; + out_2252133042369597057[216] = 0; + out_2252133042369597057[217] = 0; + out_2252133042369597057[218] = 0; + out_2252133042369597057[219] = 0; + out_2252133042369597057[220] = 0; + out_2252133042369597057[221] = 0; + out_2252133042369597057[222] = 0; + out_2252133042369597057[223] = 0; + out_2252133042369597057[224] = 0; + out_2252133042369597057[225] = 0; + out_2252133042369597057[226] = 0; + out_2252133042369597057[227] = 0; + out_2252133042369597057[228] = 1; + out_2252133042369597057[229] = 0; + out_2252133042369597057[230] = 0; + out_2252133042369597057[231] = 0; + out_2252133042369597057[232] = 0; + out_2252133042369597057[233] = 0; + out_2252133042369597057[234] = 0; + out_2252133042369597057[235] = 0; + out_2252133042369597057[236] = 0; + out_2252133042369597057[237] = 0; + out_2252133042369597057[238] = 0; + out_2252133042369597057[239] = 0; + out_2252133042369597057[240] = 0; + out_2252133042369597057[241] = 0; + out_2252133042369597057[242] = 0; + out_2252133042369597057[243] = 0; + out_2252133042369597057[244] = 0; + out_2252133042369597057[245] = 0; + out_2252133042369597057[246] = 0; + out_2252133042369597057[247] = 1; + out_2252133042369597057[248] = 0; + out_2252133042369597057[249] = 0; + out_2252133042369597057[250] = 0; + out_2252133042369597057[251] = 0; + out_2252133042369597057[252] = 0; + out_2252133042369597057[253] = 0; + out_2252133042369597057[254] = 0; + out_2252133042369597057[255] = 0; + out_2252133042369597057[256] = 0; + out_2252133042369597057[257] = 0; + out_2252133042369597057[258] = 0; + out_2252133042369597057[259] = 0; + out_2252133042369597057[260] = 0; + out_2252133042369597057[261] = 0; + out_2252133042369597057[262] = 0; + out_2252133042369597057[263] = 0; + out_2252133042369597057[264] = 0; + out_2252133042369597057[265] = 0; + out_2252133042369597057[266] = 1; + out_2252133042369597057[267] = 0; + out_2252133042369597057[268] = 0; + out_2252133042369597057[269] = 0; + out_2252133042369597057[270] = 0; + out_2252133042369597057[271] = 0; + out_2252133042369597057[272] = 0; + out_2252133042369597057[273] = 0; + out_2252133042369597057[274] = 0; + out_2252133042369597057[275] = 0; + out_2252133042369597057[276] = 0; + out_2252133042369597057[277] = 0; + out_2252133042369597057[278] = 0; + out_2252133042369597057[279] = 0; + out_2252133042369597057[280] = 0; + out_2252133042369597057[281] = 0; + out_2252133042369597057[282] = 0; + out_2252133042369597057[283] = 0; + out_2252133042369597057[284] = 0; + out_2252133042369597057[285] = 1; + out_2252133042369597057[286] = 0; + out_2252133042369597057[287] = 0; + out_2252133042369597057[288] = 0; + out_2252133042369597057[289] = 0; + out_2252133042369597057[290] = 0; + out_2252133042369597057[291] = 0; + out_2252133042369597057[292] = 0; + out_2252133042369597057[293] = 0; + out_2252133042369597057[294] = 0; + out_2252133042369597057[295] = 0; + out_2252133042369597057[296] = 0; + out_2252133042369597057[297] = 0; + out_2252133042369597057[298] = 0; + out_2252133042369597057[299] = 0; + out_2252133042369597057[300] = 0; + out_2252133042369597057[301] = 0; + out_2252133042369597057[302] = 0; + out_2252133042369597057[303] = 0; + out_2252133042369597057[304] = 1; + out_2252133042369597057[305] = 0; + out_2252133042369597057[306] = 0; + out_2252133042369597057[307] = 0; + out_2252133042369597057[308] = 0; + out_2252133042369597057[309] = 0; + out_2252133042369597057[310] = 0; + out_2252133042369597057[311] = 0; + out_2252133042369597057[312] = 0; + out_2252133042369597057[313] = 0; + out_2252133042369597057[314] = 0; + out_2252133042369597057[315] = 0; + out_2252133042369597057[316] = 0; + out_2252133042369597057[317] = 0; + out_2252133042369597057[318] = 0; + out_2252133042369597057[319] = 0; + out_2252133042369597057[320] = 0; + out_2252133042369597057[321] = 0; + out_2252133042369597057[322] = 0; + out_2252133042369597057[323] = 1; } -void h_4(double *state, double *unused, double *out_2072690755108230087) { - out_2072690755108230087[0] = state[6] + state[9]; - out_2072690755108230087[1] = state[7] + state[10]; - out_2072690755108230087[2] = state[8] + state[11]; +void h_4(double *state, double *unused, double *out_1225931617160521679) { + out_1225931617160521679[0] = state[6] + state[9]; + out_1225931617160521679[1] = state[7] + state[10]; + out_1225931617160521679[2] = state[8] + state[11]; } -void H_4(double *state, double *unused, double *out_440656827576496815) { - out_440656827576496815[0] = 0; - out_440656827576496815[1] = 0; - out_440656827576496815[2] = 0; - out_440656827576496815[3] = 0; - out_440656827576496815[4] = 0; - out_440656827576496815[5] = 0; - out_440656827576496815[6] = 1; - out_440656827576496815[7] = 0; - out_440656827576496815[8] = 0; - out_440656827576496815[9] = 1; - out_440656827576496815[10] = 0; - out_440656827576496815[11] = 0; - out_440656827576496815[12] = 0; - out_440656827576496815[13] = 0; - out_440656827576496815[14] = 0; - out_440656827576496815[15] = 0; - out_440656827576496815[16] = 0; - out_440656827576496815[17] = 0; - out_440656827576496815[18] = 0; - out_440656827576496815[19] = 0; - out_440656827576496815[20] = 0; - out_440656827576496815[21] = 0; - out_440656827576496815[22] = 0; - out_440656827576496815[23] = 0; - out_440656827576496815[24] = 0; - out_440656827576496815[25] = 1; - out_440656827576496815[26] = 0; - out_440656827576496815[27] = 0; - out_440656827576496815[28] = 1; - out_440656827576496815[29] = 0; - out_440656827576496815[30] = 0; - out_440656827576496815[31] = 0; - out_440656827576496815[32] = 0; - out_440656827576496815[33] = 0; - out_440656827576496815[34] = 0; - out_440656827576496815[35] = 0; - out_440656827576496815[36] = 0; - out_440656827576496815[37] = 0; - out_440656827576496815[38] = 0; - out_440656827576496815[39] = 0; - out_440656827576496815[40] = 0; - out_440656827576496815[41] = 0; - out_440656827576496815[42] = 0; - out_440656827576496815[43] = 0; - out_440656827576496815[44] = 1; - out_440656827576496815[45] = 0; - out_440656827576496815[46] = 0; - out_440656827576496815[47] = 1; - out_440656827576496815[48] = 0; - out_440656827576496815[49] = 0; - out_440656827576496815[50] = 0; - out_440656827576496815[51] = 0; - out_440656827576496815[52] = 0; - out_440656827576496815[53] = 0; +void H_4(double *state, double *unused, double *out_3404791898118312310) { + out_3404791898118312310[0] = 0; + out_3404791898118312310[1] = 0; + out_3404791898118312310[2] = 0; + out_3404791898118312310[3] = 0; + out_3404791898118312310[4] = 0; + out_3404791898118312310[5] = 0; + out_3404791898118312310[6] = 1; + out_3404791898118312310[7] = 0; + out_3404791898118312310[8] = 0; + out_3404791898118312310[9] = 1; + out_3404791898118312310[10] = 0; + out_3404791898118312310[11] = 0; + out_3404791898118312310[12] = 0; + out_3404791898118312310[13] = 0; + out_3404791898118312310[14] = 0; + out_3404791898118312310[15] = 0; + out_3404791898118312310[16] = 0; + out_3404791898118312310[17] = 0; + out_3404791898118312310[18] = 0; + out_3404791898118312310[19] = 0; + out_3404791898118312310[20] = 0; + out_3404791898118312310[21] = 0; + out_3404791898118312310[22] = 0; + out_3404791898118312310[23] = 0; + out_3404791898118312310[24] = 0; + out_3404791898118312310[25] = 1; + out_3404791898118312310[26] = 0; + out_3404791898118312310[27] = 0; + out_3404791898118312310[28] = 1; + out_3404791898118312310[29] = 0; + out_3404791898118312310[30] = 0; + out_3404791898118312310[31] = 0; + out_3404791898118312310[32] = 0; + out_3404791898118312310[33] = 0; + out_3404791898118312310[34] = 0; + out_3404791898118312310[35] = 0; + out_3404791898118312310[36] = 0; + out_3404791898118312310[37] = 0; + out_3404791898118312310[38] = 0; + out_3404791898118312310[39] = 0; + out_3404791898118312310[40] = 0; + out_3404791898118312310[41] = 0; + out_3404791898118312310[42] = 0; + out_3404791898118312310[43] = 0; + out_3404791898118312310[44] = 1; + out_3404791898118312310[45] = 0; + out_3404791898118312310[46] = 0; + out_3404791898118312310[47] = 1; + out_3404791898118312310[48] = 0; + out_3404791898118312310[49] = 0; + out_3404791898118312310[50] = 0; + out_3404791898118312310[51] = 0; + out_3404791898118312310[52] = 0; + out_3404791898118312310[53] = 0; } -void h_10(double *state, double *unused, double *out_3685903144892211871) { - out_3685903144892211871[0] = 9.8100000000000005*sin(state[1]) - state[4]*state[8] + state[5]*state[7] + state[12] + state[15]; - out_3685903144892211871[1] = -9.8100000000000005*sin(state[0])*cos(state[1]) + state[3]*state[8] - state[5]*state[6] + state[13] + state[16]; - out_3685903144892211871[2] = -9.8100000000000005*cos(state[0])*cos(state[1]) - state[3]*state[7] + state[4]*state[6] + state[14] + state[17]; +void h_10(double *state, double *unused, double *out_8314558572170779017) { + out_8314558572170779017[0] = 9.8100000000000005*sin(state[1]) - state[4]*state[8] + state[5]*state[7] + state[12] + state[15]; + out_8314558572170779017[1] = -9.8100000000000005*sin(state[0])*cos(state[1]) + state[3]*state[8] - state[5]*state[6] + state[13] + state[16]; + out_8314558572170779017[2] = -9.8100000000000005*cos(state[0])*cos(state[1]) - state[3]*state[7] + state[4]*state[6] + state[14] + state[17]; } -void H_10(double *state, double *unused, double *out_7274933657249705055) { - out_7274933657249705055[0] = 0; - out_7274933657249705055[1] = 9.8100000000000005*cos(state[1]); - out_7274933657249705055[2] = 0; - out_7274933657249705055[3] = 0; - out_7274933657249705055[4] = -state[8]; - out_7274933657249705055[5] = state[7]; - out_7274933657249705055[6] = 0; - out_7274933657249705055[7] = state[5]; - out_7274933657249705055[8] = -state[4]; - out_7274933657249705055[9] = 0; - out_7274933657249705055[10] = 0; - out_7274933657249705055[11] = 0; - out_7274933657249705055[12] = 1; - out_7274933657249705055[13] = 0; - out_7274933657249705055[14] = 0; - out_7274933657249705055[15] = 1; - out_7274933657249705055[16] = 0; - out_7274933657249705055[17] = 0; - out_7274933657249705055[18] = -9.8100000000000005*cos(state[0])*cos(state[1]); - out_7274933657249705055[19] = 9.8100000000000005*sin(state[0])*sin(state[1]); - out_7274933657249705055[20] = 0; - out_7274933657249705055[21] = state[8]; - out_7274933657249705055[22] = 0; - out_7274933657249705055[23] = -state[6]; - out_7274933657249705055[24] = -state[5]; - out_7274933657249705055[25] = 0; - out_7274933657249705055[26] = state[3]; - out_7274933657249705055[27] = 0; - out_7274933657249705055[28] = 0; - out_7274933657249705055[29] = 0; - out_7274933657249705055[30] = 0; - out_7274933657249705055[31] = 1; - out_7274933657249705055[32] = 0; - out_7274933657249705055[33] = 0; - out_7274933657249705055[34] = 1; - out_7274933657249705055[35] = 0; - out_7274933657249705055[36] = 9.8100000000000005*sin(state[0])*cos(state[1]); - out_7274933657249705055[37] = 9.8100000000000005*sin(state[1])*cos(state[0]); - out_7274933657249705055[38] = 0; - out_7274933657249705055[39] = -state[7]; - out_7274933657249705055[40] = state[6]; - out_7274933657249705055[41] = 0; - out_7274933657249705055[42] = state[4]; - out_7274933657249705055[43] = -state[3]; - out_7274933657249705055[44] = 0; - out_7274933657249705055[45] = 0; - out_7274933657249705055[46] = 0; - out_7274933657249705055[47] = 0; - out_7274933657249705055[48] = 0; - out_7274933657249705055[49] = 0; - out_7274933657249705055[50] = 1; - out_7274933657249705055[51] = 0; - out_7274933657249705055[52] = 0; - out_7274933657249705055[53] = 1; +void H_10(double *state, double *unused, double *out_3543553484029179274) { + out_3543553484029179274[0] = 0; + out_3543553484029179274[1] = 9.8100000000000005*cos(state[1]); + out_3543553484029179274[2] = 0; + out_3543553484029179274[3] = 0; + out_3543553484029179274[4] = -state[8]; + out_3543553484029179274[5] = state[7]; + out_3543553484029179274[6] = 0; + out_3543553484029179274[7] = state[5]; + out_3543553484029179274[8] = -state[4]; + out_3543553484029179274[9] = 0; + out_3543553484029179274[10] = 0; + out_3543553484029179274[11] = 0; + out_3543553484029179274[12] = 1; + out_3543553484029179274[13] = 0; + out_3543553484029179274[14] = 0; + out_3543553484029179274[15] = 1; + out_3543553484029179274[16] = 0; + out_3543553484029179274[17] = 0; + out_3543553484029179274[18] = -9.8100000000000005*cos(state[0])*cos(state[1]); + out_3543553484029179274[19] = 9.8100000000000005*sin(state[0])*sin(state[1]); + out_3543553484029179274[20] = 0; + out_3543553484029179274[21] = state[8]; + out_3543553484029179274[22] = 0; + out_3543553484029179274[23] = -state[6]; + out_3543553484029179274[24] = -state[5]; + out_3543553484029179274[25] = 0; + out_3543553484029179274[26] = state[3]; + out_3543553484029179274[27] = 0; + out_3543553484029179274[28] = 0; + out_3543553484029179274[29] = 0; + out_3543553484029179274[30] = 0; + out_3543553484029179274[31] = 1; + out_3543553484029179274[32] = 0; + out_3543553484029179274[33] = 0; + out_3543553484029179274[34] = 1; + out_3543553484029179274[35] = 0; + out_3543553484029179274[36] = 9.8100000000000005*sin(state[0])*cos(state[1]); + out_3543553484029179274[37] = 9.8100000000000005*sin(state[1])*cos(state[0]); + out_3543553484029179274[38] = 0; + out_3543553484029179274[39] = -state[7]; + out_3543553484029179274[40] = state[6]; + out_3543553484029179274[41] = 0; + out_3543553484029179274[42] = state[4]; + out_3543553484029179274[43] = -state[3]; + out_3543553484029179274[44] = 0; + out_3543553484029179274[45] = 0; + out_3543553484029179274[46] = 0; + out_3543553484029179274[47] = 0; + out_3543553484029179274[48] = 0; + out_3543553484029179274[49] = 0; + out_3543553484029179274[50] = 1; + out_3543553484029179274[51] = 0; + out_3543553484029179274[52] = 0; + out_3543553484029179274[53] = 1; } -void h_13(double *state, double *unused, double *out_7605941513603236476) { - out_7605941513603236476[0] = state[3]; - out_7605941513603236476[1] = state[4]; - out_7605941513603236476[2] = state[5]; +void h_13(double *state, double *unused, double *out_7492025966781743409) { + out_7492025966781743409[0] = state[3]; + out_7492025966781743409[1] = state[4]; + out_7492025966781743409[2] = state[5]; } -void H_13(double *state, double *unused, double *out_3652930652908829616) { - out_3652930652908829616[0] = 0; - out_3652930652908829616[1] = 0; - out_3652930652908829616[2] = 0; - out_3652930652908829616[3] = 1; - out_3652930652908829616[4] = 0; - out_3652930652908829616[5] = 0; - out_3652930652908829616[6] = 0; - out_3652930652908829616[7] = 0; - out_3652930652908829616[8] = 0; - out_3652930652908829616[9] = 0; - out_3652930652908829616[10] = 0; - out_3652930652908829616[11] = 0; - out_3652930652908829616[12] = 0; - out_3652930652908829616[13] = 0; - out_3652930652908829616[14] = 0; - out_3652930652908829616[15] = 0; - out_3652930652908829616[16] = 0; - out_3652930652908829616[17] = 0; - out_3652930652908829616[18] = 0; - out_3652930652908829616[19] = 0; - out_3652930652908829616[20] = 0; - out_3652930652908829616[21] = 0; - out_3652930652908829616[22] = 1; - out_3652930652908829616[23] = 0; - out_3652930652908829616[24] = 0; - out_3652930652908829616[25] = 0; - out_3652930652908829616[26] = 0; - out_3652930652908829616[27] = 0; - out_3652930652908829616[28] = 0; - out_3652930652908829616[29] = 0; - out_3652930652908829616[30] = 0; - out_3652930652908829616[31] = 0; - out_3652930652908829616[32] = 0; - out_3652930652908829616[33] = 0; - out_3652930652908829616[34] = 0; - out_3652930652908829616[35] = 0; - out_3652930652908829616[36] = 0; - out_3652930652908829616[37] = 0; - out_3652930652908829616[38] = 0; - out_3652930652908829616[39] = 0; - out_3652930652908829616[40] = 0; - out_3652930652908829616[41] = 1; - out_3652930652908829616[42] = 0; - out_3652930652908829616[43] = 0; - out_3652930652908829616[44] = 0; - out_3652930652908829616[45] = 0; - out_3652930652908829616[46] = 0; - out_3652930652908829616[47] = 0; - out_3652930652908829616[48] = 0; - out_3652930652908829616[49] = 0; - out_3652930652908829616[50] = 0; - out_3652930652908829616[51] = 0; - out_3652930652908829616[52] = 0; - out_3652930652908829616[53] = 0; +void H_13(double *state, double *unused, double *out_4205839310198388619) { + out_4205839310198388619[0] = 0; + out_4205839310198388619[1] = 0; + out_4205839310198388619[2] = 0; + out_4205839310198388619[3] = 1; + out_4205839310198388619[4] = 0; + out_4205839310198388619[5] = 0; + out_4205839310198388619[6] = 0; + out_4205839310198388619[7] = 0; + out_4205839310198388619[8] = 0; + out_4205839310198388619[9] = 0; + out_4205839310198388619[10] = 0; + out_4205839310198388619[11] = 0; + out_4205839310198388619[12] = 0; + out_4205839310198388619[13] = 0; + out_4205839310198388619[14] = 0; + out_4205839310198388619[15] = 0; + out_4205839310198388619[16] = 0; + out_4205839310198388619[17] = 0; + out_4205839310198388619[18] = 0; + out_4205839310198388619[19] = 0; + out_4205839310198388619[20] = 0; + out_4205839310198388619[21] = 0; + out_4205839310198388619[22] = 1; + out_4205839310198388619[23] = 0; + out_4205839310198388619[24] = 0; + out_4205839310198388619[25] = 0; + out_4205839310198388619[26] = 0; + out_4205839310198388619[27] = 0; + out_4205839310198388619[28] = 0; + out_4205839310198388619[29] = 0; + out_4205839310198388619[30] = 0; + out_4205839310198388619[31] = 0; + out_4205839310198388619[32] = 0; + out_4205839310198388619[33] = 0; + out_4205839310198388619[34] = 0; + out_4205839310198388619[35] = 0; + out_4205839310198388619[36] = 0; + out_4205839310198388619[37] = 0; + out_4205839310198388619[38] = 0; + out_4205839310198388619[39] = 0; + out_4205839310198388619[40] = 0; + out_4205839310198388619[41] = 1; + out_4205839310198388619[42] = 0; + out_4205839310198388619[43] = 0; + out_4205839310198388619[44] = 0; + out_4205839310198388619[45] = 0; + out_4205839310198388619[46] = 0; + out_4205839310198388619[47] = 0; + out_4205839310198388619[48] = 0; + out_4205839310198388619[49] = 0; + out_4205839310198388619[50] = 0; + out_4205839310198388619[51] = 0; + out_4205839310198388619[52] = 0; + out_4205839310198388619[53] = 0; } -void h_14(double *state, double *unused, double *out_732635666688386653) { - out_732635666688386653[0] = state[6]; - out_732635666688386653[1] = state[7]; - out_732635666688386653[2] = state[8]; +void h_14(double *state, double *unused, double *out_8444019918627598165) { + out_8444019918627598165[0] = state[6]; + out_8444019918627598165[1] = state[7]; + out_8444019918627598165[2] = state[8]; } -void H_14(double *state, double *unused, double *out_4403897683915981344) { - out_4403897683915981344[0] = 0; - out_4403897683915981344[1] = 0; - out_4403897683915981344[2] = 0; - out_4403897683915981344[3] = 0; - out_4403897683915981344[4] = 0; - out_4403897683915981344[5] = 0; - out_4403897683915981344[6] = 1; - out_4403897683915981344[7] = 0; - out_4403897683915981344[8] = 0; - out_4403897683915981344[9] = 0; - out_4403897683915981344[10] = 0; - out_4403897683915981344[11] = 0; - out_4403897683915981344[12] = 0; - out_4403897683915981344[13] = 0; - out_4403897683915981344[14] = 0; - out_4403897683915981344[15] = 0; - out_4403897683915981344[16] = 0; - out_4403897683915981344[17] = 0; - out_4403897683915981344[18] = 0; - out_4403897683915981344[19] = 0; - out_4403897683915981344[20] = 0; - out_4403897683915981344[21] = 0; - out_4403897683915981344[22] = 0; - out_4403897683915981344[23] = 0; - out_4403897683915981344[24] = 0; - out_4403897683915981344[25] = 1; - out_4403897683915981344[26] = 0; - out_4403897683915981344[27] = 0; - out_4403897683915981344[28] = 0; - out_4403897683915981344[29] = 0; - out_4403897683915981344[30] = 0; - out_4403897683915981344[31] = 0; - out_4403897683915981344[32] = 0; - out_4403897683915981344[33] = 0; - out_4403897683915981344[34] = 0; - out_4403897683915981344[35] = 0; - out_4403897683915981344[36] = 0; - out_4403897683915981344[37] = 0; - out_4403897683915981344[38] = 0; - out_4403897683915981344[39] = 0; - out_4403897683915981344[40] = 0; - out_4403897683915981344[41] = 0; - out_4403897683915981344[42] = 0; - out_4403897683915981344[43] = 0; - out_4403897683915981344[44] = 1; - out_4403897683915981344[45] = 0; - out_4403897683915981344[46] = 0; - out_4403897683915981344[47] = 0; - out_4403897683915981344[48] = 0; - out_4403897683915981344[49] = 0; - out_4403897683915981344[50] = 0; - out_4403897683915981344[51] = 0; - out_4403897683915981344[52] = 0; - out_4403897683915981344[53] = 0; +void H_14(double *state, double *unused, double *out_6487580330413684606) { + out_6487580330413684606[0] = 0; + out_6487580330413684606[1] = 0; + out_6487580330413684606[2] = 0; + out_6487580330413684606[3] = 0; + out_6487580330413684606[4] = 0; + out_6487580330413684606[5] = 0; + out_6487580330413684606[6] = 1; + out_6487580330413684606[7] = 0; + out_6487580330413684606[8] = 0; + out_6487580330413684606[9] = 0; + out_6487580330413684606[10] = 0; + out_6487580330413684606[11] = 0; + out_6487580330413684606[12] = 0; + out_6487580330413684606[13] = 0; + out_6487580330413684606[14] = 0; + out_6487580330413684606[15] = 0; + out_6487580330413684606[16] = 0; + out_6487580330413684606[17] = 0; + out_6487580330413684606[18] = 0; + out_6487580330413684606[19] = 0; + out_6487580330413684606[20] = 0; + out_6487580330413684606[21] = 0; + out_6487580330413684606[22] = 0; + out_6487580330413684606[23] = 0; + out_6487580330413684606[24] = 0; + out_6487580330413684606[25] = 1; + out_6487580330413684606[26] = 0; + out_6487580330413684606[27] = 0; + out_6487580330413684606[28] = 0; + out_6487580330413684606[29] = 0; + out_6487580330413684606[30] = 0; + out_6487580330413684606[31] = 0; + out_6487580330413684606[32] = 0; + out_6487580330413684606[33] = 0; + out_6487580330413684606[34] = 0; + out_6487580330413684606[35] = 0; + out_6487580330413684606[36] = 0; + out_6487580330413684606[37] = 0; + out_6487580330413684606[38] = 0; + out_6487580330413684606[39] = 0; + out_6487580330413684606[40] = 0; + out_6487580330413684606[41] = 0; + out_6487580330413684606[42] = 0; + out_6487580330413684606[43] = 0; + out_6487580330413684606[44] = 1; + out_6487580330413684606[45] = 0; + out_6487580330413684606[46] = 0; + out_6487580330413684606[47] = 0; + out_6487580330413684606[48] = 0; + out_6487580330413684606[49] = 0; + out_6487580330413684606[50] = 0; + out_6487580330413684606[51] = 0; + out_6487580330413684606[52] = 0; + out_6487580330413684606[53] = 0; } #include #include @@ -1113,44 +1113,44 @@ void pose_update_13(double *in_x, double *in_P, double *in_z, double *in_R, doub void pose_update_14(double *in_x, double *in_P, double *in_z, double *in_R, double *in_ea) { update<3, 3, 0>(in_x, in_P, h_14, H_14, NULL, in_z, in_R, in_ea, MAHA_THRESH_14); } -void pose_err_fun(double *nom_x, double *delta_x, double *out_2423125642091007723) { - err_fun(nom_x, delta_x, out_2423125642091007723); +void pose_err_fun(double *nom_x, double *delta_x, double *out_2822233615381903085) { + err_fun(nom_x, delta_x, out_2822233615381903085); } -void pose_inv_err_fun(double *nom_x, double *true_x, double *out_1501585610038659930) { - inv_err_fun(nom_x, true_x, out_1501585610038659930); +void pose_inv_err_fun(double *nom_x, double *true_x, double *out_3556797172859207138) { + inv_err_fun(nom_x, true_x, out_3556797172859207138); } -void pose_H_mod_fun(double *state, double *out_313504174478215792) { - H_mod_fun(state, out_313504174478215792); +void pose_H_mod_fun(double *state, double *out_4158952900173024917) { + H_mod_fun(state, out_4158952900173024917); } -void pose_f_fun(double *state, double dt, double *out_8978916703249748052) { - f_fun(state, dt, out_8978916703249748052); +void pose_f_fun(double *state, double dt, double *out_4480310224533440205) { + f_fun(state, dt, out_4480310224533440205); } -void pose_F_fun(double *state, double dt, double *out_3060487946531646253) { - F_fun(state, dt, out_3060487946531646253); +void pose_F_fun(double *state, double dt, double *out_2252133042369597057) { + F_fun(state, dt, out_2252133042369597057); } -void pose_h_4(double *state, double *unused, double *out_2072690755108230087) { - h_4(state, unused, out_2072690755108230087); +void pose_h_4(double *state, double *unused, double *out_1225931617160521679) { + h_4(state, unused, out_1225931617160521679); } -void pose_H_4(double *state, double *unused, double *out_440656827576496815) { - H_4(state, unused, out_440656827576496815); +void pose_H_4(double *state, double *unused, double *out_3404791898118312310) { + H_4(state, unused, out_3404791898118312310); } -void pose_h_10(double *state, double *unused, double *out_3685903144892211871) { - h_10(state, unused, out_3685903144892211871); +void pose_h_10(double *state, double *unused, double *out_8314558572170779017) { + h_10(state, unused, out_8314558572170779017); } -void pose_H_10(double *state, double *unused, double *out_7274933657249705055) { - H_10(state, unused, out_7274933657249705055); +void pose_H_10(double *state, double *unused, double *out_3543553484029179274) { + H_10(state, unused, out_3543553484029179274); } -void pose_h_13(double *state, double *unused, double *out_7605941513603236476) { - h_13(state, unused, out_7605941513603236476); +void pose_h_13(double *state, double *unused, double *out_7492025966781743409) { + h_13(state, unused, out_7492025966781743409); } -void pose_H_13(double *state, double *unused, double *out_3652930652908829616) { - H_13(state, unused, out_3652930652908829616); +void pose_H_13(double *state, double *unused, double *out_4205839310198388619) { + H_13(state, unused, out_4205839310198388619); } -void pose_h_14(double *state, double *unused, double *out_732635666688386653) { - h_14(state, unused, out_732635666688386653); +void pose_h_14(double *state, double *unused, double *out_8444019918627598165) { + h_14(state, unused, out_8444019918627598165); } -void pose_H_14(double *state, double *unused, double *out_4403897683915981344) { - H_14(state, unused, out_4403897683915981344); +void pose_H_14(double *state, double *unused, double *out_6487580330413684606) { + H_14(state, unused, out_6487580330413684606); } void pose_predict(double *in_x, double *in_P, double *in_Q, double dt) { predict(in_x, in_P, in_Q, dt); diff --git a/selfdrive/locationd/models/generated/pose.h b/selfdrive/locationd/models/generated/pose.h index ddfc7f12b..b7e1330e1 100644 --- a/selfdrive/locationd/models/generated/pose.h +++ b/selfdrive/locationd/models/generated/pose.h @@ -5,18 +5,18 @@ void pose_update_4(double *in_x, double *in_P, double *in_z, double *in_R, doubl void pose_update_10(double *in_x, double *in_P, double *in_z, double *in_R, double *in_ea); void pose_update_13(double *in_x, double *in_P, double *in_z, double *in_R, double *in_ea); void pose_update_14(double *in_x, double *in_P, double *in_z, double *in_R, double *in_ea); -void pose_err_fun(double *nom_x, double *delta_x, double *out_2423125642091007723); -void pose_inv_err_fun(double *nom_x, double *true_x, double *out_1501585610038659930); -void pose_H_mod_fun(double *state, double *out_313504174478215792); -void pose_f_fun(double *state, double dt, double *out_8978916703249748052); -void pose_F_fun(double *state, double dt, double *out_3060487946531646253); -void pose_h_4(double *state, double *unused, double *out_2072690755108230087); -void pose_H_4(double *state, double *unused, double *out_440656827576496815); -void pose_h_10(double *state, double *unused, double *out_3685903144892211871); -void pose_H_10(double *state, double *unused, double *out_7274933657249705055); -void pose_h_13(double *state, double *unused, double *out_7605941513603236476); -void pose_H_13(double *state, double *unused, double *out_3652930652908829616); -void pose_h_14(double *state, double *unused, double *out_732635666688386653); -void pose_H_14(double *state, double *unused, double *out_4403897683915981344); +void pose_err_fun(double *nom_x, double *delta_x, double *out_2822233615381903085); +void pose_inv_err_fun(double *nom_x, double *true_x, double *out_3556797172859207138); +void pose_H_mod_fun(double *state, double *out_4158952900173024917); +void pose_f_fun(double *state, double dt, double *out_4480310224533440205); +void pose_F_fun(double *state, double dt, double *out_2252133042369597057); +void pose_h_4(double *state, double *unused, double *out_1225931617160521679); +void pose_H_4(double *state, double *unused, double *out_3404791898118312310); +void pose_h_10(double *state, double *unused, double *out_8314558572170779017); +void pose_H_10(double *state, double *unused, double *out_3543553484029179274); +void pose_h_13(double *state, double *unused, double *out_7492025966781743409); +void pose_H_13(double *state, double *unused, double *out_4205839310198388619); +void pose_h_14(double *state, double *unused, double *out_8444019918627598165); +void pose_H_14(double *state, double *unused, double *out_6487580330413684606); void pose_predict(double *in_x, double *in_P, double *in_Q, double dt); } \ No newline at end of file diff --git a/selfdrive/pandad/pandad b/selfdrive/pandad/pandad index d7b6274de86f3def1b8db05552f0088fcab67d96..3310e7f0d5b1fe05f092515c31d6ec8af2d1e665 100755 GIT binary patch delta 7901 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 diff --git a/selfdrive/ui/ui b/selfdrive/ui/ui index fa04ca10a49b74019a181849a16bd437915b2939..6cae17eb69c6de3adb3d81df6b661db821dd0747 100755 GIT binary patch delta 8450 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 b_89h8Y$*0OY#25i8-a~1EbBYU-s%4UiguHR diff --git a/system/camerad/camerad b/system/camerad/camerad index e142f44c738192b2ee4d7db9bc39b0a35b80c5eb..54bfdddfc9cca65330045eb70f6d92605aaa862c 100755 GIT binary patch delta 7902 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 delta 7942 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 delta 7934 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 diff --git a/system/loggerd/encoderd b/system/loggerd/encoderd index c25aa7d92acd6a42b8ba87332c9e2031656e3294..4f3ff4ef84354c9d16c82791f1b233fa808c1a38 100755 GIT binary patch delta 7885 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 EFOUalc>n+a delta 7942 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 delta 7942 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 LW8P_>vHJf4;0S$_