+ -
当前位置:首页 → 问答吧 → 已有单变量的递归,求多变量递归的算法

已有单变量的递归,求多变量递归的算法

时间:2011-10-19

来源:互联网

多变量递归系统的算法
对于多变量系统 ,各通道间存在相互耦合现象,即各通道的输出不仅取决于本身的输入信号,还与其它通道的输出相关。

已知,单个递归这样写,多个如何写,只要写出两个通道递归都感激不尽,如下方法:
RegRecursive(int curr1, int n1, int curr2, int n2)。
因为两个通道有一定耦合关系,设置其他一个通道也会改变另一个通道的输出亮度,所以两个一起递归


只知道curr和 输出亮度 成正比关系,因此 为使输出亮度与标准亮度最接近,递归设置通道的值 curr。 
C# code

 
void RegRecursive(int curr, int n)        
{            
            
           //设置寄存器值为curr
            setReg(curr);

             //测输出亮度与标准亮度的差Lv
             double Lv=Measure();//测量
            
            //递归变量为1时结束,因为无法在二分下去了
            if (n==1)
            {
                return;
            }
            else
            {
                //对递归变量二分,使快速收敛
                n=n/2;
                if (Lv >= 0)
                {
                    //如大于标准值,则当前值curr减去n的二分之一
                    curr = curr – n;
                }
                else
                {
                    //如小于标准值,同理
                    curr = curr + n;
                } 
                //代入新的设置值和变量来递归。
                RegRecursive(int curr, int n)  
            }
        }




作者: zzz9413   发布时间: 2011-10-19

在这个问题里,单变量的递归能不能推广到多变量?
如果变量间的耦合必须要重新描述的话,就不能直接推广。

作者: cnmhx   发布时间: 2011-10-19

热门下载

更多