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

📄 yicmplx.h

📁 [[ Complex Matrices : Language c]]
💻 H
字号:
/* xbfract.h                   free ware                   xhunga@tiscali.fr  */

/* ------------------------------------- FUNCTION --------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF cnj_zF(complexF z)
{
complexF zt;
fraction ft = {-1,1};

        z.r = mini_F(z.r);

        zt.r =            z.r;
        zt.i = mul_F( ft, z.i);

	return (zt);
}


/* ------------------------------------- FUNCTION --------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF sym_zF(complexF z)
{
complexF zt;
fraction ft = {-1,1};

        zt.r = mul_F( ft, z.r);
        zt.i = mul_F( ft, z.i);

	return (zt);
}

/* ------------------------------------- FUNCTION --------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF add_zF(complexF z1, complexF z2)
{
complexF zt;

       zt.r = add_F(z1.r,z2.r);
       zt.i = add_F(z1.i,z2.i);

	return (zt);
}

/* ------------------------------------- FUNCTION --------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF sub_zF(complexF z1, complexF z2)
{
complexF zt;

        zt.r = sub_F(z1.r,z2.r);
        zt.i = sub_F(z1.i,z2.i);

	return (zt);
}

/* ------------------------------------- FUNCTION --------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF mul_zF(complexF z1, complexF z2)
{
complexF  zt;
fraction ft1;
fraction ft2;

         ft1 = mul_F( z1.r, z2.r);
         ft2 = mul_F( z1.i, z2.i);
        zt.r = sub_F(  ft1,  ft2);

         ft1 = mul_F( z1.i, z2.r);
         ft2 = mul_F( z1.r, z2.i);
        zt.i = add_F(  ft1,  ft2);

	return (zt);
}

/* ------------------------------------- FUNCTION --------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF Fmul_zF(fraction f, complexF z)
{
complexF  zt;

         zt.r.n = z.r.n * f.n;
         zt.r.d = z.r.d * f.d;

         zt.i.n = z.i.n * f.n;
         zt.i.d = z.i.d * f.d;

        zt.r = mini_F(zt.r);
        zt.i = mini_F(zt.i);

	return (zt);
}


/* ------------------------------------- FUNCTION --------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
fraction abs_P2_zF(complexF z)
{
complexF    zt;
complexF cnj_z;

     cnj_z = cnj_zF(z);
        zt = mul_zF(z, cnj_z);

	return (zt.r);
}


/* ------------------------------------- FUNCTION --------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF div_zF(complexF z1, complexF z2)
{
complexF         zt;
complexF     cnj_z2;

      cnj_z2 = cnj_zF(z2);
          zt = mul_zF(z1, cnj_z2);

       zt.r = mul_F(zt.r, inv_F(abs_P2_zF(z2)));
       zt.i = mul_F(zt.i, inv_F(abs_P2_zF(z2)));

	return (zt);
}


/* ------------------------------------- FUNCTION --------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF inv_zF(complexF z)
{
complexF        zt;
complexF     cnj_z;

     cnj_z =  cnj_zF(z);

       zt.r = mul_F(cnj_z.r, inv_F(abs_P2_zF(z)));
       zt.i = mul_F(cnj_z.i, inv_F(abs_P2_zF(z)));

	return (zt);
}

⌨️ 快捷键说明

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