⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 windforceonvessel.c

📁 船舶荷载计算程序
💻 C
📖 第 1 页 / 共 2 页
字号:
    mclPrintArray(mclVv(Tab10_2_3, "Tab10_2_3"), "Tab10_2_3");
    /*
     * for i=1:3
     */
    {
        int v_ = mclForIntStart(1);
        int e_ = 3;
        if (v_ > e_) {
            mlfAssign(&i, _mxarray5_);
        } else {
            /*
             * 
             * switch PerVesData(15)%船型:1-矿石、2-油船、其他-货船等。
             * case 1
             * if VesLoadCon(i)==3
             * Axwin=10^(0.648+0.55.*log(DW))
             * Aywin=10^(0.427+0.48.*log(DW))
             * else
             * Axwin=10^(0.733+0.601.*log(DW))
             * Aywin=10^(0.377+0.533.*log(DW))
             * end
             * case 2
             * if VesLoadCon(i)==3
             * Axwin=10^(0.485+0.574.*log(DW))
             * Aywin=10^(0.116+0.539.*log(DW))
             * else
             * Axwin=10^(0.618+0.62.*log(DW))
             * Aywin=10^(0.164+0.575.*log(DW))
             * end
             * otherwise
             * if VesLoadCon(i)==3
             * Axwin=10^(-0.036+0.742.*log(DW))
             * Aywin=10^(-0.107+0.621.*log(DW))
             * else
             * Axwin=10^(0.283+0.727.*log(DW))
             * Aywin=10^(0.019+0.628.*log(DW))
             * end
             * end
             * if L<50
             * Cwinpx=1;
             * elseif L>250
             * Cwinpx=0.60;
             * else
             * Cwinpx=interp1(Tab10_2_3(1,:),Tab10_2_3(2,:),PerVesData(2));
             * end
             * if B<50
             * Cwinpy=1;
             * elseif B>250
             * Cwinpy=0.6;
             * else
             * Cwinpy=interp1(Tab10_2_3(1,:),Tab10_2_3(2,:),PerVesData(3));
             * end
             * Fxwin=73.6.*(10e-5).*Axwin.*Vwin^2.*Cwinpx;
             * Fywin=49.*(10e-5).*Aywin.*Vwin^2.*Cwinpy;
             * WinForceOutput(i,:)=[VesLoadCon(i),Fxwin,Fywin,Axwin,Aywin,Cwinpx,Cwinpy];
             * end
             */
            for (; ; ) {
                mxArray * v_0
                  = mclInitialize(
                      mclIntArrayRef1(mclVv(PerVesData, "PerVesData"), 15));
                if (mclSwitchCompare(v_0, _mxarray2_)) {
                    if (mclEqBool(
                          mclIntArrayRef1(mclVv(VesLoadCon, "VesLoadCon"), v_),
                          _mxarray6_)) {
                        mlfAssign(
                          &Axwin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray8_,
                              mclTimes(_mxarray9_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Axwin, "Axwin"), "Axwin");
                        mlfAssign(
                          &Aywin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray10_,
                              mclTimes(_mxarray11_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Aywin, "Aywin"), "Aywin");
                    } else {
                        mlfAssign(
                          &Axwin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray12_,
                              mclTimes(_mxarray13_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Axwin, "Axwin"), "Axwin");
                        mlfAssign(
                          &Aywin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray14_,
                              mclTimes(_mxarray15_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Aywin, "Aywin"), "Aywin");
                    }
                } else if (mclSwitchCompare(v_0, _mxarray16_)) {
                    if (mclEqBool(
                          mclIntArrayRef1(mclVv(VesLoadCon, "VesLoadCon"), v_),
                          _mxarray6_)) {
                        mlfAssign(
                          &Axwin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray17_,
                              mclTimes(_mxarray18_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Axwin, "Axwin"), "Axwin");
                        mlfAssign(
                          &Aywin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray19_,
                              mclTimes(_mxarray20_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Aywin, "Aywin"), "Aywin");
                    } else {
                        mlfAssign(
                          &Axwin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray21_,
                              mclTimes(_mxarray22_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Axwin, "Axwin"), "Axwin");
                        mlfAssign(
                          &Aywin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray23_,
                              mclTimes(_mxarray24_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Aywin, "Aywin"), "Aywin");
                    }
                } else {
                    if (mclEqBool(
                          mclIntArrayRef1(mclVv(VesLoadCon, "VesLoadCon"), v_),
                          _mxarray6_)) {
                        mlfAssign(
                          &Axwin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray25_,
                              mclTimes(_mxarray26_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Axwin, "Axwin"), "Axwin");
                        mlfAssign(
                          &Aywin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray27_,
                              mclTimes(_mxarray28_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Aywin, "Aywin"), "Aywin");
                    } else {
                        mlfAssign(
                          &Axwin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray29_,
                              mclTimes(_mxarray30_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Axwin, "Axwin"), "Axwin");
                        mlfAssign(
                          &Aywin,
                          mclMpower(
                            _mxarray7_,
                            mclPlus(
                              _mxarray31_,
                              mclTimes(_mxarray32_, mlfLog(mclVv(DW, "DW"))))));
                        mclPrintArray(mclVv(Aywin, "Aywin"), "Aywin");
                    }
                }
                mxDestroyArray(v_0);
                if (mclLtBool(mclVv(L, "L"), _mxarray33_)) {
                    mlfAssign(&Cwinpx, _mxarray2_);
                } else if (mclGtBool(mclVv(L, "L"), _mxarray34_)) {
                    mlfAssign(&Cwinpx, _mxarray35_);
                } else {
                    mlfAssign(
                      &Cwinpx,
                      mlfInterp1(
                        mclArrayRef2(
                          mclVv(Tab10_2_3, "Tab10_2_3"),
                          _mxarray2_,
                          mlfCreateColonIndex()),
                        mclArrayRef2(
                          mclVv(Tab10_2_3, "Tab10_2_3"),
                          _mxarray16_,
                          mlfCreateColonIndex()),
                        mclIntArrayRef1(mclVv(PerVesData, "PerVesData"), 2),
                        NULL));
                }
                if (mclLtBool(mclVv(B, "B"), _mxarray33_)) {
                    mlfAssign(&Cwinpy, _mxarray2_);
                } else if (mclGtBool(mclVv(B, "B"), _mxarray34_)) {
                    mlfAssign(&Cwinpy, _mxarray35_);
                } else {
                    mlfAssign(
                      &Cwinpy,
                      mlfInterp1(
                        mclArrayRef2(
                          mclVv(Tab10_2_3, "Tab10_2_3"),
                          _mxarray2_,
                          mlfCreateColonIndex()),
                        mclArrayRef2(
                          mclVv(Tab10_2_3, "Tab10_2_3"),
                          _mxarray16_,
                          mlfCreateColonIndex()),
                        mclIntArrayRef1(mclVv(PerVesData, "PerVesData"), 3),
                        NULL));
                }
                mlfAssign(
                  &Fxwin,
                  mclTimes(
                    mclTimes(
                      mclTimes(_mxarray36_, mclVv(Axwin, "Axwin")),
                      mclMpower(mclVv(Vwin, "Vwin"), _mxarray16_)),
                    mclVv(Cwinpx, "Cwinpx")));
                mlfAssign(
                  &Fywin,
                  mclTimes(
                    mclTimes(
                      mclTimes(_mxarray37_, mclVv(Aywin, "Aywin")),
                      mclMpower(mclVv(Vwin, "Vwin"), _mxarray16_)),
                    mclVv(Cwinpy, "Cwinpy")));
                mclArrayAssign2(
                  &WinForceOutput,
                  mlfHorzcat(
                    mclIntArrayRef1(mclVv(VesLoadCon, "VesLoadCon"), v_),
                    mclVv(Fxwin, "Fxwin"),
                    mclVv(Fywin, "Fywin"),
                    mclVv(Axwin, "Axwin"),
                    mclVv(Aywin, "Aywin"),
                    mclVv(Cwinpx, "Cwinpx"),
                    mclVv(Cwinpy, "Cwinpy"),
                    NULL),
                  mlfScalar(v_),
                  mlfCreateColonIndex());
                if (v_ == e_) {
                    break;
                }
                ++v_;
            }
            mlfAssign(&i, mlfScalar(v_));
        }
    }
    mclValidateOutput(
      WinForceOutput, 1, nargout_, "WinForceOutput", "windforceonvessel");
    mxDestroyArray(VesNo);
    mxDestroyArray(VesLoadCon);
    mxDestroyArray(Vwin);
    mxDestroyArray(PerVesData);
    mxDestroyArray(DW);
    mxDestroyArray(B);
    mxDestroyArray(L);
    mxDestroyArray(Tab10_2_3);
    mxDestroyArray(i);
    mxDestroyArray(Axwin);
    mxDestroyArray(Aywin);
    mxDestroyArray(Cwinpx);
    mxDestroyArray(Cwinpy);
    mxDestroyArray(Fxwin);
    mxDestroyArray(Fywin);
    mxDestroyArray(VesData);
    mxDestroyArray(WinForceInput);
    mclSetCurrentLocalFunctionTable(save_local_function_table_);
    return WinForceOutput;
    /*
     * end
     * 
     * 
     * 
     * 
     * 
     * 
     * 
     * 
     */
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -