Skip to content

Commit

Permalink
v1.0 of the app
Browse files Browse the repository at this point in the history
  • Loading branch information
julianpoma authored Dec 23, 2016
1 parent c5451cc commit dcd3907
Show file tree
Hide file tree
Showing 21 changed files with 14,720 additions and 0 deletions.
55 changes: 55 additions & 0 deletions Class.Fuel/Class.Fuel.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{0FFAE0FE-75E9-42A2-86B5-462D3C5C09EC}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Class.Fuel</RootNamespace>
<AssemblyName>Class.Fuel</AssemblyName>
<TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Q400_Fuel_kgs.cs" />
<Compile Include="Q400_Fuel_lbs.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
36 changes: 36 additions & 0 deletions Class.Fuel/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;

// La información general de un ensamblado se controla mediante el siguiente
// conjunto de atributos. Cambie estos valores de atributo para modificar la información
// asociada con un ensamblado.
[assembly: AssemblyTitle("Class.Fuel")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Class.Fuel")]
[assembly: AssemblyCopyright("Copyright © 2016")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

// Si establece ComVisible en false, los tipos de este ensamblado no estarán visibles
// para los componentes COM. Si necesita obtener acceso a un tipo de este ensamblado desde
// COM, establezca el atributo ComVisible en true en este tipo.
[assembly: ComVisible(false)]

// El siguiente GUID sirve como id. de typelib si este proyecto se expone a COM.
[assembly: Guid("0ffae0fe-75e9-42a2-86b5-462d3c5c09ec")]

// La información de versión de un ensamblado consta de los cuatro valores siguientes:
//
// Versión principal
// Versión secundaria
// Número de compilación
// Revisión
//
// Puede especificar todos los valores o usar los valores predeterminados de número de compilación y de revisión
// mediante el carácter '*', como se muestra a continuación:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
71 changes: 71 additions & 0 deletions Class.Fuel/Q400.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Class.Fuel
{
public static class Q400
{
//1LBS = 0,453592 KG
//FUEL BURN IS ON LBS/HR

private static int FuelCruiseTables_lbs (int altitude)
{
int fuelBurn = 0;

if (altitude >= 15000 && altitude < 17000)
{
fuelBurn = 3070;
}

if (altitude >= 17000 && altitude < 19000)
{
fuelBurn = 2950;
}

if (altitude >= 19000 && altitude < 21000)
{
fuelBurn = 2800;
}

if (altitude >= 21000 && altitude < 23000)
{
fuelBurn = 2650;
}

if (altitude >= 23000 && altitude < 25000)
{
fuelBurn = 2450;
}

if (altitude == 25000)
{
fuelBurn = 2310;
}

return fuelBurn;
}
private static int FuelCruise_lbs (int altSelected, int timeCruise)
{
return (timeCruise / 60) * FuelCruiseTables_lbs(altSelected);
}
private static int FuelTaxi_lbs (int taxiTime)
{
//200Lbs/15min of taxi (engine start included)
int fuelBurn = taxiTime*15;
return fuelBurn;
}
private static int FuelExtra_lbs (int extraTime)
{
//BASED ON HOLDING AT 10000 Ft 1700LBS/HR
return (extraTime / 60) * 1700;
}
public static int TotalFuel_lbs(int altSelected, int timeCruise, int taxiTime, int extraTime)
{
int totalFuel = FuelCruise_lbs(altSelected, timeCruise) + FuelTaxi_lbs(taxiTime) + FuelExtra_lbs(extraTime);
return totalFuel;
}
}
}
159 changes: 159 additions & 0 deletions Class.Fuel/Q400_Fuel_kgs.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,159 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Class.Fuel
{
public class Q400_Fuel_kgs
{
#region Propierties
private double _climbFB;
private double _cruiseFB;
private double _climbMin;
private double _descentMin;
private double _tripFuel;
private double _toFuel;
private double _totalFuel;
private double _cruiseTime;

public double CruiseTime
{
get { return _cruiseTime; }
set { _cruiseTime = value; }
}
public double ClimbFB
{
get { return _climbFB; }
set { _climbFB = value; }
}

public double CruiseFB
{
get { return _cruiseFB; }
set { _cruiseFB = value; }
}

public double ClimbMin
{
get { return _climbMin; }
set { _climbMin = value; }
}

public double DescentMin
{
get { return _descentMin; }
set { _descentMin = value; }
}

public double TripFuel
{
get { return _tripFuel; }
set { _tripFuel = value; }
}

public double TOFuel
{
get { return _toFuel; }
set { _toFuel = value; }
}

public double TotalFuel
{
get { return _totalFuel; }
set { _totalFuel = value; }
}
#endregion
private void FuelTables_kgs(int altitude)
{

if (altitude >= 15000 && altitude < 17000)
{
CruiseFB = 3070 * 0.453592;
ClimbFB = 633 * 0.453592;
ClimbMin = 8;
DescentMin = 12;
}

if (altitude >= 17000 && altitude < 19000)
{
CruiseFB = 2950 * 0.453592;
ClimbFB = 680 * 0.453592;
ClimbMin = 9;
DescentMin = 13;
}

if (altitude >= 19000 && altitude < 21000)
{
CruiseFB = 2800 * 0.453592;
ClimbFB = 815 * 0.453592;
ClimbMin = 12;
DescentMin = 14;
}

if (altitude >= 21000 && altitude < 23000)
{
CruiseFB = 2650 * 0.453592;
ClimbFB = 896 * 0.453592;
ClimbMin = 14;
DescentMin = 16;
}

if (altitude >= 23000 && altitude < 25000)
{
CruiseFB = 2450 * 0.453592;
ClimbFB = 971 * 0.453592;
ClimbMin = 18;
DescentMin = 18;
}

if (altitude == 25000)
{
CruiseFB = 2310 * 0.453592;
ClimbFB = 1000 * 0.453592;
ClimbMin = 20;
DescentMin = 19;
}
}

private double FuelCruise_kgs(double timeCruise)
{
return (timeCruise / 60) * CruiseFB;
}

private double DescentFuel_kgs()
{
return DescentMin * 1450 * 0.453592 / 60;
}
private double FuelTaxi_kgs(double taxiTime)
{
//200Lbs/15min of taxi (engine start included)
double fuelBurn = taxiTime * 6.803;
return fuelBurn;
}
private double FuelExtra_kgs(double extraTime)
{
//BASED ON HOLDING AT 10000 Ft 1700LBS/HR
return (extraTime / 60) * 1900 * 0.453592;
}
private double FuelAlternate_kgs(double altDist)
{
//290TAS at FL10000 @ 2250lbs/hr
return (altDist / 290) * 2250 * 0.453592 / 60;
}
public void CalculateAll_kgs(int altSelected, double flightTime, double taxiTime, double contingencyFuel, double altDist, double extraFuel)
{
FuelTables_kgs(altSelected); //Set initial values

CruiseTime = flightTime - (ClimbMin + DescentMin);
if (CruiseTime < 0) CruiseTime = 0;

TripFuel = FuelCruise_kgs(CruiseTime) + ClimbFB + DescentFuel_kgs();

TOFuel = TripFuel + FuelExtra_kgs(contingencyFuel) + FuelAlternate_kgs(altDist) + extraFuel;

TotalFuel = TOFuel + FuelTaxi_kgs(taxiTime);
}
}
}
Loading

0 comments on commit dcd3907

Please sign in to comment.