import java.io.*;
import javax.swing.*;
import javax.tools.*;
import java.util.*;

class HT_FConv_wall
 {
  double Tw[];
  double Qw[];
  double xw[];
  Gas1 g;
  double L; // kanat boyu
  double W; // kanat yüksekliği
  double etkal; //kanat metali et kalınlığı
  double P; //hava basıncı
  double dx; //sonlu fark kanat boyu
  int N;  //sonlu fark kanat parçacık sayısı
  double Qmax;
  double t0;
  double t1;
  public HT_FConv_wall(double Li, double Wi,double Pi)
  {g=new Gas1("air");
   L=Li;
   W=Wi;
   P=Pi;
  }
    
  	 	   	 
  public double Rayleigh(double t,double tinf)
  { // Doğal taşınım Rayleigh sayısı
    // t derece C kanat yüzey sıcaklığı
    // tinf derece C  dış hava scaklığı
    // Gas1 g=new Gas1("air");
   double tf=(t+tinf)/2.0;
   double Tf=tf+273.15;
   double T=t+273.15;  //K
   double beta=1/Tf;
   double gyc=9.806;
   double ro=g.M/g.v(Tf,P);
   double nu=g.vis(Tf)/ro;
   double alfa=g.alfa(Tf,P);
   System.out.println("L="+L+"t="+t+"tinf="+tinf+"tf="+tf+"vis="+g.vis(Tf)+"ro="+ro+"nu="+nu+"beta="+beta);
   System.out.println("gy="+gyc+"nu="+nu+"beta="+beta+"alfa="+alfa);
   double R=gyc*beta*(t-tinf)*L*L*L/(alfa*nu);
   return R;
  }
  
  public double h(double t,double tinf)
  {  // Doğal taşınım ısı transferi hava için
     // dik konumlu levha
  Gas1 g=new Gas1("air");
  double tf=(t+tinf)/2.0;
  double Tf=tf+273.15;
  double Pr=g.Prandtl(Tf);
   System.out.println("Pr="+Pr);
  double Ra=Rayleigh(t,tinf);
  System.out.println("Ra="+Ra);
  double k=g.k(Tf);
  double Nu=(0.825+0.387*Math.pow(Ra,(1.0/6.0))/Math.pow((1.0+Math.pow((0.492/Pr),(9.0/16.0))),(8.0/27.0)));
  Nu=Nu*Nu;
  System.out.println("Nu="+Nu+"k="+k+"L="+L);
  double hh=Nu*k/L;
  return hh;
  }

  public static void main(String args[])
  {
  double t=32;//m
  double tinf=22;//m
  double L=0.5;//m
  double W=0.7;//m
  double P=1.01325;///bar
  HT_FConv_wall kk=new HT_FConv_wall(L,W,P);
  double h1=kk.h(t,tinf);
  System.out.println("h="+h1);
  double Q=L*W*h1*(t-tinf);//
  System.out.println("Q="+Q+"Watt");
  }
 }