{{ $currentPageUrl := .URL }} {{ $currentSection := (where .Site.RegularPages "Section" .Section) }} {{/* Get the number of entries of $currentSection and subtract 1 */}} {{ $i := sub ($currentSection | len) 1 }} {{- partial "head.html" . -}}
{{- partial "header.html" . -}}{{.Title}}


Police meet health officials following Dr Watt patient recall
by Michael McHugh, Press AssociationPolice are assessing whether any potential criminal offences can be identified after more than 3,000 neurology patients were recalled by health authorities in Belfast.
Belfast neurologist Dr Michael Watt is suspended from practising medicine.
A BBC Spotlight programme this week aired claims around his use of a procedure on patients known as a blood patch, which involves injecting a person's own blood into their spines.
Spotlight reported an increase in the number of epidural blood patches carried out at the Belfast Trust in 2015 and 2016.
A PSNI statement said: "We are aware of the recall of neurology patients by the Belfast Health and Social Care Trust and have met with senior officials within the Department of Health to discuss the issue.
"The department has agreed to provide us with further information so that we can assess how best to move forward and to enable us to determine if any potential criminal offences can be identified."
Read More: 30 per cent of Dr Watt recall patients may have received unreliable diagnosis or drugs
According to the NHS, a severe headache can be caused if the bag of fluid that surrounds the spine is accidentally punctured.
A procedure known as a blood patch may be used to seal up the puncture. It involves taking a small sample of the patient's own blood and injecting it into the puncture.
A major neurology review sparked by concerns about Dr Watt's work has been ongoing.
A total of 3,544 former patients of Dr Watt had been or were in the process of being recalled, the Department of Health said previously. Many have epilepsy.
Patients who were being actively treated by Dr Watt have already been seen.
Read More: Belfast health trust boss issues first letter of apology to Dr Watt patients
Some who had been seen by the consultant but discharged to the care of their GPs and prescribed medications for neurological conditions were also to be offered appointments, Stormont's health authorities said.
The medications include anti-epileptic drugs, immunosuppressants and disease modifying therapies which are used to treat conditions like epilepsy and multiple sclerosis.
Patients were drawn from the NHS and two private clinics where Dr Watt practised.


Making a Small AR App with Unity and Vuforia
* No programming skills required for this tutorial.
Let’s get straight to the steps.
Hardware you need
- A laptop/PC/Mac. I’m going to use Mac for this tutorial but all the steps also apply to Windows OS.
- A camera (webcam on laptops is good enough)
- Internet connection
Software you need
1. Unity
Unity is a modern 3D game engine. It’s extremely versatile and easy to learn.
Download at Unity’s official website, select personal plan, install the latest version and complete the registration process. A personal plan is good enough for beginners. I’m using the plus plan cause I’m developing some commercial titles. But the basic features are exactly the same.
When the installer asks which components to install, select Unity, Documentation, Standard Assets and Android Build Support. You can always install other components later with the Unity installer.
2. Vuforia
Vuforia provides Augmented Reality support for multiple platforms, including Android, iOS, UWP and Unity. In this tutorial, we are going to use it for Unity only.
Go to Vuforia's official site, complete the registration process and download the Vuforia unity package on the download page.
Now we have all we need, let’s dive into the development.
Step 1: Step up the project
Open Unity, click on the +New button to create a new unity project. Name the project and choose a location for it as you like.
Now we have an empty Unity project! You may feel lost in the editor but no worry, I will cover all the steps in details so you won’t get lost. I’ve annotated different views in the editor for better communication, but if you want to learn more about this interface, sufficient training can be found on Unity’s official tutorial website.
Step 2: Import Vuforia core assets
Go to Assets -> Import Package -> Custom package…
, and select the Vuforia unity package you just download.
Import everything as shown in the new window.
In the project window, find the AR Camera, drag it into the hierarchy view. Remember to delete the existing Main Camera inside hierarchy view, otherwise Unity will not know which camera to use. Your hierarchy view should look like this.
Now we can save the scene first by Command + S
or Control + S
on Windows. Put it in the Assets folder and name it as you want.
Step 3: Add Vuforia license
Your Vuforia needs a license to function properly. In this step, we’re going to add a Vuforia license.
Go to the License Manager page and click Add License Key. Fill it as the following image and confirm.
Then click into your new license, you’ll get your license number. Copy it, and go back to Unity.
In Unity, select AR Camera in hierarchy view, click Open Vuforia Configuration in the inspector window, and paste your license number there.
Step 4: Prepare the image target
Vuforia works by identifying an Image Target inside the real world camera view. When it finds the target, it overlay objects that you made in Unity onto it.
Go to Vuforia’s target manager page. Click Add Databse. Name it as you want and select Device for type.
Then clock into your new database. Click Add Target, and fill as in the following image. In this step, you need to prepare and upload an image as the Image Target. I’m using my company’s logo here, you can use any image you want. The color of that image does not matter.
After you’ve successfully added one target, you can download databased from Vuforia’s website. Remember to select Unity as the platform.
Now go back to Unity and import the database you just downloaded. The operation is same as importing Vuforia’s core assets.
Step 5: Set up image target
Now we’ve prepared the Image Target, we can find it under Vuforia - Prefabs
folder and drag it into the hierarchy. Remember to place it under AR Camera like this.
Then select the Image Target in hierarchy view, and set Database & Image Target in the inspector window.
I think there is some compatibility issue here, as sometimes you still cannot see your image in the scene view. In this case, locate your image in Editor - Vuforia - ImageTargetTextures - YourDataBaseName
folder and select your image. In the inspector window, set Texture Shape to 2D. Now you should be able to see your image in the scene view.
Step 6: Add content
In this tutorial, we are going to add a sphere, just to show that Vuforia is working properly. In the hierarchy view, right-click on Image Target and create a sphere.
Here we also need to set up the AR Camera. Again, click on it in the hierarchy view, and set World center mode to CAMERA in the inspector window. Then, click on the Open Vuforia Configuration, tick Load xxx Database and activate.
Now, open your image on your phone or print it to a paper, click that play button above the scene view, put that image in front of your camera, you should be able to see that sphere. And… we are done!
Step 7: One more thing - install your app on Android
If you have an Android phone, you can actually install the app you just built onto your phone!
In Unity, go to File -> Build Settings
, click Add Open Scene and switch platform to Android. Then click on Player Settings at the bottom. Set the three field as shown in the image in the inspector window.
Now you can go back to Building Settings and build! If you need more assistance for building your app, you can find plenty of results on the internet.

A closing note
- If you want to learn more about Unity development, I highly recommend you start with their official tutorials.
- Project files for this tutorial can be found on Github.


fastq.bio
About
Peek at Your Sequencing Data
Quickly sample and summarize a FASTQ file.
Your data never leaves the browser.
Choose FASTQ File


plant elevation plasticity traits ecotypes growth growing defense differentiation ecotypic phenotypic major low‐elevation plants different high species effect Plant chemical pratensis Ecology, Plantago biomass ecotype using {border-style GLS Rasmann, high‐elevation observed px;} #ffffff;} populations variation Table diversity herbivory response weight Ecotypes secondary Cardamine Ecot Elevation Figure Population common content glycosides gradients plastic resistance (Figure Ecology defenses information population responses <. *** Mitchell‐Olds, environmental indole production total trait Pellissier, conditions (Figures Chemical Evolution, adaptation chlorophyll compounds effects environment growth‐related higher induction larval placed related Bowers, ecological gain lanceolata leaf level local low major, potential produced showed shown (SMD Agrawal, Biology, Evolution Phenotypic biotic glucosinolate herbivore indicate metabolites px; selection significant species, time {font-family (Supporting (i.e. (pp. ./j.-...x Annual CPGs abiotic defense‐related elevation. font-size genetic interactions iridoid leaves magnitude perennial study tropical (Eds.), (b) (high Arabidopsis Evolutionary Review S). SLA Systematics, Total Wallsgrove, based change chemistry decrease double; elevation, environments fitness gardens herbivores insect latitudinal measure measured opposite package patterns pratensis, versus (a) (elevation ./s--- Defossez, Functional Furthermore, Garnier, Gershenzon, Glauser, IGs Kliebenstein, Körner, Neuchâtel Oecologia, Plants Plasticity Supporting Therefore, University aboveground abundance aliphatic analyses analysis border-color border-width caffeoyl collected compared costs depending elevational elevations evolution expanded expression fully garden generalist given glucosinolates gradients. grew including increased littoralis lower major. metabolite min, natural oilseed phenylethanoid plant. pressure seeds size solid; tend traits, traits. used value wild {font-style {font-weight < (Körner, ./BF ./j.-..tb.x American Applied Botany, Brassica Brown, Ecological Finally, GLS, Genetic Glucosinolate Iridoid Kiddle, Latitudinal Letters, Mithen, Moyes, New Pennings, Phytochemistry, Rasmann Reichelt, Siska, Stamp, Switzerland accompanied better bold calculated cold contrasting courier; data differences ecology ecotypes) em; end expected factors field fixed function functional geographical instance, interaction larvae levels mean measuring min. mountain new origin performed phenotypes photosynthetic plants: plasticity: populations. produce profiles pt;} range rape rate reciprocal relative represent represented results retention sea selected sizes specific studies temperature transplant values variable vary version


 This must have
been a pirate hangout, because I just found
some treasure!
But I can only carry one up to the surface.
They are both beautiful, but which one do I prefer?


