       volVectorField grad_fi1 = fvc::grad(fi1);

        volScalarField grad_fi1_y
        (
            IOobject
            (
                "grad_fi1_y",
                runTime.timeName(),
                mesh_fi,
                IOobject::NO_READ,
                IOobject::AUTO_WRITE
            ),
            grad_fi1.component(vector::Y)
        );
		
       volVectorField grad_fi2 = fvc::grad(fi2);

        volScalarField grad_fi2_y
        (
            IOobject
            (
                "grad_fi2_y",
                runTime.timeName(),
                mesh_fi,
                IOobject::NO_READ,
                IOobject::AUTO_WRITE
            ),
            grad_fi2.component(vector::Y)
        );
		

    volVectorField grad_DD1_fi1 = fvc::grad((DD1+dDD1)*fi1);

         volScalarField grad_DD1_fi1_y
        (
            IOobject
            (
                "grad_DD1_fi1_y",
                runTime.timeName(),
                mesh_fi,
                IOobject::NO_READ,
                IOobject::AUTO_WRITE
            ),
            grad_DD1_fi1.component(vector::Y)
        );

    volVectorField grad_DD2_fi2 = fvc::grad((DD2+dDD2)*fi2);

         volScalarField grad_DD2_fi2_y
        (
            IOobject
            (
                "grad_DD2_fi2_y",
                runTime.timeName(),
                mesh_fi,
                IOobject::NO_READ,
                IOobject::AUTO_WRITE
            ),
            grad_DD2_fi2.component(vector::Y)
        );
	    
         volScalarField lap_fi1
        (
            IOobject
            (
                "lap_fi1",
                runTime.timeName(),
                mesh_fi,
                IOobject::NO_READ,
                IOobject::AUTO_WRITE
            ),
			fvc::laplacian(fi1)
         );

         volScalarField lap_fi2
        (
            IOobject
            (
                "lap_fi2",
                runTime.timeName(),
                mesh_fi,
                IOobject::NO_READ,
                IOobject::AUTO_WRITE
            ),
			fvc::laplacian(fi2)
         );
        
		 volScalarField lap_dDD1_fi1
        (
            IOobject
            (
                "lap_dDD1_fi1",
                runTime.timeName(),
                mesh_fi,
                IOobject::NO_READ,
                IOobject::AUTO_WRITE
            ),
			fvc::laplacian(dDD1,fi1)
         );

         volScalarField lap_dDD2_fi2
        (
            IOobject
            (
                "lap_dDD2_fi2",
                runTime.timeName(),
                mesh_fi,
                IOobject::NO_READ,
                IOobject::AUTO_WRITE
            ),
			fvc::laplacian(dDD2,fi2)
         );

        
	
	
	
