Published papers
- Encyclopedia of Automotive Engineering: Chapter on Cranktrain Develoment
- SAE 2015-01-2775: Heavy-Duty Vehicle Fuel Saving Technology Analysis to Support Phase 2 Regulations
- SAE 2012-01-1013: Scuderi Split Cycle Engine: Air Hybrid Vehicle Powertrain Simulation Study
- SAE 2011-01-0404: Scuderi Split Cycle Fast Acting Valvetrain: Architecture and Development
- SAE 2011-01-0403: Scuderi Split Cycle Research Engine: Overview, Architecture and Operation
- SAE 2005-01-0995: Performance predictions for high efficiency stoichiometric spark ignited engines
- SAE 2005-01-0769: Latchcam: A Camshaft Integrated 2-Mode Variable Valve Actuation System
- ASME Journal of Engineering for Gas Turbines and Power 2012: Experimental Investigation of Turbine Stator Well Rim Seal, Re-Ingestion and Interstage Seal Flows Using Gas Concentration Techniques and Displacement Measurements
- ASME Turbo Expo 2012 GT2012-68592 An Investigation Into Numerical Analysis Alternatives For Predicting Re-Ingestion In Turbine Disc Rim Cavities
- ASME Turbo Expo 2012 GT2012-68588 Main Annulus Gas Path Interactions – Turbine Stator Well Heat Transfer
- ASME Turbo Expo 2011 GT2011-46448 The Influence Of Turbine Stator Well Coolant Flow Rate And Passage Configuration On Cooling Effectiveness
- ASME Turbo Expo 2011 GT2011-45695 Heat Transfer In Turbine Hub Cavities Adjacent To The Main Gas Path Including FE-CFD Coupled Thermal Analysis
Opposed Piston Engines
Software downloads
Matlab functions and class frameworks
A UNIT class is defined to automatically perform units conversion into the MKS system (metre,kg,sec).
The aim was to solve the problem of using, say, mm instead of m, or converting mm to inches. This is also a problem during plotting, because of the need to keep track of the units of what is being plotted. For this reason we like to define all variables into the MKS system by writing:
diameter = 10.0 * mm;
This is an automatic conversion into MKS, while still allowing to think in mm (or grams, N, inches …). If the value of mm is 1e-3, then the value of diameter is 1e-2, which, expressed in metres is = 10 mm. (everything is fine)
From this point onward all the calculations that use ‘diameter’ can be done in the MKS, avoiding any “order of magnitude error”. The syntax above is also particularly useful in input files where a lot of scalar parameters are defined. It provides a lot of information at a glance. When a variable needs to be displayed or plotted the following syntax can be used:
disp(diameterVector/mm)
or:
plot(diameterVector/mm,lengthVector/mm)
Also it is possible to perform units conversions in functions or on the command line. For example the following statement converts 10 mm into inches
>> 10 * mm/in
ans =
0.3937
All of this is not our invention, being in use in at least another software. We adopted it because for us it works very well. It also allows to create composite units:
typing: kg/mm^3
will display: kg/(mm^3) = 1.000000e+009
in this case the class returned variable is ‘COMPOSITEUNIT’
Other examples:
typing: kg*m/sec^2 / (kg/mm^3)
will display: kg*m/(sec^2)/(kg/(mm^3)) = 1.000000e-009
in this case the class returned variable is ‘COMPOSITEUNIT’
or:
kg*m/sec^2
kg*m/(sec^2) = 1.000000
INSTALLATION:
To implement the syntax above I created a class called ‘unit’, which must be saved into a directory called ‘unitClasses’. The directory ‘unitClasses’ must be added to the classpath. The function ‘unitClasses@unitprivategetStructure.m’ contains a comprehensive list of units, which can be extended as suitable. Then by calling the method ‘update(unit)’, a number of classes will be created, one for each of the units defined in ‘getStructure’.
You might then have to type:
‘clear classes’
‘rehash toolbox’
the updating can be done at any time a new unit is added to the function ‘unitsList’. From now on every time a syntax like ‘diameter = 10.0 * mm;’ is used a unit conversion is made. More info in the README.txt file. Your feedback is welcome
We wrote these utilities to avoid having to keep writing
"set(figureHandle ,'windowStyle','docked')".
Default behaviour is defined and help is provided.