Nothing
## -----------------------------------------------------------------------------
library('afpt')
## -----------------------------------------------------------------------------
myBird <- Bird(
massTotal = 0.215,
wingSpan = 0.67,
wingArea = 0.0652,
name = 'Jackdaw',
name.scientific = 'Corvus monedula',
type = 'passerine',
source = 'KleinHeerenbrink M, Warfvinge K and Hedenström A 2016 J.Exp.Biol. 219: 10, 1572--1581'
)
## -----------------------------------------------------------------------------
speed <- seq(6,18,length.out=6) # airspeed in m/s
powercurve <- computeFlappingPower(myBird,speed)
## ----fig.show='hold', fig.width=3.45, fig.cap="**Drag components** -- Black: total drag; red circles: induced drag; green squares: zero-lift profile drag; blue diamonds: lift-dep. profile drag; yellow triangles: parasitic drag."----
par(mar=c(3.1,3.1,0.4,1.1),mgp=c(1.9,0.7,0.0),cex=0.75)
with(powercurve , plot( speed, Dnf.ind+Dnf.pro0+Dnf.pro2+Dnf.par,
type='b', pch=15, col='grey20',
xlab=NA, ylab=NA, xlim=c(0,20), ylim=c(0,0.39)))
with(powercurve , lines( speed, Dnf.ind, type='b', pch=21, col='red3'))
with(powercurve , lines( speed, Dnf.pro0, type='b', pch=22, col='green3'))
with(powercurve , lines( speed, Dnf.pro2, type='b', pch=23, col='blue3'))
with(powercurve , lines( speed, Dnf.par, type='b', pch=24, col='yellow3'))
mtext(side = 1, line = 2,'Airspeed (m/s)')
mtext(side = 2, line = 2,'Drag components (N)')
## -----------------------------------------------------------------------------
with(myBird,coef.bodyDragCoefficient*bodyFrontalArea)
## -----------------------------------------------------------------------------
myBird$coef.bodyDragCoefficient <- 0.001004007 # the product CDb*Sb
myBird$bodyFrontalArea <- 1 # unit area
with(myBird,coef.bodyDragCoefficient*bodyFrontalArea)
## -----------------------------------------------------------------------------
myBird$coef.bodyDragCoefficient <- 0.01539888 # CDb relative to wing reference area
myBird$bodyFrontalArea <- myBird$wingArea # unit area
with(myBird,coef.bodyDragCoefficient*bodyFrontalArea)
## -----------------------------------------------------------------------------
powercurve[c('speed','amplitude','strokeplane','frequency')]
## ----fig.show='hold', fig.width=3.45, fig.cap="**Drag factors** -- red circles: induced drag; green squares: zero-lift profile drag; blue diamonds: lift-dep. profile drag."----
par(mar=c(3.1,3.1,0.4,1.1),mgp=c(1.9,0.7,0.0),cex=0.75)
kf <- 2*pi*myBird$wingSpan*myBird$wingbeatFrequency / speed # reduced frequency
phi <- powercurve$strokeplane*pi/180 # strokeplane angle in radians (optimized)
fD <- data.frame(
ind = fD.ind(kf,phi), # induced drag
pro0 = fD.pro0(kf,phi), # zero lift profile drag
pro2 = fD.pro2(kf,phi), # lift dep. profile drag
par = 0 # parasitic drag is wingbeat independent
)
plot( speed, fD$ind, type='b', pch=21, col='red3',
xlab=NA, ylab=NA, xlim=c(0,20), ylim=c(-1,6.6))
lines( speed, fD$pro0, type='b', pch=22, col='green3')
lines( speed, fD$pro2, type='b', pch=23, col='blue3')
mtext(side = 1, line = 2,'Airspeed (m/s)')
mtext(side = 2, line = 2,'Drag factors fD (-)')
## -----------------------------------------------------------------------------
thrustratio <- apply(powercurve[,grep('Dnf',names(powercurve))],1,sum) /
(powercurve$L - apply(fD*powercurve[,grep('Dnf',names(powercurve))],1,sum))
## -----------------------------------------------------------------------------
fP <- data.frame(
ind = fP.ind(kf,phi), # induced power
pro0 = fP.pro0(kf,phi), # zero lift profile power
pro2 = fP.pro2(kf,phi), # lift dep. profile power
par = 0 # parasitic power is wingbeat independent
)
## -----------------------------------------------------------------------------
kP <- 1 + fP*thrustratio
## ----fig.show='hold', fig.width=3.45, fig.cap="**Power factors** -- red circles: induced drag; green squares: zero-lift profile drag; blue diamonds: lift-dep. profile drag."----
par(mar=c(3.1,3.1,0.4,1.1),mgp=c(1.9,0.7,0.0),cex=0.75)
plot( speed, fP$ind, type='b', pch=21, col='red3',
xlab=NA, ylab=NA, xlim=c(0,20), ylim=c(-0.4,8))
lines( speed, fP$pro0, type='b', pch=22, col='green3')
lines( speed, fP$pro2, type='b', pch=23, col='blue3')
mtext(side = 1, line = 2,'Airspeed (m/s)')
mtext(side = 2, line = 2,'Power factors fP (-)')
plot( speed, kP$ind, type='b', pch=21, col='red3',
xlab=NA, ylab=NA, xlim=c(0,20), ylim=c(0.8,2.3))
lines( speed, kP$pro0, type='b', pch=22, col='green3')
lines( speed, kP$pro2, type='b', pch=23, col='blue3')
mtext(side = 1, line = 2,'Airspeed (m/s)')
mtext(side = 2, line = 2,'Power factors kP (-)')
## -----------------------------------------------------------------------------
powercurve[,grep('flags',names(powercurve))]
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.