| | |
- chr(i, /)
- Return a Unicode string of one character with ordinal i; 0 <= i <= 0x10ffff.
- curry(func)
- -- curry a Python-style multi-place function into
-- a Haskell-style function that returns a function
-- (see also curry_tuple for functions of tuples)
- definesBind(dataType: 'TType') -> 'TType'
- Decorator to declare that a data type defines __bind__
instead of __join__. Will also create an __fmap__ method
if none exists, though then a __pure__ method is required.
- definesReturn(dataType: 'TType') -> 'TType'
- A simple decorator to set __pure__ equal to __return__.
If used with definesBind, definesReturn must be applied
first (i.e. be a more inner decorator).
- derivingBoundedEnum(*valueConstructors: 'TType') -> 'None'
- The expression
derivingBoundedEnum(valueConstructor1, valueConstructor2, ...)
is equivalent to stating that for some data type defined as
data dataType = valueConstructor1 ... | valueConstructor2 ... | ...
we should add
deriving (Bounded, Enum)
- derivingOrd(*valueConstructors: 'TType') -> 'None'
- The expression
derivingOrd(valueConstructor1, valueConstructor2, ...)
is equivalent to stating that for some data type defined as
data dataType = valueConstructor1 ... | valueConstructor2 ... | ...
we should add
deriving Ord
- hex(number, /)
- Return the hexadecimal representation of an integer.
>>> hex(12648430)
'0xc0ffee'
- input(prompt=None, /)
- Read a string from standard input. The trailing newline is stripped.
The prompt string, if given, is printed to standard output without a
trailing newline before reading input.
If the user hits EOF (*nix: Ctrl-D, Windows: Ctrl-Z+Return), raise EOFError.
On *nix systems, readline is used if available.
- oct(number, /)
- Return the octal representation of an integer.
>>> oct(342391)
'0o1234567'
- of(func, *args, **kwargs)
- of = ($)
-- of(func, *args, **kwargs) attempts to call func(*args, **kwargs),
-- but in case of TypeError curries func$(*args, **kwargs) instead,
-- as in Haskell function application (see also curry, uncurry)
- open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
- Open file and return a stream. Raise OSError upon failure.
file is either a text or byte string giving the name (and the path
if the file isn't in the current working directory) of the file to
be opened or an integer file descriptor of the file to be
wrapped. (If a file descriptor is given, it is closed when the
returned I/O object is closed, unless closefd is set to False.)
mode is an optional string that specifies the mode in which the file
is opened. It defaults to 'r' which means open for reading in text
mode. Other common values are 'w' for writing (truncating the file if
it already exists), 'x' for creating and writing to a new file, and
'a' for appending (which on some Unix systems, means that all writes
append to the end of the file regardless of the current seek position).
In text mode, if encoding is not specified the encoding used is platform
dependent: locale.getpreferredencoding(False) is called to get the
current locale encoding. (For reading and writing raw bytes use binary
mode and leave encoding unspecified.) The available modes are:
========= ===============================================================
Character Meaning
--------- ---------------------------------------------------------------
'r' open for reading (default)
'w' open for writing, truncating the file first
'x' create a new file and open it for writing
'a' open for writing, appending to the end of the file if it exists
'b' binary mode
't' text mode (default)
'+' open a disk file for updating (reading and writing)
'U' universal newline mode (deprecated)
========= ===============================================================
The default mode is 'rt' (open for reading text). For binary random
access, the mode 'w+b' opens and truncates the file to 0 bytes, while
'r+b' opens the file without truncation. The 'x' mode implies 'w' and
raises an `FileExistsError` if the file already exists.
Python distinguishes between files opened in binary and text modes,
even when the underlying operating system doesn't. Files opened in
binary mode (appending 'b' to the mode argument) return contents as
bytes objects without any decoding. In text mode (the default, or when
't' is appended to the mode argument), the contents of the file are
returned as strings, the bytes having been first decoded using a
platform-dependent encoding or using the specified encoding if given.
'U' mode is deprecated and will raise an exception in future versions
of Python. It has no effect in Python 3. Use newline to control
universal newlines mode.
buffering is an optional integer used to set the buffering policy.
Pass 0 to switch buffering off (only allowed in binary mode), 1 to select
line buffering (only usable in text mode), and an integer > 1 to indicate
the size of a fixed-size chunk buffer. When no buffering argument is
given, the default buffering policy works as follows:
* Binary files are buffered in fixed-size chunks; the size of the buffer
is chosen using a heuristic trying to determine the underlying device's
"block size" and falling back on `io.DEFAULT_BUFFER_SIZE`.
On many systems, the buffer will typically be 4096 or 8192 bytes long.
* "Interactive" text files (files for which isatty() returns True)
use line buffering. Other text files use the policy described above
for binary files.
encoding is the name of the encoding used to decode or encode the
file. This should only be used in text mode. The default encoding is
platform dependent, but any encoding supported by Python can be
passed. See the codecs module for the list of supported encodings.
errors is an optional string that specifies how encoding errors are to
be handled---this argument should not be used in binary mode. Pass
'strict' to raise a ValueError exception if there is an encoding error
(the default of None has the same effect), or pass 'ignore' to ignore
errors. (Note that ignoring encoding errors can lead to data loss.)
See the documentation for codecs.register or run 'help(codecs.Codec)'
for a list of the permitted encoding error strings.
newline controls how universal newlines works (it only applies to text
mode). It can be None, '', '\n', '\r', and '\r\n'. It works as
follows:
* On input, if newline is None, universal newlines mode is
enabled. Lines in the input can end in '\n', '\r', or '\r\n', and
these are translated into '\n' before being returned to the
caller. If it is '', universal newline mode is enabled, but line
endings are returned to the caller untranslated. If it has any of
the other legal values, input lines are only terminated by the given
string, and the line ending is returned to the caller untranslated.
* On output, if newline is None, any '\n' characters written are
translated to the system default line separator, os.linesep. If
newline is '' or '\n', no translation takes place. If newline is any
of the other legal values, any '\n' characters written are translated
to the given string.
If closefd is False, the underlying file descriptor will be kept open
when the file is closed. This does not work when a file name is given
and must be True in that case.
A custom opener can be used by passing a callable as *opener*. The
underlying file descriptor for the file object is then obtained by
calling *opener* with (*file*, *flags*). *opener* must return an open
file descriptor (passing os.open as *opener* results in functionality
similar to passing None).
open() returns a file object whose type depends on the mode, and
through which the standard file operations such as reading and writing
are performed. When open() is used to open a file in a text mode ('w',
'r', 'wt', 'rt', etc.), it returns a TextIOWrapper. When used to open
a file in a binary mode, the returned class varies: in read binary
mode, it returns a BufferedReader; in write binary and append binary
modes, it returns a BufferedWriter, and in read/write mode, it returns
a BufferedRandom.
It is also possible to use a string or bytearray as a file for both
reading and writing. For strings StringIO can be used like a file
opened in a text mode, and for bytes a BytesIO can be used like a file
opened in a binary mode.
- print(...)
- print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
- py_breakpoint = breakpoint(...)
- breakpoint(*args, **kws)
Call sys.breakpointhook(*args, **kws). sys.breakpointhook() must accept
whatever arguments are passed.
By default, this drops you into the pdb debugger.
- py_chr = chr(i, /)
- Return a Unicode string of one character with ordinal i; 0 <= i <= 0x10ffff.
- py_hex = hex(number, /)
- Return the hexadecimal representation of an integer.
>>> hex(12648430)
'0xc0ffee'
- py_input = input(prompt=None, /)
- Read a string from standard input. The trailing newline is stripped.
The prompt string, if given, is printed to standard output without a
trailing newline before reading input.
If the user hits EOF (*nix: Ctrl-D, Windows: Ctrl-Z+Return), raise EOFError.
On *nix systems, readline is used if available.
- py_oct = oct(number, /)
- Return the octal representation of an integer.
>>> oct(342391)
'0o1234567'
- py_open = open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
- Open file and return a stream. Raise OSError upon failure.
file is either a text or byte string giving the name (and the path
if the file isn't in the current working directory) of the file to
be opened or an integer file descriptor of the file to be
wrapped. (If a file descriptor is given, it is closed when the
returned I/O object is closed, unless closefd is set to False.)
mode is an optional string that specifies the mode in which the file
is opened. It defaults to 'r' which means open for reading in text
mode. Other common values are 'w' for writing (truncating the file if
it already exists), 'x' for creating and writing to a new file, and
'a' for appending (which on some Unix systems, means that all writes
append to the end of the file regardless of the current seek position).
In text mode, if encoding is not specified the encoding used is platform
dependent: locale.getpreferredencoding(False) is called to get the
current locale encoding. (For reading and writing raw bytes use binary
mode and leave encoding unspecified.) The available modes are:
========= ===============================================================
Character Meaning
--------- ---------------------------------------------------------------
'r' open for reading (default)
'w' open for writing, truncating the file first
'x' create a new file and open it for writing
'a' open for writing, appending to the end of the file if it exists
'b' binary mode
't' text mode (default)
'+' open a disk file for updating (reading and writing)
'U' universal newline mode (deprecated)
========= ===============================================================
The default mode is 'rt' (open for reading text). For binary random
access, the mode 'w+b' opens and truncates the file to 0 bytes, while
'r+b' opens the file without truncation. The 'x' mode implies 'w' and
raises an `FileExistsError` if the file already exists.
Python distinguishes between files opened in binary and text modes,
even when the underlying operating system doesn't. Files opened in
binary mode (appending 'b' to the mode argument) return contents as
bytes objects without any decoding. In text mode (the default, or when
't' is appended to the mode argument), the contents of the file are
returned as strings, the bytes having been first decoded using a
platform-dependent encoding or using the specified encoding if given.
'U' mode is deprecated and will raise an exception in future versions
of Python. It has no effect in Python 3. Use newline to control
universal newlines mode.
buffering is an optional integer used to set the buffering policy.
Pass 0 to switch buffering off (only allowed in binary mode), 1 to select
line buffering (only usable in text mode), and an integer > 1 to indicate
the size of a fixed-size chunk buffer. When no buffering argument is
given, the default buffering policy works as follows:
* Binary files are buffered in fixed-size chunks; the size of the buffer
is chosen using a heuristic trying to determine the underlying device's
"block size" and falling back on `io.DEFAULT_BUFFER_SIZE`.
On many systems, the buffer will typically be 4096 or 8192 bytes long.
* "Interactive" text files (files for which isatty() returns True)
use line buffering. Other text files use the policy described above
for binary files.
encoding is the name of the encoding used to decode or encode the
file. This should only be used in text mode. The default encoding is
platform dependent, but any encoding supported by Python can be
passed. See the codecs module for the list of supported encodings.
errors is an optional string that specifies how encoding errors are to
be handled---this argument should not be used in binary mode. Pass
'strict' to raise a ValueError exception if there is an encoding error
(the default of None has the same effect), or pass 'ignore' to ignore
errors. (Note that ignoring encoding errors can lead to data loss.)
See the documentation for codecs.register or run 'help(codecs.Codec)'
for a list of the permitted encoding error strings.
newline controls how universal newlines works (it only applies to text
mode). It can be None, '', '\n', '\r', and '\r\n'. It works as
follows:
* On input, if newline is None, universal newlines mode is
enabled. Lines in the input can end in '\n', '\r', or '\r\n', and
these are translated into '\n' before being returned to the
caller. If it is '', universal newline mode is enabled, but line
endings are returned to the caller untranslated. If it has any of
the other legal values, input lines are only terminated by the given
string, and the line ending is returned to the caller untranslated.
* On output, if newline is None, any '\n' characters written are
translated to the system default line separator, os.linesep. If
newline is '' or '\n', no translation takes place. If newline is any
of the other legal values, any '\n' characters written are translated
to the given string.
If closefd is False, the underlying file descriptor will be kept open
when the file is closed. This does not work when a file name is given
and must be True in that case.
A custom opener can be used by passing a callable as *opener*. The
underlying file descriptor for the file object is then obtained by
calling *opener* with (*file*, *flags*). *opener* must return an open
file descriptor (passing os.open as *opener* results in functionality
similar to passing None).
open() returns a file object whose type depends on the mode, and
through which the standard file operations such as reading and writing
are performed. When open() is used to open a file in a text mode ('w',
'r', 'wt', 'rt', etc.), it returns a TextIOWrapper. When used to open
a file in a binary mode, the returned class varies: in read binary
mode, it returns a BufferedReader; in write binary and append binary
modes, it returns a BufferedWriter, and in read/write mode, it returns
a BufferedRandom.
It is also possible to use a string or bytearray as a file for both
reading and writing. For strings StringIO can be used like a file
opened in a text mode, and for bytes a BytesIO can be used like a file
opened in a binary mode.
- py_print = print(...)
- print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
- py_repr = repr(obj, /)
- Return the canonical string representation of the object.
For many object types, including most builtins, eval(repr(obj)) == obj.
- reduce(...)
- reduce(function, sequence[, initial]) -> value
Apply a function of two arguments cumulatively to the items of a sequence,
from left to right, so as to reduce the sequence to a single value.
For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) calculates
((((1+2)+3)+4)+5). If initial is present, it is placed before the items
of the sequence in the calculation, and serves as a default when the
sequence is empty.
- repr(obj, /)
- Return the canonical string representation of the object.
For many object types, including most builtins, eval(repr(obj)) == obj.
- uncurry(func)
- -- uncurry a Haskell-style function that returns a function
-- into a Python-style multi-place function
-- (see also uncurry_tuple for functions of tuples)
|


{% extends 'layout.html' %} {% block title %}Postcode{% endblock %} {% block content %}
What constituency is {{ postcode.outcode }} in?


{# Embeds a organization within the sidebar of a page. organization - The organization dict. truncate - A max length for the organization description. If not provided the description will be full length. Example: {% snippet 'snippets/organization, organization=c.group_dict %} #} {% import 'macros/canada_read.html' as cr %} {% with truncate=truncate or 0, url=h.url_for(controller='organization', action='read', id=organization.name) %}
{{ h.markdown_extract(organization.description, 180) }} {% link_for _('read more'), controller='organization', action='about', id=organization.name %}
{% else %}{{ _('There is no description for this organization') }}
{% endif %} {% if show_nums %}{{ h.SI_number_span(organization.members|length) }}
{{ h.SI_number_span(organization.package_count) }}


England's Rugby World Cup heroes have won us over with squad diversity and on-field grit
England will face South Africa in the Rugby World Cup final on Saturday morning in Yokohama, Japan
by Emily Retter, https://www.mirror.co.uk/authors/emily-retter/A bacon bap with a pint is truly a pairing made in heaven – as millions of us joyfully rediscovered this morning.
We’ve waited many a year for that mouth-watering combination before elevenses when we settled down in front of big screens in bleach-smelling pubs across the land for the FIFA World Cup in South Korea and Japan in 2002.
And who can forget a year later when England last lifted the Rugby World Cup in 2003 in Australia against the host nation with Jonny Wilkinson’s last-gasp drop goal.
The fact Japan’s Rugby World Cup is the perfect excuse to go to the pub for breakfast is one reason rugby fever is bubbling at a boiling point for the final between England and South Africa.
Even for those of us, ahem, who don’t really have a clue what’s going on and find ourselves humming Baddiel and Skinner’s Three Lions – a dead giveaway, by the way, for actual rugby fans.
But there’s something deeper behind what has fast developed into a really beautiful national mood illuminating these grim autumn days.
And didn’t we need it...
Maybe, it’s because at a time of hostility and division in our politics, there is an unexpected unity and hopefulness bouncing off England’s quietly confident bruising backs and forwards.
That surprisingly self-assured V-shaped response to New Zealand’s semi-final haka definitely helped. But there’s something else more deep-rooted.
If you attended a state school, rugby probably didn’t make much of an impression.
That weird egg-shaped ball wasn’t round. And it wasn’t ours.
Rugger belonged, and still belongs, on the whole, to a Harry Potter land of prefects and fags.
But this current England team shouts something different.

Captain Owen Farrell hails from Wigan, where his Rugby League player dad was just 16 when he had him.
Kyle Sinckler is from a Tooting housing estate, where he saw pals end up in gangs.
Jack Nowell’s dad is a Cornish fisherman. In fact, 22 of the squad led by Eddie Jones were at state schools for the bulk of their secondary education.
And perhaps it’s the ever-so polite, sweetly enthusiastic Japanese crowds who have rubbed off, but there’s not been a whiff of entitled bad behaviour in sight.
They’re an ethnically diverse squad, too. More than a third of the players are from BAME backgrounds. As such, they have gifted opportunity to us all.
Maro Itoje lit the touch paper when he said: “No man is an island, whenever you want to make positive strides forward you always have to do it together.
“Dividing people never works... Unity is always the best way forward.”
That sentiment, digested with a rasher of streaky and washed down with a foamy top, is why we’re all suddenly so enamoured with the egg-shaped ball.


Vai's Blog
HTML CSS and DOM -1 52>
Can you think of an analogy to describe HTML, CSS and the DOM? How would you describe it to your non-technical friend?
W3C defines DOM (Document Object Model) as a platform and language-neutral interface that allows progeams and scripts to synamically access and update the content, structure, and style of a document.
What is the HTML DOM?
The HTML DOM is a standard object model and programming interface for HTML. It defines:
The HTML elements as objects
The properties of all HTML elements
The methods to access all HTML elements
The events for all HTML elements
In other words: The HTML DOM is a standard for how to get, change, add, or delete HTML elements.
Now, what DOM does is not something that we can view can directly however, the Dev Tools is a good interface to view the code after the DOM API has worked on it.
Now, "The House" expample is a classic example to explain this.
Imagine you are an architect, you made a design model of a house.
Now the structural elements of your model like the walls, windows and doors are what html is and the wall color of your model and the small decorative curatins is what css is. So now that the house model is ready, where is DOM and why hasn;t it come into the picture yet?
DOM comes into picture after your base is ready.
Now imagine this model is very flexible and you can move around the rooms of the model and and you can use ur poster to colors to paint the walls and fabric paint the decorative curtains and move around the staircase. Basically you are moving around the rooms like a jig saw puzzle to create that dream house of yours.... Well this run time renovation is what is DOM.
In case of a web page, runtime addtion and modification of your code is facilitated by DOM. All the interacive components of the web page like reading from a text box and detecting a mouse click is also the property of a DOM.
What is meant by boxifying design?
Each element that you see on a website has a rectangular outline to it. Visualising the digital design mockups in the form of boxes helps you define the structure of the html code.
Boxifying is essentially converting each element in the design mockup into rectangular boxes.
What is the box model?
The box model is a concept in CSS that defines the dimensions of each element in a page.
The box model includes:
1. Content in the centre
2. Padding
3. Border
4.Margin
The dimensions of each of these elements can be modified to achieve the desired layout of a webpage. The image below visually explains the box model


{% load i18n %} {% url 'page' path='about/pycontw' as about_pycontw_url %} {% url 'page' path='about/code-of-conduct' as about_coc_url %} {% url 'page' path='about/community' as about_community_url %} {% url 'page' path='about/staff' as about_staff_url %} {% url 'page' path='events/overview' as events_overview_url %} {% url 'events_schedule' as events_schedule_url %} {% url 'page' path='events/keynotes' as events_keynote_url %} {% url 'events_talk_list' as events_talk_list_url %} {% url 'events_tutorial_list' as events_tutorial_list_url %} {% url 'page' path='events/sprints' as events_sprint_url %} {% url 'page' path='events/open-spaces' as events_openspaces_url %} {% url 'page' path='events/pyday' as events_pyday_url %} {% url 'page' path='events/tutorials' as events_tutorial_url %} {% url 'page' path='speaking/cfp' as speaking_cfp_url %} {% url 'page' path='speaking/talk' as speaking_talk_url %} {% url 'page' path='speaking/tutorial' as speaking_tutorial_url %} {% url 'page' path='speaking/recording' as speaking_recording_url %} {% url 'sponsor_list' as sponsor_url %} {% url 'page' path='registration/financial-aid' as reg_financial_aid_url %} {% url 'page' path='registration/ticket-info' as reg_ticket_info_url %} {% url 'page' path='registration/registration' as reg_registration_url %} {% url 'page' path='venue' as venue_url %} {% url 'page' path='venue/accommodation' as venue_accommodation_url %} {% url 'page' path='portal' as portal_url %} {% url 'page' path='sponsor/sponsor' as sponsor_url %}


--- layout: menucard.njk templateEngineOverride: md, njk title: "Projets à la Carte" subtext: mixed Edible Cuisine (indoor seating available) ---


Country:
USA
Region:
Denver
Weather status
Temparature:
51°C
Forecast:
Cloudy
Humidity:
60
%
Wind speed:
6.2
km/h
Coronavirus status
Last Update Date:
2021-01-06
Cases:
5516 (+1%)
Deaths:
346 (-0.8%)
Recovered:
324 (-0.3%)


An air vehicle having a bilaterally asymmetric configuration for reducing wave drag may include a body having a longitudinal axis. The air vehicle may further include longitudinally offset engine nacelles, asymmetrically lengthened engine nacelles, and/or longitudinally offset protruding aerodynamic surfaces for reducing wave drag.
The present disclosure relates generally to aircraft configurations and, more particularly, to configurations for minimizing wave drag of an air vehicle.
Wave drag is a phenomenon that occurs as a result of the compression of air as an aircraft approaches the speed of sound. The compression generates a shock wave which may be accompanied by a localized change in the pressure and/or temperature of the air. At subsonic speeds, wave drag forms a relatively small portion of the overall aerodynamic drag on an aircraft. However, wave drag increases significantly as an aircraft approaches Mach 1.
Known methods of minimizing wave drag include designing an aircraft with a configuration that follows the Whitcomb Area Rule. The Whitcomb Area Rule dictates a minimization of change in the cross-sectional area of the aircraft in the longitudinal direction. In this regard, an aircraft following the Whitcomb Area Rule has a relatively smooth or gradual change in the size of the cross-sectional area regardless of changes in the cross-sectional shape. In conventional aircraft, the forward end of an aircraft fuselage may have a relatively small cross-sectional area. Unfortunately, the cross-sectional area may increase significantly and abruptly at the wings and/or engines and which may result in significant wave drag at transonic speeds.
Attempts to minimize changes in the longitudinal cross-sectional area of an aircraft including locally necking down the fuselage at the juncture with the wings to minimize the change in total cross-sectional area at that location. Unfortunately, designing and manufacturing an aircraft with a fuselage having a variable cross-sectional shape adds to the overall cost and complexity of the aircraft. In addition, in a commercial airliner, locally necking down the fuselage at the wings may be economically undesirable due the potential loss of revenue-generating passenger seats or cargo space.
Another approach to minimizing wave drag in an aircraft is by forming the wings in a swept arrangement. Wing sweep may minimize changes in the longitudinal cross-sectional area of an aircraft by distributing the cross-sectional area of the wings over a longer length of the fuselage. Wing sweep may delay the onset of wave drag rise by increasing the Mach number required to generate shockwaves on the wing surface. The increase in Mach number may occur due to alignment of the pressure isobars with the sweep of the wing such that shocks will only form when the component of velocity perpendicular to the pressure isobars reaches sonic speeds. Unfortunately, excessive wing sweep may have an effect on the low speed performance of an aircraft. In addition, wing sweep may add cost and complexity to the aircraft design and manufacturing process.
For aircraft operating at subsonic speeds, wave drag accounts for a relatively small portion of the total aerodynamic drag of the aircraft, as indicated above. However, a small reduction in wave drag may translate into a significant increase in fuel efficiency of the aircraft. Military aircraft that operate in the transonic region may also benefit from a reduction in wave drag with an increase in top speed and/or an increase in range.
As can be seen, there exists a need in the art for an aircraft configuration that minimizes wave drag and which may be provided with minimal impact on the aircraft design and manufacturing process.
The above-noted needs associated with minimizing wave drag are specifically addressed and alleviated by the present disclosure which provides an air vehicle having a bilaterally asymmetric configuration. The air vehicle may include a body having a longitudinal axis. The air vehicle may further include longitudinally offset engine nacelles, asymmetrically lengthened engine nacelles, and/or longitudinally offset protruding aerodynamic surfaces including stabilizers, control surfaces, and/or high aspect ratio wings.
In a further embodiment, the air vehicle may comprise an aircraft having a bilaterally asymmetric configuration. The aircraft may include a fuselage and an engine nacelle mounted on each one of opposing sides of the fuselage. The engine nacelle on one side of the fuselage may have a forward nacelle extension. The engine nacelle on an opposite side of the fuselage may have an aft nacelle extension.
Also disclosed is a method of minimizing wave drag of an air vehicle. The method may include providing a body of an air vehicle having a longitudinal axis oriented generally parallel to a forward flight direction, and longitudinally offsetting at least one pair of components on opposite sides of the body relative to the longitudinal axis. The components may comprise engine nacelles, high aspect ratio wings, stabilizers, control surfaces, and/or external stores.
The features, functions and advantages that have been discussed can be achieved independently in various embodiments of the present disclosure or may be combined in yet other embodiments, further details of which can be seen with reference to the following description and drawings below.
These and other features of the present disclosure will become more apparent upon reference to the drawings wherein like numbers refer to like parts throughout and wherein:
figref[FIG. 1] is a top view of a baseline configuration of an aircraft having a bilaterally symmetric arrangement;
figref[FIG. 1A] is a diagrammatic section view of a local longitudinal cross-sectional area of the baseline configuration of the aircraft of figref[FIG. 1] taken along a cutting plane at a forward station location of the aircraft;
figref[FIG. 1B] is a diagrammatic section view of a local longitudinal cross-sectional area of the baseline configuration taken along a cutting plane at an intermediate station location;
figref[FIG. 1C] is a diagrammatic section view of a local longitudinal cross-sectional area of the baseline configuration taken along a cutting plane at an aft station location;
figref[FIG. 2] is a top view of an aircraft in a bilaterally asymmetric arrangement having an engine offset configuration;
figref[FIG. 2A] is a diagrammatic section view of a local longitudinal cross-sectional area of the engine offset configuration of the aircraft of figref[FIG. 2] taken along a cutting plane at the forward station location;
figref[FIG. 2B] is a diagrammatic section view of a local longitudinal cross-sectional area of the engine offset configuration taken along a cutting plane at a first intermediate station location;
figref[FIG. 2C] is a diagrammatic section view of a local longitudinal cross-sectional area of the engine offset configuration taken along a cutting plane at a second intermediate station location;
figref[FIG. 2D] is a diagrammatic section view of a local longitudinal cross-sectional area of the engine offset configuration taken along a cutting plane at the aft station location;
figref[FIG. 3] is a graph plotting longitudinal cross-sectional area versus station location of a baseline aircraft configuration and an engine offset aircraft configuration;
figref[FIG. 4] is a graph plotting change in cross-sectional area versus station location for the cross-sectional area plots of the baseline configuration and the engine offset configuration of figref[FIG. 3] ;
figref[FIG. 5] is a top view of an embodiment of an aircraft in a bilaterally asymmetric configuration having offset wings and offset horizontal stabilizers;
figref[FIG. 6] is a top view of an embodiment of an aircraft in a bilaterally asymmetric configuration having forward and aft nacelle extensions mounted to the engine nacelles on opposite sides of the aircraft;
figref[FIG. 7A] is a top view of an embodiment of a cruise missile in a bilaterally symmetric configuration;
figref[FIG. 7B] is a top view of the cruise missile of figref[FIG. 7A] in a bilaterally asymmetric configuration having offset missile wings;
figref[FIG. 8A] is a top view of an embodiment of an aircraft having external stores mounted in a bilaterally symmetric configuration;
figref[FIG. 8B] is a top view of the aircraft of figref[FIG. 8A] wherein a first one of the external stores is released on one side of the fuselage and on an outboard side of the wing;
figref[FIG. 8C] is a top view of the aircraft of figref[FIG. 8B] wherein a second one of the external stores is released on an opposite side of the fuselage from figref[FIG. 8B] and on an inboard side of the wing;
figref[FIG. 8D] is a top view of the aircraft of figref[FIG. 8C] wherein a third one of the external stores is released from the same side of the fuselage as in figref[FIG. 8C] ;
figref[FIG. 8E] is a top view of an embodiment of an aircraft having external stores mounted in a bilaterally asymmetric configuration;
figref[FIG. 9] is a flow diagram having one or more operation that may be included in a method of minimizing wave drag of an air vehicle; and
figref[FIG. 10] is a graph plotting a ratio of wave drag coefficient/minimum drag versus offset distance as a percentage of a maximum offset distance for a bilaterally asymmetric configuration of an aircraft having offset wings, offset engines, and offset engine nacelle lengths.
Referring now to the drawings wherein the showings are for purposes of illustrating various embodiments of the present disclosure, shown in figref[FIG. 1] is a top view of an air vehicle 100 configured as an aircraft 102 or airplane. The aircraft 102 is illustrated as a tube-and-wing aircraft 102 or airplane and is shown in a baseline configuration 132 wherein the aircraft components 114 are arranged in a bilaterally symmetric configuration 130 relative to a longitudinal axis 106 of the aircraft 102. The aircraft 102 may be arranged such that the longitudinal axis 106 of the body 104 is oriented generally parallel to a forward flight direction 112 of the aircraft 102 corresponding to a direction of an oncoming airflow stream 110.
The body 104 of the aircraft 102 may comprise a fuselage 170 extending from a fuselage forward end 172 to a fuselage aft end 174. The fuselage aft end 174 may include an empennage 260. The empennage 260 may include one or more tail surfaces such as one or more stabilizers 268 and/or control surfaces. For example, the empennage 260 may include horizontal stabilizers 268, one or more vertical stabilizers 262, and one or more control surfaces 272 such as an elevator (not shown) and/or a rudder (not shown) for directional control of the aircraft 102. In the baseline configuration 132 of the aircraft 102 in figref[FIG. 1] , the stabilizers 268 are arranged in a bilaterally symmetric configuration 130 wherein the horizontal stabilizers 268 are positioned at the same station location and are generally longitudinally aligned with one another.
In figref[FIG. 1] , the aircraft 102 may further include one or more protruding aerodynamic surfaces 190 that may extend outwardly from the body 104 or fuselage 170. For example, the aircraft 102 may include a pair of wings 192 that may be mounted on opposite sides of the fuselage 170. The wings 192 on each side of the fuselage 170 may be configured substantially similar to one another. For example, the wings 192 on each side of the fuselage 170 may generally have the same size, shape, contour, airfoil sections, wing span, taper ratio, sweep (e.g., forward or aft), and dihedral or anhedral. Although shown in an aftwardly swept and tapered configuration, the wings 192 may be provided in a non-swept configuration or a forwardly-swept configuration. In addition, the wings 192 may be provided in a non-tapered configured wherein the airfoil section (not shown) or chord is generally constant along a semi-span of each wing 192.
In embodiments of the system and method disclosed herein, the wings 192 may be provided as high aspect ratio wings 192. For example, the high aspect ratio wings 192 may have an aspect ratio of wingspan (not shown) to average chord (not shown) of at least 2. In an embodiment of a commercial airliner similar to that which is shown in figref[FIGS. 1 and 2] , the high aspect ratio wings 192 may be provided in an aspect ratio in the range of from approximately 2 to 10 or higher. Each wing 192 may have a wing root 198, a wing tip 202, a leading edge 204, and a trailing edge 206. The wing root 198 has a root chord 200 extending between the forward-most point on the leading edge 204 and the aft-most point on the trailing edge 206. In the present disclosure, the wing root 198 is defined at the intersection of the wing 192 with the fuselage 170. In the baseline configuration 132 of the aircraft 102 in figref[FIG. 1] , the wings 192 are arranged in a bilaterally symmetric configuration 130 wherein the wings 192 are positioned at the same station location.
In figref[FIG. 1] , the aircraft 102 may further include one or more propulsion units 230. The aircraft 102 is shown in a twin-engine arrangement having a pair of propulsion units 230 mounted to the wings 192 on opposite sides of the fuselage 170. The propulsion units 230 may be positioned at approximately the same lateral location on opposite sides of the fuselage 170. In an embodiment, the air vehicle 100 (i.e., aircraft 102) may include equivalent quantities of engine nacelles 232 or propulsion units 230 on opposing sides of the body 104. Each propulsion unit 230 of a pair may be positioned at the same lateral location on opposite sides of the fuselage 170. In this regard, each one of propulsion units 230 of a pair may be mounted at approximately the same distance from the fuselage 170 on opposite sides thereof. In an embodiment not shown, uneven quantities of propulsion units 230 or engine nacelles 232 may be included with the aircraft 102. In addition, propulsion units 230 may be mounted at any location on the wings 192, the fuselage 170, and/or on other structures (not shown) that may be included with the aircraft 102, such that the propulsion units 230 are not limited to mounting at the locations shown in figref[FIG. 1] . The propulsion units 230 on each side of the fuselage 170 may generally have a similar configuration although the system and method disclosed herein may be applied to aircraft 102 having different propulsion unit configurations.
In figref[FIG. 1] , each one of the propulsion units 230 may include engine nacelles 232 or propulsion units 230 which are shown as being wing-mounted as distinguished from engine nacelles (not shown) or propulsion units (not shown) that may be integrated with a fuselage (not shown). In any of the embodiments disclosed herein, engines nacelles may be fuselage-mounted (not shown) via pylons or mounts extending outwardly form the fuselage. In the embodiments disclosed herein, the engine nacelles 232 on each side of the fuselage 170 may have substantially similar nacelle diameters, lengths, and configurations.
Each engine nacelle 232 may generally define an outer geometry of the propulsion unit 230. In addition, each engine nacelle 232 has an engine inlet 238 which, in the present disclosure, is defined as the forward-most point and/or a front face of the engine nacelle 232. In the present disclosure, the engine nacelle 232 extends from the engine inlet to the engine nozzle 240 defined in the present disclosure as the aft-most point and/or an aft end of the engine nacelle 232 or the aft-most point of the propulsion unit 230. In the baseline configuration 132 of the aircraft 102 in figref[FIG. 1] , the wing-mounted engine nacelles 232 are arranged in a bilaterally symmetric configuration 130 wherein the engine inlets 238 and the engine nozzles 240 are generally positioned at the same station location.
Although the propulsion units 230 in the present disclosure are shown and described in the context of turbine engines having engine nacelles 232, the system and method disclosed herein may be applied to aircraft 102 having turboprop engines or other propeller-driven engines, and may additionally include piston engines, or any other type of the propulsion unit, without limitation. In addition, the system and method disclosed herein may be directed toward aircraft planforms other than the tube-and-wing aircraft 102 illustrated in figref[FIG. 1] . For example, the system and method disclosed herein may be directed toward blended wing aircraft or any type of air vehicle 100 or air/space vehicle, without limitation, that operates at, near, or above the transonic flight regime.
Referring to figref[FIG. 1A] , shown is a section view of a local longitudinal cross-sectional area 176 of the baseline configuration 132 of the aircraft 102 taken along a cutting plane 140 passing through the fuselage 170 at a forward station location 134 as shown in figref[FIG. 1] . The fuselage cross-sectional area 176 in figref[FIG. 1A] represents the aircraft cross-sectional area displacing an oncoming airflow stream 110 (figref[FIG. 1] ).
Referring to figref[FIG. 1B] , shown is a section view of the local longitudinal cross-sectional area of the baseline configuration 132 aircraft 102 taken along a cutting plane 140 at an intermediate station location 136 (figref[FIG. 1] ) of the aircraft 102. The cross-sectional area in figref[FIG. 1B] includes the cross-sectional area 176 of the fuselage 170 and the cross-sectional area 242 of both of the engine nacelles 232. In this regard, figref[FIG. 1B] illustrates the abrupt increase in the cross-sectional area displacing an oncoming airflow stream 110 (figref[FIG. 1] ) for a conventional baseline configuration 132 aircraft 102.
Referring to figref[FIG. 1C] , shown is a section view of the local longitudinal cross-sectional area of the baseline configuration 132 aircraft 102 taken along a cutting plane 140 at an aft station location 138 (figref[FIG. 1] ) of the aircraft 102. The cross-sectional area in figref[FIG. 1C] includes the cross-sectional area 176 of the fuselage 170, the cross-sectional area 242 of both of the engine nacelles 232, and the cross-sectional area 208 of the wing 192 on each side of the fuselage 170 at the aft station location 138. figref[FIG. 1C] further illustrates the abrupt increase in the cross-sectional area occurring in a relatively short distance between the intermediate station location 136 and the aft station location 138 (figref[FIG. 1] ) and which may correspond to a significant increase in wave drag as the baseline configuration 132 aircraft 102 approaches the speed of sound.
Referring to figref[FIG. 2] , shown is a top view of an aircraft 102 advantageously having a bilaterally asymmetric configuration 150 having engine nacelles 232 that are longitudinally offset from one another. In figref[FIG. 2] , the engine nacelles 232 comprise a forward nacelle 234 which may be positioned forward of the aft nacelle 236 on the opposite side of the fuselage 170. In this regard, the engine nacelles 232 in figref[FIG. 2] may be longitudinally offset from one another by an engine offset distance as described below. With the exception of the engine nacelles 232, the engine offset configuration 152 of the aircraft 102 in figref[FIG. 2] may be substantially similar to the baseline configuration 132 of the aircraft 102 in figref[FIG. 1] with regard to the bilateral symmetry of the remaining components 114 of the aircraft 102 with regard to the protruding aerodynamic surfaces 190 such as the wings 192, the horizontal stabilizers 268, and other components 114.
In figref[FIG. 2] , the engine nacelles 232 may be offset by a predetermined offset distance 244. In the embodiment shown, the forward nacelle 234 and the aft nacelle 236 are positioned at generally the same lateral location on opposite sides of the fuselage 170. However, the forward nacelle 234 may be positioned such that at least a portion of an approximately constant cross-sectional area 249 (i.e., illustrated in cross-hatch) of the forward nacelle 234 is generally longitudinally aligned with an engine inlet 238 (i.e., the forward face) of an aft nacelle 236. For example, a location of a forward end 250 of an approximately constant cross-sectional area 249 of the forward nacelle 234 is generally aligned with the engine inlet 238 of the aft nacelle 236 and which may provide an optimum offset distance 244 that corresponds to minimum wave drag for the aircraft configuration. In this regard, the forward nacelle 234 and the aft nacelle 236 may be longitudinally offset by an offset distance 244 that minimizes the rate of change (e.g., increasing or decreasing) of cross-sectional area of the aircraft relative to the rate of change of cross-sectional area of a bilaterally symmetric aircraft. In an embodiment, the forward nacelle 234 may be positioned forward of a non-offset location (not shown) or original symmetric location of the forward nacelle 234. Likewise, the aft nacelle 236 may be positioned aft of a non-offset location (not shown) or original symmetric location of the aft nacelle 236. However, the forward nacelle 234 and the aft nacelle 236 may be positioned at any location relative to their respective non-offset locations.
In an embodiment, the engine nacelles 232 may be offset by an offset distance 244 that is as large as is physically practical. For example, the engine nacelles 232 may be offset by any amount ranging from non-offset (i.e., longitudinally aligned) up to an offset distance 244 wherein the engine inlet 238 of one engine nacelle 232 is aligned with the engine nozzle 240 of the engine nacelle 232 on an opposite side of the fuselage 170. Larger engine offset distances 244 are also possible. In an embodiment, the engine nacelles 232 may be longitudinally offset such that at least a portion of an approximately constant cross-sectional area 249 of a forward nacelle 234 is generally longitudinally aligned with an engine inlet of an aft nacelle 236. The approximately constant cross-sectional area 249 is shown in cross-hatch in figref[FIG. 2] and may include a region of maximum cross sectional area of the engine nacelle 232. In this regard, the approximately constant cross-sectional area 249 of an engine nacelle 232 may have a slightly curved outer surface (e.g., convexly curved) and is not necessarily limited to a constant outer diameter or constant cross-sectional shape.
In the embodiment shown in figref[FIG. 2] , the station location of the engine inlet 238 (e.g., the forward face) of the aft nacelle 236 on one side of the fuselage 170 may be generally longitudinally aligned with an aft end 251 of the approximately constant cross-sectional area 249 of the forward nacelle 234 on the opposite side of fuselage 170. In a further embodiment not shown, the station location of the aft end of 251 the approximately constant cross-sectional area 249 of the aft nacelle 236 may be generally longitudinally aligned with the engine nozzle 240 of the forward nacelle 234. In another embodiment not shown, the engine nozzle 240 of the forward nacelle 234 on one side of the fuselage 170 may be generally longitudinally aligned with the engine inlet 238 of the aft nacelle 236 on the opposite side of fuselage 170. Advantageously, the above-noted positions of the forward and aft end 250, 251 of the approximately constant cross-sectional area 249 may correspond to minimum wave drag of the aircraft 102.
In a further embodiment not shown, the engine nacelles 232 may be longitudinally offset such that a region of decreasing cross-sectional area of a forward nacelle 234 at least partially overlaps a region of increasing cross-sectional area of an aft nacelle 236. The region of decreasing cross-sectional area of an engine nacelle 232 may comprise the portion of the nacelle located aft of the approximately constant cross-sectional area 249. The region of increasing cross-sectional area of an engine nacelle 232 may comprise the portion of the nacelle located forward of the approximately constant cross-sectional area 249. By overlapping the decreasing cross-sectional of a nacelle on one side of the fuselage with the increasing cross-sectional area of a nacelle on an opposite side of the fuselage, the rate of change of cross-sectional area of the aircraft 102 may be minimized relative to an air vehicle having bilaterally symmetric (non-offset) engine nacelles.
For any one of the bilaterally asymmetric embodiments disclosed herein, the offset distance for a pair of components 114 (e.g., engine nacelles 232, wings 192, stabilizers 268, control surfaces 272, etc.) on opposite sides of the fuselage 170 may be analytically determined according to a method described below to calculate one or more offset distances that correspond to minimum wave drag for the aircraft 102. Alternatively, the amount of offset distance may be determined experimentally, or by a combination of analysis and experimentation.
The engine offset configuration 152 in figref[FIG. 2] represents one of a variety of bilaterally asymmetric configurations 150 that may advantageously minimize an increase in wave drag of an aircraft 102. In the present disclosure, wave drag in an air vehicle 100 may advantageously be minimized by mounting one or more pairs of components 114 in an offset arrangement on opposite sides of the fuselage 170. For example, as described in greater detail below, wave drag may be minimized by longitudinally offsetting a pair of protruding aerodynamic surfaces 190 of the aircraft 102. Protruding aerodynamic surfaces 190 may be defined as any member that extends outwardly from the body 104 or fuselage 170 of the air vehicle 100 or aircraft 102.
In the present disclosure, protruding aerodynamic surfaces 190 may include high aspect ratio wings 192, horizontal stabilizers 268, vertical stabilizers 262, canted stabilizers (not shown), canards (not shown), control surfaces 272 and other protruding aerodynamic surfaces 190. Stabilizers may be defined as aerodynamic surfaces that provide directional stability to the aircraft 102 or air vehicle 100. In an embodiment, stabilizers may comprise fixed or non-movable protruding aerodynamic surfaces 190. In the present disclosure, protruding aerodynamic surfaces 190 may also comprise control surfaces 272 such as for aerodynamic control or directional control of aircraft 102 or air vehicle 100 and may include generally movable control surfaces 272. For example, a control surface 272 may include a rudder, an elevator, an elevon, a ruddervator, or any one of a variety of movable surfaces. The control surface 272 may be hingedly coupled at one edge to another member such as a stabilizer. However, a control surface 272 may be pivotably mounted to the air vehicle 100 or aircraft 102 as a separate component. For example, a control surface 272 may comprise an all-moving elevator, rudder, or other control surface configuration. In the present disclosure, a protruding aerodynamic surface 190 may include any member, structure, device, or component that presents a change in cross-sectional area to an oncoming airflow stream 110 passing over an air vehicle 100 or aircraft 102.
Referring to figref[FIG. 2A] , shown is a section view of the local longitudinal cross-sectional area of the engine offset configuration 152 of the aircraft 102 taken along the cutting plane 140 at the forward station location 154 in figref[FIG. 2] . The forward station location 154 in figref[FIG. 2] is positioned at the same location as the forward station location 134 in figref[FIG. 1] . The cross-sectional area 176 in figref[FIG. 2A] has the same cross-sectional area 176 as in figref[FIG. 1A] .
Referring to figref[FIG. 2B] , shown is a section view of the local longitudinal cross-sectional area of the engine offset configuration 152 taken along a cutting plane 140 at a first intermediate station location 156 (figref[FIG. 2] ) of the aircraft 102. The cross-sectional area in figref[FIG. 2B] includes the cross-sectional area 176 of the fuselage 170 and the cross-sectional area 242 of a single one of the engine nacelles 232. In this regard, figref[FIG. 2B] illustrates a more gradual increase in the cross-sectional area for the engine offset configuration 152 relative to the more abrupt increase in cross-sectional area shown in figref[FIG. 1B] for the baseline configuration 132.
Referring to figref[FIG. 2C] , shown is a section view of the local longitudinal cross-sectional area of the engine offset configuration 152 taken along a cutting plane 140 at a second intermediate station location 157 (figref[FIG. 2] ). The cross-sectional area in figref[FIG. 2C] includes the cross-sectional area 176 of the fuselage 170 and the cross-sectional area 242 of both of the engine nacelles 232 and is similar in size to the cross-sectional area shown in figref[FIG. 1B] for the baseline configuration 132 aircraft 102 of figref[FIG. 1] . figref[FIG. 2C] further illustrates the gradual increase in cross-sectional area for the engine offset configuration 152 relative to the abrupt increase in cross-sectional area for the baseline configuration 132.
Referring to figref[FIG. 2D] , shown is a section view of the local longitudinal cross-sectional area of the baseline configuration 132 aircraft 102 taken along a cutting plane 140 at the aft station location 158 (figref[FIG. 2] ) of the aircraft 102. The aft station location 158 in figref[FIG. 2] is at the same location as the aft station location 138 in figref[FIG. 1] and the cross-sectional area 176 in figref[FIG. 2D] has the same cross-sectional area 176 as in figref[FIG. 1C] . The cross-sectional area in figref[FIG. 2D] includes the cross-sectional area of the fuselage 170, the cross-sectional area 242 of both of the engine nacelles 232, and the cross-sectional area 208 of a portion of the wings 192 at the aft station location 158.
figref[FIGS. 2A-2D] illustrate the more gradual increase in cross-sectional area achieved by longitudinally offsetting the engine nacelles 232 relative to the abrupt increase in cross-sectional area of the baseline configuration 132 as shown in figref[FIGS. 1A-1D] . While not indicated in figref[FIGS. 2A-2D] , the offset engine nacelles 232 may be longitudinally offset to provide a gradual decrease in cross-sectional area as the airflow stream 110 approaches the aft end of the longitudinally offset engine nacelles 232. As may be appreciated, by longitudinally offsetting the engine nacelles 232, wave drag may be minimized due to the more gradual change in the distribution of the cross-sectional area along the longitudinal axis 106 of an aircraft 102. In any of the embodiments disclosed herein, the gradual change in the distribution of the cross-sectional area may include a gradual increase in cross-sectional area and/or a gradual decrease in cross-sectional area of the air vehicle 100 or aircraft 102.
Referring to figref[FIG. 3] , shown is a graph plotting longitudinal cross-sectional area versus station location for the baseline configuration 132 (i.e., no offset) of figref[FIG. 1] and for the engine offset configuration 152 of figref[FIG. 2] . Station location is indicated relative to an origin 108 position which is located on the graph midway between the forward fuselage location on a left side of the graph and the aft fuselage location on a right side of the graph. The graph of figref[FIG. 3] was generated from a relatively low fidelity analysis of the baseline configuration 132 and a relatively low fidelity analysis of the engine offset configuration 152 using the same analysis parameters as in the baseline configuration 132 analysis.
In figref[FIG. 3] , the plot of the area distribution for the baseline configuration 132 (i.e., no offset) is illustrated as a solid line. The plot of the area distribution for the engine offset configuration 152 is illustrated as a dashed line and is superimposed with the solid line of the baseline configuration 132. For the engine offset configuration 152, the dashed line of the plot illustrates an initial increase in cross-sectional area at the first intermediate station location 156 and represents the area contribution from the forward nacelle 234 (figref[FIG. 2] ). As can be seen, the initial area increase for the engine offset configuration 152 occurs prior to (i.e., relative to an oncoming airflow stream) the initial increase in cross-sectional area for the baseline configuration 132. The difference in height of the dashed line and solid line also illustrates that the maximum cross-sectional area of the engine offset configuration 152 is less than the maximum cross-sectional area of the baseline configuration 132.
figref[FIG. 4] illustrates a plot of the derivative of the area contribution of figref[FIG. 3] and illustrates the change in cross-sectional area versus station location for the baseline configuration 132 and the engine offset configuration 152. The plot of change in area distribution for the baseline configuration 132 is shown as a solid line. The plot of change in area distribution for the engine offset configuration 152 is shown as a dashed line. The dashed line in figref[FIG. 4] illustrates relatively uniform blending of the area contributions from the forward nacelle 234 (figref[FIG. 2] ) and the aft nacelle 236 (figref[FIG. 2] ) for the engine offset configuration 152 and which advantageously corresponds to a minimal rate of area increase. In contrast, in the same section of the plot of figref[FIG. 4] , the solid line illustrates an abrupt increase in area contribution (i.e., at element 130) from the longitudinally-aligned engine nacelles 232 of the baseline configuration 132 (figref[FIG. 1] ). In addition, the negative peak in the solid line illustrates an abrupt decrease in area contribution from the longitudinally-aligned engine nacelles 232 of the baseline configuration 132.
figref[FIG. 5] shows an aircraft 102 in a bilaterally asymmetric configuration 150 having longitudinally offset protruding aerodynamic surfaces 190 including longitudinally offset wings 192 and/or longitudinally offset horizontal stabilizers 268. In the present disclosure, as indicated above, a protruding aerodynamic surface 190 comprises any member that is mounted to and/or extends or protrudes outwardly from the body 104. The aircraft 102 in figref[FIG. 5] includes a forward wing 194 and an aft wing 196 which may be offset from one another by any wing offset distance, without limitation. The aircraft 102 may also include stabilizers that may be offset from one another by any distance, without limitation. For example, an aircraft 102 may include a pair of horizontal stabilizers 268 such as a forward stabilizer 264 and an aft stabilizer 266 that may be offset from one another. Although not shown, the vertical stabilizer 262 or vertical tail may be longitudinally offset with respect to the horizontal stabilizer 268. In addition to offset wings 192, an aircraft 102 in a bilaterally asymmetric configuration 150 may include longitudinally offset canard surfaces (not shown) mounted at a forward end of a fuselage, longitudinally offset ruddervators (not shown) as may be mounted to an aft end of a fuselage, or other empennage configurations (e.g., V-tail, U-tail, T-tail, etc.—not shown) that may be offset from one another. Longitudinally offset protruding aerodynamic surfaces 190 may also include control surfaces (not shown) that may be mounted to a blended wing aircraft (not shown).
In figref[FIG. 5] , the forward wing 194 and the aft wing 196 may be longitudinally offset from one another by any distance, as indicated above. The engine nacelles 232 on each side of the fuselage may be mounted at the same position relative to the wing such that longitudinally offsetting the wings also results in longitudinally offsetting the engine nacelles. However, the aircraft may be configured with longitudinally offset wings and non-offset wing-mounted engine nacelles (not shown). In figref[FIG. 5] , the longitudinally offset wings 192 may have a generally high aspect ratio of up to 10 or greater as compared to a delta wing (not shown) aircraft that may have a relatively low aspect ratio of 3 or less.
In any of the offset configurations disclosed herein, a maximum offset distance of a set of components (engine nacelles 232, protruding aerodynamic surfaces 190, etc.) may be dependent on the configuration of the air vehicle. For example, the wing offset distance on an unmanned aerial vehicle (UAV) may be less than the wing offset distance on a commercial jetliner. The maximum offset distance may be determined by structural, aerodynamic, and/or manufacturing constraints, or other constraints. In figref[FIG. 5] , the forward wing 194 is shown offset from the aft wing 196 by a wing offset distance 210 of approximately a length of the root chord 200 of one of the wings 192. As indicated above, the wing root 198 may be defined at a location of an intersection of the wings 192 with the fuselage 170. In an embodiment, the wings 192 may be offset from one another by an offset distance 210 of between approximately 1 foot and a length of the root chord 200. However, in order to minimize complications due to load path transfers or torsional loads on the fuselage 170, or complications regarding aerodynamics, the offset distance 210 of a pair of offset wings 192 may be minimized.
The horizontal stabilizers 268 may also be longitudinally offset by a stabilizer offset distance 270 that may be limited to the length of the root chord 200 of one of the horizontal stabilizers 268. However, the horizontal stabilizers 268 may be offset by any stabilizer offset distance 270, without limitation, as indicated above. In any embodiment disclosed herein, the protruding aerodynamic surfaces 190 may be longitudinally offset from one another such that a region of decreasing cross-sectional area of a forward component (e.g. a forward protruding aerodynamic surface) on one side of the fuselage at least partially overlaps a region of increasing cross-sectional area of an aft component (e.g. an aft protruding aerodynamic surface) on an opposite side of the fuselage.
figref[FIG. 6] shows a further embodiment of an aircraft 102 in a bilaterally asymmetric configuration 150. As shown, the wings 192 may be bilaterally symmetric such that the wings 192 are positioned at the same station location on opposite sides of the fuselage 170. Bilateral asymmetry of the aircraft 102 may be provided with asymmetrically lengthened engine nacelles 232. In this regard, an engine nacelle 232 on one side of the fuselage 170 may be provided with a forward nacelle extension 246. The forward nacelle extension 246 may extend or protrude forwardly from the engine nacelle 232. In addition, an engine nacelle 232 on an opposite side of the fuselage 170 may be provided with an aft nacelle extension 248. The aft nacelle extension 248 may extend or protrude aftwardly from the engine nacelle 232. An aircraft may include a forward nacelle extension 246 on one engine nacelle 232, and/or an aft nacelle extension 248 on one nacelle. However, an aircraft may be provided with both a forward nacelle extension 246 and an aft nacelle extension 248 on one engine nacelle 232.
As shown, the forward nacelle extension 246 may be offset by an extension offset distance 252 and/or the aft nacelle extension 248 may be offset by an extension offset distance 252 which may be different than the extension offset distance 252 of the forward nacelle extension 246. The embodiment shown in figref[FIG. 6] may represent a retrofit configuration for an existing aircraft 102 having a bilaterally symmetric configuration, at least with regard to the symmetry of the wings 192 and engine nacelles 232. By adding a forward nacelle extension 246 and/or an aft nacelle extension 248, wave drag characteristics of an existing aircraft 102 may be significantly improved.
figref[FIG. 7A] shows an embodiment of a cruise missile 280 in a bilaterally symmetric configuration 130 having a missile body 282 and longitudinally-aligned missile wings 284. The cruise missile 280 represents an alternative embodiment of an air vehicle 100 that may operate in the transonic region and which may benefit from the system and method for minimizing wave drag as disclosed herein.
figref[FIG. 7B] shows the cruise missile 280 in a bilaterally asymmetric configuration 150 having offset missile wings 284. The missile wings 284 may be offset by a missile wing offset 290 distance of up to a length of the root chord 288 of the missile wing root 286 although the missile wings 286 may be provided in any missile wing offset 290 distance, without limitation, as indicated above. Advantageously, the offset missile wings 284 may provide a more gradual change in the distribution of the cross-sectional area of the missile 280 relative to the symmetric missile 280 configuration shown in figref[FIG. 7A] . The above-described offset configurations may also be applied to a rocket (not shown) or launch vehicle. For example, a rocket may be provided with stabilizing fins (not shown) that may be offset for minimizing the wave drag. Any one of the above-described offset configurations may also be applied to other vehicles including space vehicles for minimizing wave drag during travel through the atmosphere.
figref[FIG. 8A] is a top view of an embodiment of a military aircraft 102 configuration. The aircraft 102 has an equal number of external stores 300 indentified as 300A, 300B, 300C, and 300D mounted in a bilaterally symmetric configuration 130 on the aircraft 102. The external stores 300 are illustrated as fuel pods 302 mounted to the wings in two pairs on opposite sides of the fuselage 170. However, the external stores 300 may be provided in any type of store configuration that may be releasably mounted to the aircraft 102. For example, external stores 300 may include, but are not limited to, weapons such as missiles and/or bombs, surveillance pods, or any other type of external store that may be releasably mounted to the aircraft 102. The external stores 300 may be released from the aircraft 102 in a manner that minimizes asymmetrical loading while minimizing the rate of change of cross-sectional area of the aircraft 102 similar to the engine offset configuration 152 illustrated in figref[FIG. 2] and described above.
For example, figref[FIG. 8B-8D] illustrates an embodiment of a sequence for releasing external stores 300 in a manner that minimizes cross-sectional area change. figref[FIG. 8B] shows the release of external store 300A prior to the release of the external stores 300B, 300C, and 300D to effectively provide a bilateral asymmetric configuration in figref[FIG. 8B] . figref[FIG. 8C] illustrates the next stage of the release sequence wherein external store 300C is released prior to the release of external stores 300B and 300D. The stage of the release sequence in figref[FIG. 8C] may represent an arrangement that minimizes the rate of change of the cross-sectional area of the aircraft 102 relative to an arrangement wherein external stores 300 are released in equal quantities (not shown) from each side of the aircraft 102.
figref[FIG. 8D] illustrates the next stage of the release sequence wherein external store 300D is released prior to external store 300B which, although not shown, is the last one of the external stores 300 to be released. The release sequence 300A- 300C- 300D- 300B may provide a balance between aircraft stability and control concerns with reductions in wave drag. However, other release sequences are possible that may effectively decrease wave drag by minimizing the rate of change in the cross-sectional area of the aircraft 102. For example, for aircraft (not shown) having more than four (4) releasable external stores 300, alternative release sequences may be configured to minimize cross-sectional area change. By releasing the external stores 300 in one or more of the above-described manners, wave drag may be minimized which may improve range and/or increase air speed capability such as for operations near or in the transonic region.
figref[FIG. 8E] illustrates an embodiment of the aircraft of figref[FIG. 8A] wherein the external stores 300 are loaded or mounted to the aircraft 102 in a staggered manner that may minimize the rate of change in the cross-sectional area of the aircraft 102. In contrast to the arrangement shown in figref[FIG. 8A] wherein the external stores 300A, 300B, 300C, and 300D are mounted in a bilaterally symmetric arrangement, figref[FIG. 8E] illustrates the external stores mounted in a bilaterally offset or staggered arrangement. For example, in figref[FIG. 8E] , the external stores 300A and 300D may be offset from one another by a store offset 304. Likewise, external stores 300B and 300C may be offset from one another by a store offset 304. The offset of the external stores 300A- 300D and 300B- 300C may minimize the additions and subtractions of the cross-sectional area along the longitudinal axis of the aircraft 102 and which may advantageously minimize wave drag.
figref[FIG. 9] is a flow diagram illustrating an embodiment of a method 400 of minimizing wave drag of an air vehicle 100. The method may include Step 402 of providing a body 104 of an air vehicle 100 such as an aircraft 102. As indicated above, the air vehicle 100 has a longitudinal axis 106 oriented generally parallel to a forward flight direction 112. The aircraft 102 may comprise a commercial aircraft 102 as illustrated in figref[FIG. 2] , a military aircraft 102 as illustrated in figref[FIG. 8B] , a missile such as a cruise missile 280 illustrated in figref[FIG. 7B] , or any one of a variety of alternative air vehicle 100 configurations that may operate at or near the transonic region or at high mach numbers.
Step 404 of the method 400 of figref[FIG. 9] may include longitudinally offsetting at least one pair of components 114 on opposite sides of the body 104. However, the present disclosure is not limited to offsetting even numbers (e.g., pairs) of components. In this regard, the system and method disclosed herein may include offsetting uneven numbers of components such as offsetting three (3) or more components relative to one another to minimize a rate of change in the cross-sectional area of an aircraft. As indicated above, components 114 that may be offset may include protruding aerodynamic surfaces 190 (figref[FIG. 2] ) such as wings 192 (figref[FIG. 2] ), horizontal stabilizers 268 (figref[FIG. 2] ), vertical stabilizers 262 (figref[FIG. 2] ), canted stabilizers (not shown), control surfaces 272 (figref[FIG. 2] ), or any other protruding aerodynamic surfaces 190 extending outwardly from the fuselage 170 or body 104 of an air vehicle 100.
Components 114 may also include propulsion units 230 including engine nacelles 232 which may be wing-mounted and which may be longitudinally offset on opposite sides of the fuselage 170 as described above. In an embodiment, the method may comprise mounting a pair of wings 192 in a bilaterally symmetrical manner (i.e., non-offset) on opposite sides of the body 104, and longitudinally offsetting a pair of engine nacelles 232 as shown in figref[FIG. 2] and/or in one of the embodiments described above. Although not shown, the method may include overlapping a region of decreasing cross-sectional area of a forward nacelle with a region of increasing cross-sectional area of an aft nacelle as described above.
In an embodiment, an existing bilaterally symmetric air vehicle 100 may be converted to a bilaterally asymmetric air vehicle 100 by adding extensions to one or more components 114 of the air vehicle 100 to achieve an offset arrangement. For example, bilateral asymmetry may be achieved by retrofitting an existing aircraft 102 or airplane to add a forward nacelle extension 246 to an engine nacelle 232 on one side of the fuselage 170, and/or add an aft nacelle extension 248 to an engine nacelle 232 on an opposite side of the fuselage 170 as shown in figref[FIG. 6] . The forward nacelle extension 246 and/or the aft nacelle extension 248 may be offset by an extension offset distance 252 as mentioned above. As may be appreciated, other extension configurations may be added to other components 114 of an existing aircraft 102 to achieve bilateral asymmetry and improve the cross-sectional area distribution along a longitudinal axis 106 of the aircraft 102.
Bilateral asymmetry may also be achieved in a bilaterally symmetric air vehicle 100 (e.g., the aircraft of figref[FIG. 8A] ) by the manner in which external stores 300 are released from the aircraft. For example, as indicated above with regard to figref[FIGS. 8A-8D] , bilateral asymmetry may be effectively provided by releasing external stores 300 in a sequence that minimizes the change in the cross-sectional area of the aircraft (figref[FIG. 8B] ) and which may preferably minimize total configuration drag of the aircraft. Total configuration drag may include parasite drag (including interference drag), pressure drag, and wave drag. Referring to figref[FIG. 8E] , bilateral asymmetry may also be provided by mounting external stores 300 with store offsets 304 as described above as a means to minimize changes in the cross-sectional area of the aircraft 102 which may minimize wave drag.
Step 406 of the method 400 of figref[FIG. 9] includes minimizing a rate of change in the cross-sectional area of the air vehicle or aircraft in response to longitudinally offsetting the components. The longitudinal offsetting of the components results in a bilaterally asymmetric configuration. In any of the embodiments disclosed herein, bilateral asymmetry may be implemented in a manner that minimizes total configuration drag. Minimizing total configuration drag may include a reduction in wave drag relative to the wave drag of a bilaterally symmetric configuration. However, minimizing total configuration drag may result in a reduced wave drag that may not be reduced to an absolute minimum.
The method of minimizing wave drag may include estimating the wave drag of an air vehicle 100 as a means to determine an optimal offset distance between a pair of components 114 mounted on opposite sides of the body 104 of the air vehicle 100. In this regard, the minimum wave drag corresponds to at least one nominal offset between the components 114. The wave drag of an air vehicle 100 may be represented by the drag coefficient (C D) of the air vehicle 100 at a given Mach number. The wave drag coefficient of an air vehicle 100 may be estimated by calculating the cross-sectional area distribution S(x) of the air vehicle 100 over a vehicle length l v as illustrated in figref[FIG. 3] . Based on the area distribution, the method may include calculating the rate of change of the cross-sectional area distribution S′(x) over the vehicle length l v. The graph of figref[FIG. 4] plots the rate of change of cross-sectional area distribution S′(x) over the vehicle length l v. As shown in figref[FIG. 3] , the area distribution S(x) may be centered with reference to an origin 108 located midway between the forward and aft ends of the air vehicle 100. The area distribution S(x) may be converted to a function of φ wherein:
The method may then include calculating a Fourier series expansion of the cross-sectional area distribution S(x) using the following equation:
The wave drag may be estimated using the following relation for the wave drag coefficient C D:
wherein n max represents a quantity of Fourier terms that results in convergence of the Fourier series. The above described method of estimating wave drag is disclosed in NASA Technical Note D-446 (1960) entitled “Some Examples of the Applications of the Transonic and Supersonic Area Rules to the Prediction of Wave Drag” by R. Nelson et al., and in NACA Technical Report 1284 (1956) entitled “Theory of Wing-Body Drag at Supersonic Speeds” by R. Jones.
The method may further include iteratively adjusting the offset distance and estimating the resulting wave drag coefficient such as by using the above-described method until at least one offset distance is determined where the wave drag is minimized for a given aircraft 102 configuration. In this regard, aircraft 102 components 114 such as the engine nacelles 232 may be offset within a range of offset distances that may yield two or more locations where wave drag is minimized, as indicated by the local minima 216 in the graph of figref[FIG. 10] .
figref[FIG. 10] is a graph plotting a drag coefficient ratio 214 of wave drag coefficient/minimum drag versus offset distance 212 as a percentage of a maximum offset distance for several bilaterally asymmetric configurations 150 of an aircraft 102. The drag coefficient for each one of the configurations was calculated using a quantity of Fourier terms of n max=200. The configurations include offset wings 210, offset engines 244, and offset nacelle extensions 252 wherein the drag coefficient ratio 214 for each configuration is plotted as a function of offset distance 212 as a percentage of maximum offset. For each one of the aircraft 102 configurations, figref[FIG. 10] illustrates local minima 216 for at least two offset distances 212. Although figref[FIG. 10] only plots the drag coefficient ratio 214 for the entire length of the maximum offset for the offset wings 210, the plots for the offset engines 244 and offset nacelle extensions 252 are similar to the offset wings 210 and may have local minima at similar locations as the offset wings 210.
In figref[FIG. 10] , each one of the minima 216 represents an offset distance 212 (e.g., percentage) that minimizes the rate increase in cross-sectional area distribution. For example, for the engine offset configuration 152, a local minima 216 of the drag coefficient ratio 214 occurs at an offset distance 212 of approximately 20 percent of a maximum offset and which corresponds to the offset arrangement illustrated in figref[FIG. 2] . figref[FIG. 10] also illustrates a local minima 216 of the drag coefficient ratio 214 at an offset distance 212 of approximately 78 percent and which corresponds to an engine offset embodiment (not shown) wherein a region of decreasing cross-sectional area of a forward nacelle 234 (figref[FIG. 2] ) overlaps a region of increasing cross-sectional area of an aft nacelle 236 (figref[FIG. 2] ) on the opposite side of the fuselage 170.
figref[FIG. 10] further illustrates that for a generally bilaterally symmetric aircraft 102, adding a forward nacelle extension 246 and/or an aft nacelle extension 248 may provide a cost-effective manner for achieving bilateral asymmetry and reducing wave drag. In this regard, an existing aircraft 102 configuration may be retrofitted without significant alteration of the structural loading of the aircraft 102. Advantageously, nacelle extensions represent a means for modifying an existing aircraft 102 to fly at higher speeds with relatively minor redesign. In this regard, the various embodiments disclosed herein provide a means for adjusting the longitudinal location of the components 114 (e.g., wings, engines, stabilizers, control surfaces, etc.) of an aircraft 102 to improve the existing cross-sectional area distribution without changing the local diameter of the fuselage, and without the use of airfoils that are tailored for the transonic flight regime.
Additional modifications and improvements of the present disclosure may be apparent to those of ordinary skill in the art. Thus, the particular combination of parts described and illustrated herein is intended to represent only certain embodiments of the present disclosure and is not intended to serve as limitations of alternative embodiments or devices within the spirit and scope of the disclosure.