Code Review Stack Exchange is a question and answer site for peer programmer code reviews. It's 100% free, no registration required.
Sign up
Here's how it works:
 1. Anybody can ask a question
 2. Anybody can answer
 3. The best answers are voted up and rise to the top
I've written a script to generate DNA sequences and then count the appearance of each step to see if there is any long range correlation.
My program runs really slow for a length 100000 sequence 100 times replicate. I already run it for more than 100 hours without completion.
#!/usr/bin/env python
import sys, random
import os
import math
length = 10000
initial_p = {'a':0.25,'c':0.25,'t':0.25,'g':0.25}
tran_matrix = {'a': {'a':0.495,'c':0.113,'g':0.129,'t':0.263},
 'c': {'a':0.129,'c':0.063,'g':0.413,'t':0.395},
 't': {'a':0.213,'c':0.495,'g':0.263,'t':0.029},
 'g': {'a':0.263,'c':0.129,'g':0.295,'t':0.313}}
def fl():
 def seq():
 def choose(dist):
 r = random.random()
 sum = 0.0
 keys = dist.keys()
 for k in keys:
 sum += dist[k]
 if sum > r:
 return k
 return keys[-1]
 c = choose(initial_p)
 sequence = ''
 for i in range(length):
 sequence += c
 c = choose(tran_matrix[c])
 return sequence
 sequence = seq()
 # This program takes a DNA sequence calculate the DNA walk score.
 #print sequence
 #print len
 u = 0
 ls = []
 for i in sequence:
 if i == 'a' :
 #print i
 u = u + 1
 if i == 'g' :
 #print i
 u = u + 1
 if i== 'c' :
 #print i
 u = u - 1
 if i== 't' :
 #print i
 u = u - 1
 #print u
 ls.append(u)
 #print ls
 l = 1
 f = []
 for l in xrange(1,(length/2)+1):
 lchange =1
 sumdeltay = 0
 sumsq = 0
 for i in range(1,length/2):
 deltay = ls[lchange + l ] - ls[lchange]
 lchange = lchange + 1
 sq = math.fabs(deltay*deltay)
 sumsq = sumsq + sq
 sumdeltay = sumdeltay + deltay
 f.append(math.sqrt(math.fabs((sumsq/length/2) - math.fabs((sumdeltay/length/2)*(sumdeltay/length/2)))))
 l = l + 1
 return f
def performTrial(tries):
 distLists = []
 for i in range(0, tries):
 fl()
 distLists.append(fl())
 return distLists
def main():
 tries = 10
 distLists = performTrial(tries)
 #print distLists
 #print distLists[0][0]
 averageList = []
 for i in range(0, length/2):
 total = 0
 for j in range(0, tries):
 total += distLists[j][i]
 #print distLists
 average = total/tries
 averageList.append(average)
 # print total
 return averageList
out_file = open('Markov1.result', 'w')
result = str(main())
out_file.write(result)
out_file.close()
share|improve this question
migrated from stackoverflow.com Dec 16 '12 at 4:19
This question came from our site for professional and enthusiast programmers.

Could you explain what this is supposed to do in plain English? 1) At the moment, this is a bit long to read without explanation, 2) It may help you identify the problem yourself, and 3) Stop people taking a stab at stuff that looks like it may be wrong – Jon Clements Dec 13 '12 at 21:26

Hi, the first function is seq(), it randomly generate DNA sequences based on the transition matrix follow markov chain, each step will be either a,c,t,or g. the length is ten thousands. after the dna sequence generated, the u will be calculated. u is the total score by DNA walk, for example, at each step, if there is a|g, u + 1, if there is a c|g, u -1. Therefore we will have u from step 1 to step 10 thousands. Then we calculate the fluctuation for u from l= 1 step to l =5000 step, to see if there is a long range correlation exist. The performTrial() is using to do replicate for fl() function. – Frank Dec 13 '12 at 21:35

Then the main() calculate the average score from the replications output from performTrial(). – Frank Dec 13 '12 at 21:38

The f value return from fl() is the root mean fluctuation calculated from u on different length(step) scale. – Frank Dec 13 '12 at 21:42

@Frank Is there a reason your fl() function only operates over half the random sequence and does nothing with the other half? – Iguananaut Dec 13 '12 at 22:52
One word: numpy.
A few more words:
numpy is a library that includes highly-tuned algorithms (often in Fortran, C, and C++) specifically for the purposes of accelerating numerical computations over matrices and other arrays. If it's at all applicable to what you're trying to do, it's almost certainly the best answer. Even when numpy itself isn't appropriate, look at the other components of scipy (the larger project it's part of).
At the moment, the numpy site seems to be down, and the scipy site seems to be responding but broken. The docs wiki is working, at least. (Please don't take this as an indication that numpy is some fly-by-night project; almost everyone who does numerical or scientific computing in Python relies on it. I'm sure it'll be fixed shortly.)
However, there are other possibilities for other use cases:
 - Analyze your algorithms and make sure the problem isn't what you're doing, rather than how you're doing it. There's no point making everything 30% faster, or even 95%, when the real problem is that you're doing _PHONE_ loops instead of 1000.
 - Profile your code, and don't worry about the parts that aren't slow or aren't called often.
 - Whenever it's possible to use a built-in function, even if it's a bit more awkward, it's often faster. (For example, sticking an iterator in a collections.deque of size 0 is at least 30% faster than any pure-Python way of walking and disposing the iterator.)
 - Cython gives you a way to write almost-Python code that gets compiled into C (and then into binary code).
 - You can port (bits of) your code to C explicitly.
 - Sometimes just running in PyPy (or maybe Jython or IronPython) instead of the normal CPython makes a big difference.
 - Replace explicit lists with generators, and explicit list-building loops that can't be replaced by generators with list comprehensions.
 - If you need that last 2%, there are all kinds of tricks, like rebinding members of objects to local variables, that aren't always more trouble than they're worth.
A couple more words on Cython:
The first step to accelerating some slow critical code with Cython is just to move it as-is into Cython. If that doesn't help enough, try adding explicit types to variables and turning function definitions from def into cdef. If that's still not enough, then you have to actually learn how to use Cython effectively—but you may get enough win that you don't even have to understand why it's helping. (Although obviously you should learn anyway.)
share|improve this answer

I have only skimmed over his code, but some of the operations seem to be hard/impossible to vectorize, so for this particular case numpy may not be the answer. But still +1 – Jaime Dec 13 '12 at 21:36

Thanks, I will look at numpy. – Frank Dec 13 '12 at 21:38
1
They should also take a look at PyMC for MCMC implementations. – Iguananaut Dec 13


text:
Turning Of The Tide At Tonle Sap
Tonle Sap is an interesting body of fresh water. Certain times of the year, it is a lake and other times of the year it is a river. During the dry season (November-May) the water drains into the Mekong in Phnom Penh creating a river and when the monsoon season hits (June-October), the flow of water reverses back and forms a lake. The lake/river hybrid is also an important element of Cambodia because of the area's rich diversity of ecological life and the water's importance to the villagers in the area.
Bon Om Thong or the Khmer Water Festival is celebrated during late October or early November's full moon when the water reverses its flow. For three days, the towns and villages along the river, including Phnom Penh bursts into life with fleets of luminously decorated boats filling Tonle Sap. Celebrations also happen in Angkor Wat, although smaller in scale it is still impressive, with the temple serving as a scenic backdrop. The highlights of the festival are the boat races that draw huge crowds from all over and are contested by hundreds of boats comprising thousands of paddlers.The festival itself has ancient roots. Angkorian kings would hold competitions and see who the greatest warriors were. You can compare this competition to a joust in Europe as a means of training and a contest under the king's watchful eye.
Bon Om Thong also has spiritual significance. People would pray and thank the river for providing water, fertile land, and fish.
Being around Tonle Sap around this time is an excellent time to discover Cambodia and join the locals in the biggest celebration of the year.
* * * * *
Published on 11/12/09

source: HuggingFaceFW/fineweb-edu


text:
The University and Jepson Herbaria has released recordings from a seven-part public workshop on plant diversity, climate change, and conservation in California.
Led by Rausser College of Natural Resources Dean David Ackerly, a professor of Environmental Science, Policy, and Management and Integrative Biology, the workshop breaks down how California's native flora has responded to climate change through time. The workshop is hosted by the Herbaria as an educational opportunity for both amateur and professional botanists.
The workshop covers topics such as the emergence of the Mediterranean climate zone, changes in land use and stewardship, and how climate modeling is used to project the biodiversity impacts of climate change. Participants also discussed California's commitment to conserve 30% of lands and waters by 2030, how conservation efforts are adapting to the effects of climate change, and how to promote equitable access to parks, housing, and transportation.
Additional mini-workshops on plant identification, fungi, ecology, and more topics are available on the Herbaria's YouTube channel. Visit the Herbaria's website for a full list of planned workshops.

source: m-a-p/FineFineWeb


text:
This is for meditating on the trumps only.
1. Don't use intense concentration
2. Let your mind wander up and down and through the card
3. First have your eyes open, then have your eyes closed.
4. Build the image of the card in your mind without stepping into it.
5. Then step into the card, feel the ground, temperature, smell the smells
6. Set the card up about 10 feet away from you, take three steps towards it, imagine yourself walking into the card, sit behind it and meditate on being inside it, then walk out of the card.
If there is a path on the card, walk your way up it. Work your way through the card
Dissolve the physical forms and concentrate on the powers and energies of the card.
Once inside the card turn around and look back out, it will give you a different perspective. Write your experiences down and meditate on them.
IN -> Forms -> Energies -> Out
It doesn't have to be for a long time.
Meditate on the card before you go to sleep. It can make you dream about the card. Look at it again as soon as you wake up. Write down your dream and meditate on it.
When inside the card ask the people for advice if you wish. Pick a card that feels relevant to your problem.
Copyright © by The Book of THOTH - The complete guide to the Tarot, Magick and the Occult All Right Reserved.

source: openbmb/Ultra-FineWeb


1162: Log Scale
Explain xkcd: It's 'cause you're dumb.
Jump to: navigation, search
Log Scale
Knuth Paper-Stack Notation: Write down the number on pages. Stack them. If the stack is too tall to fit in the room, write down the number of pages it would take to write down the number. THAT number won't fit in the room? Repeat. When a stack fits, write the number of iterations on a card. Pin it to the stack.
Title text: Knuth Paper-Stack Notation: Write down the number on pages. Stack them. If the stack is too tall to fit in the room, write down the number of pages it would take to write down the number. THAT number won't fit in the room? Repeat. When a stack fits, write the number of iterations on a card. Pin it to the stack.
Explanation[edit]
This comic strip is a tip, specifically the first science tip. As with most of Randall's tips, it is technically interesting for some applications but not very practical.
Uranium is stated to have 76 million MJ/kg, while the next highest material shown on the graph (gasoline) has 46 MJ/kg. Thus the uranium graph should be taller by a factor of 76,000,000/46 = 1.652 million. So, if the gasoline graph were 9mm in height, the uranium graph should be a bit more than 14.868 million mm tall, or nearly 15 km (9.2 miles) tall. Thus the need to fold the paper.
It should be noted that the method of extracting energy from the first 4 materials (combustion) is completely different from the method used with uranium (nuclear fission). If the technology existed to use nuclear fusion, then the first 4 materials would yield a higher energy density than uranium.
A log scale is a way of showing largely unequal data sizes in a comprehensible way, using an exponential function between each notch on the y axis of a graph. So for example the first on a Y axis of a graph using a log-10-scale would be 1, then 10, then 100 and 1000 for the fourth. A log/logarithmic function is the inverse of a corresponding exponential function. A log-scale version of the chart in the comic would look like this:
Log Chart 1162.png
The log scale can also be abused to make data look more uniform than it really is. On a log scale the energy density of uranium looks larger than that of the other materials, but not dramatically so. The joke is that if one wanted to make their point "properly," they would go ahead and use ridiculous amounts of paper to show the difference between bars using a linear scale; this method would focus more on the shock factor of the differences in question, and less on actual communication/representation of data. Cueball seems to be passionate about the MJ/kg of uranium, so he would rather demonstrate the grandeur of the data than use a more efficient scale.
See these examples for well known day-to-day measurements which are measured on a log-scale.
The title text mentions computer scientist Donald Knuth; the fictional notation is a parody of Knuth's up-arrow notation. Using paper thickness as the basis for a log scale would probably give the exponential function a very large base. However, it can be noted that Knuth's up-arrow notation can handle numbers far, far larger than this paper stack notation; for example the number 3↑↑↑3, also known as Tritri[1], very compact in up-arrow notation, would require a number of iterations pinned to the stack on the order of several trillion. 3↑↑↑↑3 , also known as Grahal[2], would require a number of iterations that is not only too large to write down, but attempting to write that number using the same paper stack notation would require printing off a second stack of several trillion iterations just to hold the number pinned to the first stack. By repeating this multi-stack repetition, you reach the limit of up-arrow notation.
It should be noted that Randall has used log scales in past comics.
Transcript[edit]
[A bar chart on a piece of paper, with a second piece of paper attached to it.]
[Title of the bar chart] fuel energy density of different materials in megajoules/kg
[Values of the first 4 bars on the paper] 19 24 39 46
[The different bars for Sugar, Coal Fat and Gasoline and Uranium on a linear scale with the bar for Uranium exceeding on the attached stack of paper]
[Labels of the 5 bars on the paper] Sugar Coal Fat Gasoline Uranium
[The uranium bar on the chart goes off the page onto a huge strip of paper folded up into a stack slightly taller than Cueball.]
[Value on the top end of the paper strip] 76 000 000
[Caption below the panel:]
Science Tip: Log scales are for quitters who can't find enough paper to make their point properly.
Trivia[edit]
This comic was seen in the What If? book, taken from "a certain webcomic".
comment.png add a comment! ⋅ comment.png add a topic (use sparingly)! ⋅ Icons-mini-action refresh blue.gif refresh comments!
Discussion
The fictional notation MAY BE a parody of Knuth's up-arrow notation - and uranium MAY BE an effective energy source. By the way, labeling the energy sources just with material name is insufficient: how good energy source is hydrogen? -- Hkmaly (talk) 09:17, 18 January 2013 (UTC)
It has a calorific value of about 150 kJ/gm(much higher when compared to coal,etc.) but is too explosiveGuru-45 (talk) 14:24, 18 January 2013 (UTC)
That is for burning it I assume? But what if you use it as fuel in a fusion reactor? Or an H-Bomb for that matter?
is it really a parody? (well, probably arrow notation grows much more, here there is just a log log log etc) --.mau. (talk) 14:10, 18 January 2013 (UTC)
The calorie standard is defined by burning. So comparison doesn't fit with the graph as written. DruidDriver (talk) 20:46, 24 January 2013 (UTC)
It's true that uranium has an extremely high energy density, which is of great importance for mobile power plants; however, nuclear fission has a lot of safety issues, especially for mobile power, which is why it is used only for stationary power plants and large military vessels, such as aircraft carriers and subs.
Hydrogen is pretty good when highly compressed so as to get high energy volume density as well, but that leads to problems too. Also, hydrogen leaks more easily than almost anything else. That is especially a problem for an extremely flammable gas. On the plus side for hydrogen, nothing burns more cleanly.
"The log scale can also be abused to make data look more uniform than it really is, so on a log scale sugar and other materials would look largely equal energy density when they clearly are not."
I think this is missing the point, which I take to be that displaying the data on a log scale would understate the vast difference between uranium and the hydrocarbons/carbohydrates:
 E/m log(E/m)
sugar 19 1.3 *
coal 24 1.4 *
fat 39 1.6 **
gas 46 1.7 **
uranium 76e6 7.9 ****.***
Uranium is clearly larger than the others, but only by a factor of 4, so the real magnitude of the difference may not be appreciated. With the stack of paper, he's proposing a way to show linear values for the data without having the uranium column simply shooting off the top of the page, with an arrow and the number. Wwoods (talk) 17:26, 18 January 2013 (UTC)
or, he could just print at a scale that allows 76,000,000 to fit on the page, with the other values shown as near-infinitesimally thin lines. 67.51.59.66 18:23, 18 January 2013 (UTC)
A googolplex in Knuth's paper stack notation (based upon 3818 chr per page, and 25,824 pages to fill up a typical 8ft tall room), would be: 96.41816408 with a 2 pinned on it.
The algorithim is:
KnuthPaperStack(N):
y = log10(N)/3818
If y >= 25824
 Z = Z + 1
 z = KnuthPaperStack(y)
 Return z,Z
Else
 Return y,Z
End if
--Markozeta (talk) 15:25, 20 January 2013 (UTC)
I think the name "Knuth paper-stack notation" sounds like "'Nuff paper-stack notation", meaning that it is a notation in which you need "enough paper" to stack up.
--NiccoloM (talk) 00:46, 21 January 2013 (UTC)
Isn't there a pun on Log which is itself an energy source as well as being the source of any reams of paper used to record values. 192.11.175.219 06:58, 22 January 2013 (UTC)
Am I the only one not seeing the glaring mistake on the comic? First thing I thought was "that stack of paper is


Troubleshooting a ControlLogix Output 2
Introduction to Troubleshooting a ControlLogix Output
The most common problems on a system using ControlLogix are usually field devices. Occasionally an I/O module can fail. Most of the time, however we are using RSLogix/Studio 5000 to find a failed field device. In this document, we will be troubleshooting a ControlLogix output. We will locate the output in the project. Then we will navigate through the project to find the reason why the processor is not calling for an output to energize. One reason the output might not energize is because the processor is not getting an input, such as a limit switch, or a selector switch.
Most of the time, there will be just one field device that we are not getting a signal from. In this example, however, we will have multiple field devices that are not made. This will give you a better understanding of how to navigate, and locate the I/O.
Our goal here is not to change logic or the operation of the equipment in any way, but to use Studio 500 as a tool to locate failed field devices.
Understanding the Chassis Layout
When troubleshooting a ControlLogix output, you might first locate the failed output on a schematic. Your schematic will show you what chassis the output is connected to, the slot, and the terminal. If you only have one chassis with a processor, we can always start by locating the Local controller tag. All tags for all modules where the processor resides will start with the name "Local". Tags for modules in remote chassis will begin with the name of the adapter in that chassis.
Consider the following layout:
Chassis Layout
As we said before, all tags for all modules in the top chassis will begin with the name "Local". Tags for the modules in the middle chassis will be named "remote_asb". We can find this name by expanding the I/O tree under I/O configuration in the RSLogix/Studio 500 project. Similarly, we know that all tags for modules in the last chassis will be named "remote_aent".
The output we will be troubleshooting in this example is shown above. This output is in the Local chassis, slot 6, terminal 0.

Locating the output in the ControlLogix project.
Be sure you are online with the processor. This will ensure the data that we are looking at is in real time. Next, go to Controller Tags.
Controller Tags

Now find the local tag for slot 6. Since this is an output module. This will be easy to decipher. We know the chassis name is Local, so find the controller tag for slot 6. We know this is an output module, so expand the Local:6:O tag. Then expand the data component of this tag.
Local 6
We will cross reference bit 0 of this tag to locate it's output in logic. Right click to cross reference. You cannot left click first, or Studio 5000 will think you want to cut, copy, or paste. Right click only, and choose "Go to Cross Reference for Local:6:O.Data.0".
Cross Reference
Notice the next window that opens. Usually, you will have only one instruction that is destructive. You can look in the destructive column for the "Y". An instruction that is destructive has the ability to change the value of the tag. We want to go to this tag to find out why it's not turning the bit on. In this case, we do have two instructions that are destructive, so we ask ourselves which one will energize the bit. The OTU (Output to Unlatch) will shut the bit off. We are wanting to turn the bit on, so we will double click the OTE (Output to Energize) instruction.
Destructive
This takes us to the output in logic.
Light 0 Output
Using Bookmarks
Studio 5000 has a nice book mark system built in. However, this is normally shut off by default. To turn on the bookmarks, go to View | Toolbars at the top of your project window. Put a check mark next to "Bookmark Toolbar".
Turn on Bookmarks
Now, you will notice "flag" icons have been added to your project. The first two icons will let you navigate between previous and next bookmarks. The middle icon (single flag) will toggle a bookmark at this location in logic. The third icon (with the x) removes all bookmarks. The last icon allows you to manage all bookmarks individually. Here, most of the icons are grey, because we don't have any bookmarks yet.
bookmark toolbar
As a rule of thumb, I will usually bookmark the first rung I come to. This way, if I get totally lost in logic, I can easily get back to the starting point, and start to navigate again. To prevent building up too many bookmarks when navigating logic, I will only bookmark a rung that has more than one condition that I need to trace down. Let's put a bookmark on this rung by pressing the middle bookmark icon.
Rung Bookmarked
You can see the flag underneath the rung number, so we know now that this location is bookmarked.
Navigating logic
Let's look at the conditions before Local_Light.0 You can see the alias information below this tag (Local:6:O.Data.0). You will also notice this is seal-in logic. Once bit_array[0] is true, the output will energize, and seal around bit_array[0]. When bit_array[0] goes false, the output will still remain energized. When we see a rung that seals the output, we can ignore that for now. This is because we have to take another path to get the light to energize in the first place.
We need to cross reference bit_array[0]. To cross reference this bit, be sure you are on the tag itself. You cannot cross reference an instruction, or a description. We need to right click bit_array[0], and cross reference. Then we will go to the destructive instruction.
bit array 0
In the following rung, we can see that bit_array[0] is not energized for two reasons. (The ONS will take care of itself). One condition is a real world input. SLC_Switch.15 is an alias to remote_asb:I.Data[1].15. If you look at the chassis layout above, we know this is on the middle chassis, slot 1, bit 15. If this was in your plant, you could locate this on your schematic to find the field device wired to this terminal. It's possible the input is not made because a limit switch is bent or a wire is broken. Somehow, you need to get a voltage to this terminal, and then you will see the bit intensify in logic (the instruction will turn green). Once this problem is solved, we cross reference safetys[7]. This is an internal bit, and we need to go to it's output.
Bit Zero Output
Here, we see the output safetys[7] is not is not energized because warnings[31] is not made. Again this is an internal bit.
Safety 7
The Final Rung
Now we can see warnings[31] output The only conditions left to fix are real world inputs now. We need to get a voltage on Slot 0 of the bottom chassis, bit 1 (remote_aent).. We also need a voltage on terminal 12, slot 1 of the SLC chassis (remote_asb). You might need your schematic and your meter, but since those are real world inputs, we need to fix them in the real world.
Warning 31
Once all problems have been solved, then we can go back to our bookmark (at our original starting rung). We can see the output is now energized.
Problem Solved
Remember bit_array[0] output had the ONS instruction before it, so it was only true for one scan, however, our output stays on because of the seal.
For more information on ControlLogix, visit the ControlLogix Category page, or simply choose "ControlLogix" from the menu bar above.

–Ricky Bryce
Leave a comment
Your email address will not be published. Required fields are marked *
− one = one
2 thoughts on "Troubleshooting a ControlLogix Output


text:
Odor Ratings System Estimates Setbacks
University of Minnesota researchers have developed an odor ratings system called Odor From Feedlots Setback Estimation Tool (OFFSET). The system estimates the setback distance from animal production sites by determining the site's estimated odor emissions.
All odor sources at the site are identified. OFFSET selects the odor emission number on a per-square-foot basis, determines the total surface area of a barn or manure storage unit, credits any odor-control technology and then calculates the total odor emission factors for each source.
OFFSET includes: - A database generated from emissions measurements at 260 animal buildings and manure storage units from 1997 to 1999;
- An air dispersion model, and
- Average weather data for Minnesota from 1984 to 1992.
First, the total odor emission factor is determined for a production site. Buildings and manure storage units are considered, along with species, housing types and sizes, manure storage types and sizes and odor control technologies used at the site.
The OFFSET database is then used to assign an odor emission number for the barns and manure storage. Hog barns with deep pits, pull plug or scraper systems and natural or mechanical ventilation are assigned a 23. Open front barns with concrete lots get an 8. Hoop barns get a 2, and farrowing barns with flush systems and mechanical ventilation get a 10.
Manure storage is also assigned an odor emission number (OEN). Earthen storage basins are a 20, first cell lagoons a 4, and second cell lagoons a 1. Settling tanks are a 50 OEN.
In addition, odor-control factors are assigned numbers. Biofilters on building fans are a 0.1. Geotextile covers and 2 in. of straw covering manure are a 0.5. If no odor control technology is used, a value of 1 must be assigned to the odor source.
Those numbers are then plugged back into Table 12. The emission area is simply the physical size of the buildings and/or manure storage units.
Finally, the odor emission factor is calculated by multiplying the values in columns B, C and D and dividing by 10,000. The values in column E are added up to obtain the total odor emission for that site.
The total odor emission factor (sum of column E) is then plotted on the horizontal axis of Figure 1. The vertical axis is the distance in miles. Based on the odor annoyance percentage desired, the setback distance is determined.
OFFSET defines an annoyance-free odor level as an odor intensity of 2 on a 0 to 5 scale. Odor intensity 2 is a faint odor that an average person might detect if attention is called to the odor but would not annoy the person. Odor intensity 3 would be readily detected and probably regarded as a nuisance.
Figure 1 shows a family of odor annoyance-free curves. The curves represent odor annoyance-free time for the prevailing wind direction from the site from mid-April to mid-October. They are based on meteorological data and the U.S. Department of Agriculture/Environmental Protection Agency-INPUFF2 air dispersion model. For example, 99% annoyance-free means 99% of the time, at the indicated distance from the site, people are not expected to receive an odor above an intensity rating of 2. The remaining 1% of the time, seven hours/month, individuals may smell odors higher than odor intensity 2.
Researchers: Larry Jacobson and David Schmidt, University of Minnesota. Phone Jacobson or Schmidt at _PHONE_ or e-mail Jacobson at _EMAIL_.
Hydrogen Sulfide Emission Levels Studied
National Pork Producers Council (NPPC) research shows producers often exceed the 1999 Minnesota statute for hydrogen sulfide (H2S) emissions when agitating and pumping out manure pits.
Until new feedlot regulations were implemented in October, the H2S emissions standard allowed producers to exceed the 30 parts per billion (ppb) - a 30-minute average - of H2S threshold once in any five-day period or the 50 ppb threshold once a year. Under current regulations, Minnesota producers are allowed to request a 21-day exemption during manure handling.
The researchers monitored ambient air H2S levels downwind from facilities on six farms of varying size in Iowa, Illinois and Minnesota.
The MDA Scientific Chemcassette Single Point Monitors (SPM) were located at 50-ft. and 100-ft. intervals downwind from the manure pits during agitation and pumping of manure. Each monitoring station included two SPMs, one with 1 to 90 ppb-H2S range and the other with 50 to 1,500 ppb-H2S range.
Researchers recorded temperature, relative humidity, wind speed and direction to track the role of weather conditions on transport of H subscript 2S downwind from barns.
Figure 2 shows the H2S concentrations during agitation and pump out at 50, 100 and 200 ft. downwind from manure pits. On average, most H2S concentrations dropped or were below 30 ppb at 100 ft. and beyond. Peak H2S concentrations at 50 ft. were measured an average of 3.2 hours after the start of agitation and ranged from 0 to 8 hours. The maximum total number of 30-minute average measurements greater than 30 ppb averaged five times and ranged from three to nine times.
Researchers point to key findings in this study, including: peak H subscript 2S concentrations during agitation and manure removal are not sustained at high levels for extended periods of time; peak ambient H2S concentrations measured are not considered harmful and H2S concentrations drop significantly when agitation is finished.
Researchers: Carrie Tengman, NPPC. Phone Tengman at _PHONE_ or e-mail _EMAIL_.
Pit Additives Reduce Hydrogen
University of Minnesota researchers conducted research on reducing hydrogen sulfide (H2S) emissions by adding chemicals before manure pit agitation and pumping. They found that hydrogen peroxide is the most cost effective of seven chemicals for reducing H2S emissions.
First, researchers identified seven chemicals that can reduce H2S emissions. Calcium hydroxide, ferric chloride, ferrous chloride, ferrous sulfate, hydrogen peroxide, potassium permanganate and sodium chlorite were identified in bench-top experiments.
Dosage curves to reduce H2S emissions from 20% to 90% were developed for each chemical. From these curves, the researchers determined the amount and cost of chemical needed to reduce 50% of emissions. Hydrogen peroxide (H2O2) and potassium permanganate (KMnO4) appeared to be the most cost-effective chemicals. Cost/cubic meter of manure was $0.074 for H2O2 and $0.062 for KMnO4.
Next, the researchers conducted a lab test of H2O2 and KMnO4 by testing the chemicals in manure-filled columns. In half of the columns, chemical addition and testing of H2S emissions started six minutes before agitation began. In the other half of the columns, chemical addition, testing of H2S emissions and agitation began simultaneously.
Researchers found no statistical difference in concentrations when air sampling began, so the data was pooled. Table 13 lists the mean H2S concentrations for the period 10 to 20 minutes after chemical addition. With KMnO4, H2S concentrations decreased as planned. But with H2O2, there was no statistical difference between the 30% and 90% reduction, indicating less H2O2 was needed to reduce emissions than was used in the lab trial.
Finally, researchers conducted a field trial in two identical 41-ft. by 200-ft. deep-pitted finishing barns. One barn was used as a control, the other to test the effect of H2O2 on H2S emissions. A concrete wall divided the pit under each barn.
Researchers used a single treatment of 110 gal. 30% H2O2 with the goal of a 70% reduction in H2S emissions. Total treatment cost was $1,100 or about $1/pig.
In the first compartment, 55 gal. of the H2O2 was poured into the pump out port and allowed to mix into the manure during agitation. H2S concentrations were 240 parts per million (ppm) at 30 minutes, 25 ppm after 70 minutes, and 3 ppm after 90 minutes.
In the second compartment, 55 gal. of the H2O2 was divided into half. One-half was evenly distributed on the manure surface by pouring it through the slots and the other half was poured into the pump out port and agitated into the manure. H2S concentrations were 100 ppm after three minutes, 28 ppm after seven minutes, 11 ppm after 15 minutes, and less than 1 ppm after 30 minutes.
H2S concentrations from the control barn (agitated without chemical addition) remained at 250 ppm throughout the two-hour sampling period. The maximum concentration the instruments can read is 250 ppm.
Researchers: Dick Nicolai, David Schmidt and Larry Jacobson, University of Minnesota. Phone Jacobson or Schmidt at _PHONE_ or e-mail _EMAIL_ or schmi071 _USER_.edu.


You are currently viewing VESSEL LIGHTS – A COMPLETE GUIDE
When we start taking our boats out we eventually get to the stage where we go out in the dark. That means we are going to see some different vessel lights on the water.
This may even come sooner than we intended if we get our planning wrong and arrive late.
There are lots of lights out there to try and make sense of. It's important that we can identify some of the signals we are being shown so that we can avoid any dangers. This could include large shipping, boats with fishing gear or even military vessels.
Below is a complete guide to vessel lights along with another of our handy downloads. There is a load more information on our YouTube channel too, which you can find here:
Our YouTube Channel
Don't forget to Subscribe?
First of all take a look at this video guide to the definitions of vessel lights and their visible angles.
Vessel Lights – Definitions
Normal power driven vessels have four lights to distinguish them from other boats.
As per all other boats they have a red port light on the left side of the bow. Opposite that they have a green starboard light on the right side of the bow. In the below image we can see that the vessel is facing us.This is because we can see both the port and starboard lights at the same time.
As well as these two lights, power driven vessels have a forward facing, white masthead light. This indicates that the vessel is being propelled by machinery. This light is sometimes referred to as a 'steaming light' because of this.
Vessel lights - power driven less than 50 metres
A second piece of information we can derive from the masthead light is it's size. A vessel with a single masthead light is under 50 metres in length. A second masthead light is compulsory for vessels over 50 metres in length. Just like in the image below.
Vessel lights - power driven over 50 metres
The reason we state that two mast head lights 'probably' mean over 50 metres is because smaller vessels are also allowed two masthead lights. However, this is usually impractical because the rules state that the second masthead light must be 4.5 metres higher than the first. Most smaller vessels don't have the structure to accommodate this.
Finally, a power driven vessel has a single white stern light. When this light is visible to us, we can't see any of the bow or steaming lights. We therefore know we are approaching the vessel stern. This is important as under the IRPCS (or ColRegs) this makes us the overtaking vessel and therefore the 'Give Way' vessel.
There are a couple of exceptions to the above light configuration for power driven vessels.
Firstly, a vessel of less than 12 metres in length is allowed to combine the masthead light and stern light. These then become a single all round white light.
Secondly, a power driven vessel of less than 7 metres in length and capable of a maximum speed that is less than 7 knots, is allowed to display a single all round white light in lieu of everything else.
These vessels are power driven and so they display the same lights as power driven vessels. In addition however, so they can be distinguished, they also display and all round flashing yellow light. This is mounted where it can best be seen.
Vessel lights - power driven hover craft
The lights for sailing vessels are very similar to those of power driven vessels plus a couple of extra options.
When sailing, the vessel has to display red and green side lights and a white stern light. It does not display a forward facing masthead light as that would mean it was being propelled by machinery. A masthead does need to be fitted though as it must be displayed when the engine is turned on. This is an important distinction because sailing vessels and power driven vessels avoid collisions in different ways.
Vessel lights - sail over 20 metres
We can also tell something about the vessel size from the two side lights. Smaller sailing vessels, under 20 metres in length are allowed to combine the two lights at the top of the mast. Once a sailing vessel is over 20 metres long then the two lights must be separate. These then have to be placed on the bow.
Vessel lights - sail less than 20 metres
Additionally, sailing vessels have the option to show two all round lights at the top of the mast. These are a red light over a green light. However, these can't be shown at the same time as a combined light mentioned above.
Finally, much like power driven vessels, a sailing vessel less than 7 metres in length is able to display a single white light instead of the other lights.
so those are the basics for power driven vessels and sailing vessels. There next comes a series of vessel lights that indicate special conditions. These help us identify the 'Give Way' and 'Stand On' vessels that are described under Rule 18 of the IRPCS. Rule 18 is the responsibilities between vessels and you can get a reminder of this rule using the following video.
Rule 18 – Responsibilities Between Vessels
All of the following vessels are identified by different day shapes during daylight hours. If you need a recap on these check out this article:
Day Shapes
Vessels not under command identify themselves by showing two all round red lights, one above the other.
'Red over red. Captain's dead.'?
They come at the top of the 'Stand On' list because they can't effectively take action to avoid a collision. This is defined as being due to an exceptional circumstance. For instance, they are broken in some way or have sustained damage that compromises their ability.
Vessel lights - not under command
Importantly, these vessels give us some other information. If they are making way through the water then they display their side lights and stern light. If they are not making way through the water then they only display the all round red lights to indicate that they are not moving.
Additionally to the above, if the exceptional circumstance is because the vessel is aground the anchor lights will be displayed as well.
Vessel lights - vessel aground
In equal place in the 'Stand On' list are vessels restricted in ability to manoeuvre. Unlike vessels that are not under command, these are not restricted due to an exceptional circumstance. Instead, these are restricted due to the nature of their work. They could be carrying out under water surveys, diving operations, laying pipes or cable or anything else that hampers them.
These vessels are distinguished by three all round lights in a vertical line. The middle one being white and the other two being red.
Vessel lights - restricted in ability to manoeuvre
This is a second vessel that will turn off its side lights and stern light if it not making way through the water. It will turn them back on again once it starts making way.
One such vessel mentioned under this rule that is restricted due to the nature of its work is a Mine Sweeping vessel.
Vessel lights - Mine sweeper
These vessels display the lights for a power driven vessel appropriate to their size plus three all round green lights arranged as shown. I would suggest that if you ever see these lights you're in the wrong place.
A vessel constrained by it's draught can only navigate within the confines of a narrow channel. The draught is the distance from the waterline to the bottom of the hull or keel. In this case the vessel requires deep water so as not to run aground. Smaller vessels must not impede these larger ships.
Vessel lights - Constrained by Draught
To show their condition these vessels display three all round red lights in a vertical line. Unlike previous examples though, these vessels never turn off their side lights or stern light.
The next vessels in the list are those engaged in fishing. These guys are hampered by their fishing gear and represent quite a hazard to recreational boat users. There are different types of fishing activity and they are distinctive by use of their lights.
Fishing vessels also turn off their side lights and stern light when they aren't making way.
Vessels engaged in standard fishing will display a red light over a white light to indicate what they are doing.
'Red over white frying tonight'.?
Vessel lights - fishing not trawling
Vessels engaged in trawling instead of normal fishing will indicate the fact by displaying a green light over a white light. This lets us know that there fishing nets extending from the vessel which will present a hazard to other boats.
Vessel lights - trawling
Sometimes trawlers will work together. This is referred to as pair trawling. Both trawlers will display green lights over white lights. Additionally, they will display different lights to illustrate their activities. These are as shown in the following three illustrations.
Pair trawling - shooting nets
Pair trawling - Hauling nets
Pair trawling - nets fast upon an obstruction
The final type of fishing vessel with a unique light display is a Purse Seine fishing vessel. These fisherman drop weighted nets in a circle so as to form a 'purse'. These are then drawn in like a big bag to collect the shoals of fish.
Vessel lights - Purse seine fishing
In addition to the red over white lights, purse seiners will display to flashing yellow lights. These are installed vertically and flash alternately.
Vessels engaged in towing and whose purpose is to be able to tow will display the lights for a power driven vessel. In addition, they will display a second, white, forward facing masthead light and a yellow stern light. The yellow stern light is placed above the usual white stern light.
Towing under 200 metres
The length of the tow


3
$\begingroup$
I am considering an approach to adaptive approximate Bayesian computation technique (ABC). The acceptance rejection algorithm is used wherein proposals from the prior are accepted if the simulated data $X_\text{sim}$ matches the observed data $X_\text{data}$:
\begin{equation} \rho(X_\text{sim},X_\text{data}) < \epsilon \end{equation}
Where $\rho(.)$ is some distance function and $\epsilon$ is the tolerance factor. The aim is to find the value of the tolerance factor $\epsilon$ so that the rate of acceptance $\alpha$ matches some target acceptance rate $\alpha_0$.
Essentially the problem is to find $\epsilon = \epsilon_0$ such that $\mathbb{E}[\alpha] = \alpha_0$.
My approach is to model the acceptances of the algorithm as a Bernoulli process where $\alpha$ is the probability of acceptance.
 1. Choose the shape parameters of the beta prior distribution of the acceptance rate $\alpha$.
 2. For each run of the acceptance-rejection algorithm update the posterior distribution of $\alpha$. Then draw a random sample from the posterior distribution of $\alpha$. If $\alpha$ is lower than the target $\alpha_0$ then $\epsilon$ should be increased. If $\alpha$ is higher than $\alpha_0$ then $\epsilon$ should be decreased.
The question is how should the changes to $\epsilon$ be proposed. My feeling is that $\epsilon$ should also have a prior and posterior distribution. Perhaps a model should be proposed for the relationship between these two parameters? Any suggestions on this problem would be appreciated. Additionally has this approach been considered before in the literature (if so please post a link)?
$\endgroup$
1 Answer 1
2
$\begingroup$
The classical answer in the ABC literature to this approach is to simulate pseudo-samples from the prior predictive and to set $\epsilon$ to the $\alpha$-quantile of the corresponding distances. I find it difficult to see how an adaptive approach could be more efficient there.
$\endgroup$
6
 - $\begingroup$ I suppose the idea is that $\epsilon$ from the pseudo-samples may be inaccurate and as the ABC algorithm begins to run it becomes apparent that the acceptance rate is different from the target acceptance rate. The question is whether this difference is significant enough to justify updating $\epsilon$ every run of the algorithm. $\endgroup$
 – egg
 Commented Jul 20, 2017 at 13:42
 - $\begingroup$ My apologies let me try to rephrase. It is impossible to exactly determine $\epsilon$ that will exactly result in a target acceptance rate $\alpha_0$. Consequently the acceptance rate $\alpha$ will always deviate from the target acceptance rate $\alpha_0$ (possibly to an insignificant extent but that is a subjective assessment). In order to minimise this deviation between the target and actual acceptance rates the value of $\epsilon$ is altered as the algorithm runs so that the different between the target and actual acceptance rate is minimised. $\endgroup$
 – egg
 Commented Jul 20, 2017 at 13:49
 - $\begingroup$ One could certainly question the purpose of reaching a specific target acceptance rate $\alpha_0$. There is no theoretical result in the ABC literature about an optimal acceptance rate. At best, there are optimal convergence speeds as the sample size [of the data, not of the number of simulations] increases. $\endgroup$
 – Xi'an
 Commented Jul 20, 2017 at 13:52
 - $\begingroup$ Furthermore, the usual [accept-reject] implementation of ABC is to run a massive number of simulations and then cull those simulations by selection an $\epsilon$ value (or an acceptance rate). In this setting, the value of $\epsilon$ has of course no impact on the simulation. $\endgroup$
 – Xi'an
 Commented Jul 20, 2017 at 13:53
 - 1
 $\begingroup$ This highlights my misunderstanding. I did not realise $\epsilon$ could be chosen after the simulation. Thank you for your help. $\endgroup$
 – egg
 Commented Jul 20, 2017 at 13:55
Your Answer
By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.
Not the answer you're looking for? Browse other questions tagged or ask your own question.


text:
Image 1 of 1
MECHANICAL WATCH MECHANISM
Showing Winding Mechanism And Gears
Gears can transfer motion from one place to another. They are used to reverse the direction of rotation, increase or decrease the speed of rotation, move rotational motion to a different axis, or keep the rotation of two axes synchronized.
Copyright:© 2004 Paul Silverman - Fundamental Photographs
Search for Keywords:


text:
widget is compatible with the existing element, it'll be updated instead of re-inflated. This allows existing render objects to be mutated instead of being recreated. Depending on the mutation, this might involve any combination of layout, painting, and compositing.
Element.reassemble) marks the element as being dirty; most subclasses do not override this behavior. This causes the element tree to be rebuilt during the next frame. Render object elements update their render objects in response to
Element.performRebuild and therefore also benefit from hot reload.
Only widgets associated with
ProxyWidget) participate in the build process;
RenderObjectWidget subclasses, generally associated with
RenderObjectElements, do not; these simply update their render object when building.
ComponentElement instances only have a single child, typically that returned by their widget's build method (
ProxyElement returns the child attached to its widget)..
When the element tree is first anchored to the render tree (via
RootRenderObjectElement) assigns a
BuildOwner for the element tree. The
BuildOwner is responsible for tracking dirty elements (
BuildOwner.scheduleBuildFor), establishing build scopes wherein elements can be rebuilt / descendant elements can be marked dirty (
BuildOwner.scheduleBuildFor), and unmounting inactive elements at the end of a frame (
BuildOwner.finalizeTree). It also maintains a reference to the root
FocusManager and triggers reassembly after a hot reload.
ComponentElement is mounted (e.g., after being inflated), an initial build is performed immediately (via
ComponentElement._firstBuild, which calls
Later, elements can be marked dirty using
Element.markNeedsBuild. This is invoked any time the UI might need to be updated implicitly (or explicitly, in response to
State.setState). This method adds the element to the dirty list and, via
BuildOwner.onBuildScheduled, schedules a frame via
SchedulerBinding.ensureVisualUpdate. The actual build will take place when the next frame is processed.
Some operations trigger a rebuild directly (i.e., without marking the tree dirty first). These include
ComponentElement.mount. In these cases, the intention is to update the element tree immediately.
Other operations schedule a build to occur during the next frame. These include
Proxy elements use notifications to indicate when underlying data has changed. In the case of
InheritedElement, each dependent's
Element.didChangeDependencies is invoked which, by default, marks that element as being dirty. This causes the descendant to rebuild when any of its dependencies change.
Once per frame,
BuildOwner.buildScope will walk the element tree in depth-first order, only considering those nodes that have been marked dirty. By locking the tree and iterating in depth first order, any nodes that become dirty while rebuilding must necessarily be lower in the tree; this is because building is a unidirectional process -- a child cannot mark its parent as being dirty. Thus, it is not possible for build cycles to be introduced and it is not possible for elements that have been marked clean to become dirty again.
As the build progresses,
ComponentElement.performRebuild delegates to the
ComponentElement.build method to produce a new child widget for each dirty element. Next,
Element.updateChild is invoked to efficiently reuse or recreate an element for the child. Crucially, if the child's widget hasn't changed, the build is immediately cut off. Note that if the child widget did change and
Element.update is needed, that child will itself be marked dirty, and the build will continue down the tree.
Element maintains a map of all
InheritedElement ancestors at its location. Thus, accessing dependencies from the build process is a constant time operation.
Element.deactivateChild because a child is removed or moved to another part of the tree,
BuildOwner.finalizeTree will unmount the element if it isn't reintegrated by the end of the frame.
InheritedElement provides an efficient mechanism for publishing heritable state to a subset of the element tree. This mechanism depends on support provided by
All elements maintain a set of dependencies (
Element._dependencies, e.g., elements higher in the tree that fill a dependency) and a mapping of all
InheritedElement instances between this element and the root (
Element._inheritedWidgets). The dependencies set is mainly tracked for debugging purposes.
The map of inherited elements serves as an optimization to avoid repeatedly walking the tree. Each dependency is uniquely identified by its instantiated type; multiple dependencies sharing a type shadow one another (in this case, shadowed dependencies may still be be retrieved by walking the tree).
This mapping is maintained by
Element._updateInheritance. By default, elements copy the mapping from their parents. However,
InheritedElement instances override this method to insert themselves into the mapping (the mapping is always copied so that different branches of the tree are independent).
This mapping is built on the fly (via
Element._updateInheritance) when elements are first mounted (via
Element.mount) or are reactivated (via
Element.activate). The mapping is cleared when elements are deactivated (via
Element.deactivate); the element is removed from each of its dependency's dependent lists (
InheritedElement._dependents). As a result, it's usually not necessary to manually walk an element's ancestors.
Inherited relationships are established via
Element.inheritFromElement is a simple wrapper). In general, the inherited ancestor should be available in
Element._inheritedWidgets. This process causes the inherited element to add the dependent element to its list of dependencies (via
When an element is reactivating (e.g., after grafting), it is notified of dependency changes if it had existing or unsatisfied dependencies (e.g., a dependency was added but a corresponding
InheritedElement wasn't found in
Elements are notified when their dependencies change via
Element.didChangeDependencies. By default, this method marks the element as being dirty.


Page of Madness still
Nevertheless, the story is largely a mystery, but it is also beside the point. It's the visuals, which continually place the viewer in the skewed perspective of insanity, that make the movie mesmerizing, and the seeming incoherence of the story only serves to emphasize this aspect. A Page of Madness is a combination of influences, most notably the German Expressionist The Cabinet of Dr. Caligari (1920) by Robert Weine, which dealt with an asylum and the perceptions of madness, and Abel Gance's experimental 1915 French film La Folie du Docteur Tube, which used distorting lenses to simulate people being high after inhaling a white powder.
A Page begins like a fever dream, with images of an elegant dancing woman in a club intercut with a rainstorm and drums and brass instruments. Gradually the viewer realizes that the music and elegant setting is in the head of a tattered dancing girl in an asylum, played by the captivatingly beautiful Eiko Minami. Though the film is silent, the images and rapid rhythmic editing make the viewer disorientated and think that they too can hear the drums. From there the movie slides back and forth between sobriety and unhinged indulgence, depending on whose eyes the lens is peering through. It's an experience that, though the viewer is not quite sure what they saw or how to explain it, will linger.
A Page of Madness gif
Grade: A-
A Page of Madness is available on streaming and Blu-ray.
Create a free website or blog at
Up ↑


Voting types
At the moment, the plugin provides three types of voting: Like, Rating (avg) and Rating summary (since version 2.3.03).
Like (+1)
Like is the easiest way to vote. On click to the vote button if the user available to vote – the number of votes increases by 1.
Displaying example: 15 votes
Rate (avg)
With this type, the user can select the number of stars for the photo. For example, from 1 to 5 or 10. It depends on the basic settings. It's possible from 5 to 10 stars. Herewith the average number is calculated. If the photo has five, six and seven stars, then the average will be 6.
Displaying example: 8 of 10 [14]
To change Stars count:
To change Rating delimiter text:
Rate summary
It is very similar to the previous one, only with the difference that it is considered the total amount of stars, not the average value.
For example, all photos received five, six and seven stars. As a result, they will have 18 stars.
Displaying example: 20 votes
Related Articles
Leave A Comment?


text:
All About Flash Mobs
Whether you've been a part of one or just enjoyed the viral vids that followed, flash mobs are a huge part of modern culture, combining spontaneity, fun, and strangers. Find out more in All About Flash Mobs!
What is a "Flash Mob"?
Flash mobs bring groups of people together who may or may not know each other in order to create a spontaneous scene in a public place, which is a (usually) delightful surprise for passers-by and undeniably fun for the participants! They usually start and end at a specific time, so they are short and unexpected, and can include people singing, dancing, pillow fighting – you name it! Flash mobs first started as a form of performance art in New York City, they usually are all about the visual effect, surprising an audience, and stay away from political demonstration and advertisement (although some companies have managed to use flash mobs to make commercials and pull off publicity stunts.)
Inventor of flash mobs Bill Wasik said:
"the mobs started as a kind of playful social experiment meant to encourage spontaneity and big gatherings to temporarily take over commercial and public areas simply to show that they could."
How is Organized?
Often flash mobs are organized online via different types of social media (Facebook events, Twitter, blogs or email), meaning you might not know any of the other people who show up! Word of mouth has to be discreet though, because while flash mobs are fun, it's more fun if it's a total surprise – no one wants the news cameras, cell phones and even police to outnumber the actual participants.
Flash Mob Fun Facts!
- In the 19th century in Tasmania the term "flash mob" was used to describe groups of female prisoners, this is no relation to how it's used now.
- The word "flash mob" was included in the Oxford English Dictionary in 2004
- In Philadelphia some flash mobs were later dubbed "flash robs" because people had used them to steal and riot.
- When a company or political act is behind the event, it's usually called a "smart mob" instead, since it isn't just for the joy of doing something wacky.
- The first flash mob took place in Manhattan, and in order to avoid police detection Bill Wasik had people meet at different bars and then go on to the mob at Macy's department store.
Check out this crazy dance flash mob below!
Have Your Say
Have you ever been part of a flash mob? Let us know in the comments section below!


text:
RTTP applicants should apply and pay directly through the ATTP website: _URL_ by providing documentation which evidences the three requirements below:
1. KE/KT/TT Experience
You must be able to demonstrate that you have been in a relevant role for at least three years.
To be eligible to apply for RTTP, you must submit a CV showing you have been in the KE/KT/TT profession or in a role using similar skills for at least 3 years and be a Member of an Alliance Association (listed on home page).
2. KE/KT/TT KEY SKILLS
You must be able to demonstrate that you have gained the key skills required to be effective and to perform your role independently
This is demonstrated by:
EITHER: 60 RTTP CE points achieved in accredited KE/KT/TT training programmes, meeting development needs (with at least 45 points received in relevant face to face training – i.e. not via conferences or webinars)
(This route provides the most straightforward and rapid assessment)
At least two of the following:
(These routes require more complex assessment and evidence and therefore may take longer to process)
You must be able to demonstrate that you have applied your knowledge and skills to lead a complex KE/TT project
This is achieved through a 1000 word Achievement Overview which is endorsed by your manager and submitted for assessment by your peers. The Achievement Overview can describe one or more of the following:
RTTP applicants should describe their skills and achievements relevant to these five competencies. These core competencies have been developed in collaboration with existing national frameworks in several key countries. The core competencies assessed for RTTP are:


Petroleum stocks at Northeast power plants have not changed much in recent years
In much of the United States, power plants that burn petroleum liquids are generally operated for short periods during times of peak electricity demand, such as during brief periods of cold winter weather. These plants maintain petroleum inventories so that they are ready to dispatch electricity when it's needed. Petroleum plays an important role in the Northeast (defined here as New York and New England) when electricity demand is high, particularly in the winter. According to data from the U.S. Energy Information Administration (EIA), power plants in the Northeast held petroleum inventories of approximately 6.7 million barrels as of the end of September 2020, close to the average of 7 million barrels during the previous five Septembers.


text:
Attitudes to Open Source Software in Bergen Kommune
MetadataShow full item record
This work describes key elements of Open Source Software, computer history and the attitudes found in the municipal of Bergen to Open Source Software. It tries to describe the use of the software, which attitudes that can be found and what creates them. It then concludes the research and takes a look on further possible research.


text:
Skunks might look small and cute, but in reality, these troublemakers are masters of chaos. Not only do they wreak havoc on properties, but stir up emotional distress through their unpleasant, lingering odor. Besides, these creatures can spread the dreaded rabies to you and your beloved pets.
Skunks usually prefer living in the wild, but occasionally they might venture into urban and suburban settlements in search of shelter and food.
When this happens, skunks may establish their dens in barns, under buildings, attics, and other inconspicuous locations in your yard. Since skunks are nocturnal and tend to avoid humans, their invasion might catch you completely off guard.
But, fear not, this article dives into the world of skunk dens and how to identify them. You will also learn the reasons these pesky pests venture into your property and how to get rid of them.
What Attracts Skunks to Your Home?
1. Food Aroma
Skunks have a keen sense of smell and an insatiable appetite. Because of this, they can be drawn to the tempting scent of your delicious meals wafting through the air. But it doesn't stop there! Their finely tuned noses can detect enticing odors coming from your trash cans (garbage bins) or the allure of decaying matter.
2. Shelter and Warmth
Your home can provide an ideal refuge for skunks seeking shelter from adverse weather and lurking predators, i.e. coyotes and foxes. These resourceful pests can nest deep within the cozy confines of your basements or in the gaps beneath your porch or deck.
3. Easy Access
Skunks are tricky creatures with a knack for exploiting your home's external vulnerabilities. These creatures can discover unsecured openings that might provide them an easy way to explore every nook and cranny of your home. From gaps in foundation to uncapped chimneys, these invaders waste no time in seizing the opportunity to venture into your territory
4. Attractive Landscaping
Yes! Your beautifully manicured yard may attract skunks. The lush vegetation and garden beds teeming with grubs or fallen fruits entice these clever foragers to venture closer to your home.
5. Water Sources
Like any other living creature, skunks require water to survive. Therefore, if you have an uncovered pool or leaky outdoor faucets, these cunning infiltrators might be drawn to them.
5 Signs of A Skunk Den
Now that you know what attracts skunks to your property, it's time to learn about the telltale signs of skunk dens.
True, these mischievous animals are masters of disguise, but they often leave behind subtle clues, which sell them away. However, only an individual with an observant eye can identify these clues. So, what are they?
1. A Pungent Odor
If you suddenly find yourself assaulted by an overwhelmingly foul smell reminiscent of rotten eggs or sulfur, chances are you're close to a skunk den. Skunks have scent glands that produce a lingering, pungent odor to keep invaders and predators away.
But here's something interesting:
Skunks can only produce a limited amount of spray at a time. For this reason, these animals save their spray as a last resort. If they encounter a potential threat, skunks will hiss, raise their tails or stomp the ground to appear scary.
Another thing, skunk odors or sprays are sometimes acidic and they might cause intense irritation and burning on exposed skin. If it gets into your eye, the spray can trigger temporary blindness.
In case a skunk sprays you or your pet, you can use the following recipe to eliminate the bad odor.
- 1 quart of 3 percent hydrogen peroxide
- ¼ cup of baking soda
- One tablespoon of liquid dish soap
Mix these ingredients and apply to your skin or your dog's fur for 5 minutes, then rinse. If the smell persists, re-apply the mixture. This chemical solution will break down the structure of the smell compounds and make them easy to wash away.
What about tomato juice?
Well, that is just a myth. The juice does not remove the unpleasant smell, so don't waste your time buying it.。
2. Frequent Nighttime Activities
Skunks are nocturnal creatures, conducting most of their affairs at night. So, if you notice increased movement and rustling sounds around dawn or dusk, chances are skunks have established their den in the vicinity.
3. Disturbed Earth and Digging
Skunks are skilled excavators, using their strong front claws to dig burrows for shelter and protection.
They often create multiple entry points to their dens, allowing for easy access and escape routes. So, if you notice disturbed patches of earth or small holes in your yard, or damaged plants, most likely there's a skunk den nearby.
4. Tracks, Footprints, and Droppings
Skunk footprints and droppings in your backyard could also point to a den nearby.
These creatures have a unique paw print with five toes and claw marks. Therefore, look for these on muddy or soft grounds near potential den areas.
Also keep an eye out for small, cylindrical droppings(scant) with remains of insects or seeds.
5. Damage to Gardens and Lawns
Skunks might trample and disturb your garden plants and green lawn when seeking food sources such as grubs, insects, or fallen fruits.
If you notice a sudden increase in damaged plants, upturned soil, or missing produce in your garden, it could be a sign that skunks are foraging in your area.
Effective Ways to Repel Skunk from Your Home
Once a skunk establishes or finds potential in your home, it's usually permanent. That means it's hard to get rid of these relentless invaders. However, it's not impossible.
There are a few effective strategies you can implement to defend your domains against these visitors.
1. Use of Aromatic Repellents
Skunks have a strong sense of smell, which makes them extremely sensitive to certain scents. Below are a few natural repellants you can use against skunks and other small rodents:
- Cayenne pepper
- Citrus peels
- Dog, coyote, bobcat, or fox urine
- Eucalyptus oil
Additionally, you can use other overpowering smells produced by house deodorizers to repel skunks. The scent of these products will irritate their acute sense of smell, forcing them to seek shelter somewhere else.
Experts also recommend using mothballs, vinegar, or ammonia to discourage skunks from your garden.
2. Installing Motion-Activated Lights and Sprinklers
Skunks prefer to roam in the darkness in a quiet, undisturbed environment while foraging.
Fortunately, you can install motion-activated lights and sprinkles in your yard to create an unwelcome environment for skunks. The sudden bursts of light or water will startle and deter them from entering your territory.
3. Secure Your Waste and Food Sources
Skunks are opportunistic scavengers and are often attracted to easily accessible food. You can starve them by tightly sealing garbage lids and keeping any pet food or bird feeders securely indoors. Also, ensure your yard is tidy to remove potential hiding spots for skunks.
4. Eliminating Hiding Spots
Skunks are notorious for seeking shelter in dark and secluded areas. So, consider removing or securing potential hiding spots such as woodpiles, dense vegetation, or crawl spaces under your porch or deck. By doing so, you can eliminate suitable hiding spots and discourage skunks from settling anywhere in your home.
5. Erect a Fence
Another effective way to keep skunks away is to put up a fence. Whether you use a chicken wire or hardware cloth, ensure the fence extends 3 to 4 ft underground to prevent these pests from burrowing underneath and gaining access to your property. It should also be high enough to fend off climbing skunks.
If you want to take things a notch higher, install an electric fence to deter skunks and other invaders like foxes, coyotes, squirrels, etc.
6. Seal Entry Points
Since skunks can squeeze through small openings, inspect your foundation, walls, and vents for gaps or cracks. Seal off potential entry points with sturdy materials like steel mesh and caulk to prevent skunks from creating dens in these areas. Also, secure open areas above windows and doors with a screen.
7. Install Underground Barriers
By now, it's clear skunks like digging. So, the best way to shield these creatures from burrowing under your shed or porch is to install an underground barrier. You can bury a wire mesh or hardware cloth approximately 1ft deep around your perimeter to deter skunks from accessing your favorite spots. Also, remember to mow your lawn, remove any debris or piles of leaves, and fill in any holes or gaps in the ground that may serve as potential skunk hideouts.
8. Consulting a Professional
Sometimes, skunks may persist in invading your space despite your best efforts. In such a case, seek professional help from your local wildlife control department. Experts from such organizations will handle the skunk removal. They will also offer you a long-term solution to prevent future infestation.
Dear reader, that's all for today! We know this is a lot of information to take in, but now you're equipped with the knowledge to identify potential skunk dens or hide out on your property
On top of that, we have provided you with several practical measures you can take to discourage skunks from transforming your tranquil home into their shelter.
But remember, these unwelcomed visitors are resilient and persistent and will not give up their comfy dens easily. So, consider combining these strategies for the best result


How To Make Cat Toys Out Of Household Items
perro Editorial How To Make Cat Toys Out Of Household Items
One of the common problems that are experienced by indoor-only cats is a lack of environmental enrichment. Cats benefit from adequate physical and mental stimulation. Thus, cat parents should make an effort to enrich their pets' indoor environment by providing lots of opportunities for physical and mental stimulation. Cats that don't have something to do can become bored; and when boredom sets in, it can pave the way for the development of undesirable habits and behaviors which are fueled by the cat's pent-up energies.
There are many ways to keep your cat busy, active, and away from mischief. Cat toys don't have to be expensive or bought from stores. But if you do have the budget, why not? There's a huge range of toys designed for cats such as cat condos, feather teasers, scratchers, and catnip-filled plushies. Just make sure that you are buying cat-safe toys.
How to make cat toys
If you are feeling crafty and resourceful, there are lots of things around your home that can be recycled. Homemade DIY cat toys are an inexpensive way to keep your furball entertained for hours.
Here are two popular DIY cat toys to entertain your pet cat for hours:
DIY Cat Scratching Post
Making a scratching post is much easier than most cat parents think. There are different types of scratching posts so it is a good idea to have a design of what you want to make for your furball. Once you have the design, the next step is to acquire all the materials, some of which you can find in your home.
 - Plastic or cardboard tubes - should be strong enough to hold the entire structure and keep it stable.
 - Soft cloth
 - Rope
 - Padding
 - Wood slabs
 - Wood glue
 - Screws
 - Brackets
 - Upholstery stapler
 1. Fix the tube to the base of the scratching post by installing the brackets and securing it with screws.
 2. Line the tube with rope. Start by spreading glue on the tube and winding the rope tightly at each turn.
 3. After lining the tube, assemble the scratching post by fixing the tubes securely to the wooden slabs.
 4. For the base of the structure, you can use thick cloth or carpet. Cover the soft parts of the scratching post with pieces of cloth.
DIY Cat Mouse Toys
 - Wool felt
 - Floss for embroidery
 - Stuffing
 - Dried catnip (optional)
 - Pins
 - Needle
 - Scissors
There are many DIY websites where you can download a mouse-shaped pattern for cat toys. Just be sure to print the pattern at 100% to get the accurate measurements.
Once you have printed out the pattern, follow the templates when cutting up the pieces so that you have two pieces for each side of the mouse, two ears, a bottom piece, and a tail. You can use one color for all pieces or use several colors.
Start by attaching the mouse ears to the pointed side of a side piece. Secure the ear using the floss and a backstitch. The same step is done on the other side piece, making sure that both sides will match.
The next step is to sew the sides of the mouse together. Start at the part where the nose is and across the back with embroidery floss (at least three strands to make it durable) with a running stitch. Don't forget to insert the tail between the two side pieces.
Next, stitch the bottom part of the mouse starting from the nose and work toward the back on each side. Use three strands of embroidery floss and a running stitch. Stitch the other side and don't forget to stop about an inch from the tail of the mouse so you still have an opening to fill the mouse with stuffing or dried catnip. Close the opening with a running stitch, making sure to go back and fill the gaps with running stitches. Secure the stitches with a strong knot that is hidden between the felt layers.
DIY Sock Fish Cat Toy
This is one of the easiest cat toys to make. All you need to do is stuff a sock with packing paper. As your cat plays with the sock, they will love the crinkling sound made by the packing paper. Make the sock more appealing to your cat by adding some catnip to the stuffing. You can find the instructions here.
DIY Catnip Yarn Balls
Balls of yarn are your quintessential cat toys. Cats love the yarn's texture because they can hold on to it. Although it's not an expensive toy, yarn balls can actually entertain cats for hours. Here's an easy way to make catnip-infused yarn balls. All you need are yarn, glue, catnip, and styrofoam balls to make these simply attractive toys.
DIY Treat Puzzles
Treat puzzles are excellent ways to provide both physical and mental stimulation to pet cats. It requires your furball to "work" for the goodies that are placed inside the toilet paper rolls. All you have to do is simply glue the empty toilet paper rolls together to form a puzzle. You can get the detailed instructions here.
DIY Catnip Pillow
One of the favorite things cats love to do each day is sleep and just laze around. They are actually wired to sleep and rest during the day so they will have lots of energy to hunt at night. This is part of the predator instincts they have inherited from their ancestors. Having a catnip-filled pillow will be stimulating for cats. Here is an easy way to make a catnip pillow.
If you have the time, talent, and resources to make your pet's toys, there are many easy DIY cat toys resources online. Here are simple DIY cat toys ideas from YouTube on how to make a pom pom for cats, a DIY tent for cats, a DIY cat hammock, and a DIY yarn wrapped cat toy.
 Read more: The Cat Toys Handbook
0 comment
Please note, comments must be approved before they are published.


How To Start Logging With Laravel
Better Stack Team
Updated on May 4, 2022
In this tutorial, you will learn how to log the behaviour of your Laravel application. This will help you troubleshoot your application much more easily and quickly. Finding bugs can be frustrating and time-consuming. Luckily, Laravel comes with out of the box logging tools that will help a lot.
In application development, logging is crucial regardless of the platform or language. In this tutorial, we will take a look at one of the most popular PHP frameworks - Laravel.
Prerequisites
 - Laravel installed.
 - Basic knowledge of Laravel.
Step 1 — Getting To Know How Logging In Laravel Works
Laravel allows you to log messages about the behaviour of your application to files, the system of error logs, or even send them to Slack to notify your development team.
Laravel logging is based on channels. Channels are specific ways of writing a log message. Each channel may represent a different destination and you may send messages to multiple channels at once.
Monolog library
Laravel utilizes many popular open-source libraries. One of them is Monolog. It's a highly popular logging library among PHP developers, as it's easy to learn and very pleasant to work with. Monolog provides many ways to write logs such as writing them to files or sending them to email.
Feel free to learn more about Monolog in our Monolog basics logging tutorial.
Step 2 — Configuration
All the configuration options of your application's logging behaviour are located in the config/logging.php file. This file allows you to configure logging channels by adding new ones or updating current ones.
The configuration file contains one multidimensional array with two main keys. The first key is default and it looks like this:
'default' => env('LOG_CHANNEL', 'stack')
Copied!
This key sets the default logging channel. Any log that will be sent without specifying the channel will be directed to the default channel. Out of the box, stack is set to be the default channel.
The second key is channels. This key contains the array of channels that can be used for logging. The default stack channel mentioned above is defined here. Out of the box, the array of channels looks like this (note that this is just a part of the array, for full array, see the config file):
'channels' => [
 'stack' => [
 'driver' => 'stack',
 'channels' => ['single'],
 'ignore_exceptions' => false,
 ],
 'single' => [
 'driver' => 'single',
 'path' => storage_path('logs/laravel.log'),
 'level' => env('LOG_LEVEL', 'debug'),
 ],
 'daily' => [
 'driver' => 'daily',
 'path' => storage_path('logs/laravel.log'),
 'level' => env('LOG_LEVEL', 'debug'),
 'days' => 14,
 ],
 'slack' => [
 'driver' => 'slack',
 'url' => env('LOG_SLACK_WEBHOOK_URL'),
 'username' => 'Laravel Log',
 'emoji' => ':boom:',
 'level' => env('LOG_LEVEL', 'critical'),
 ],
 ...
 ],
Copied!
Channel Drivers
Every channel is powered by a driver. Driver sets where and how logs are recorded. You can think of drivers as Monolog handlers. Drivers are responsible for the actual logging to happen.
There are many built-in ready-to-use drivers or you can make your own. If you are familiar with the Monolog logging library, there is a monolog driver already created that can use any supported Monolog handler.
Most of those drivers are present in the configuration file out of the box, so it's recommended to take a look at them. This is the list of all channel drivers available in every Laravel application:
 - custom: a driver that calls a specified custom factory driver to create a channel
 - daily: a RotatingFileHandler based Monolog driver which rotates daily
 - errorlog: a ErrorLogHandler based Monolog driver
 - monolog: a Monolog factory driver that may use any supported Monolog handler
 - null: a driver that discards all log messages
 - papertrail: a SyslogUdpHandler based Monolog driver
 - single: a single file or path based logger channel (StreamHandler)
 - slack: a SlackWebhookHandler based Monolog driver
 - stack: a wrapper to facilitate creating "multi-channel" channels
 - syslog: a SyslogHandler based Monolog driver
Log Levels
Every channel has a level option. This option determines which log will or will not be processed based on the severity of the message. Less severe messages will not pass through the channel when the level is set high.
This is the full list of log levels
 - DEBUG: detailed debug information (LOWEST)
 - INFO : interesting events. Examples: User logs in, SQL logs
 - NOTICE: normal but significant events
 - WARNING: exceptional occurrences that are not errors. Examples: Use of deprecated APIs, poor use of an API, undesirable things that are not necessarily wrong
 - ERROR: runtime errors that do not require immediate action but should typically be logged and monitored
 - CRITICAL: critical conditions. Example: Application component unavailable, unexpected exception
 - ALERT: action must be taken immediately
 - EMERGENCY: emergency: system is unusable (HIGHEST)
Step 3 — Writing Log Messages
You can send messages to the log using the Log facade. Let's take a look at the following example:
use Illuminate\\Support\\Facades\\Log;
$message = "This is my first log";
Log::debug($message);
Log::warning($message);
Copied!
Given the current un-edited configuration that comes out of the box with Laravel, this code will create two entries in the storage/logs/laravel.log that will look like this:
Output:
[2021-04-30 09:48:54] local.DEBUG: This is my first log
[2021-04-30 09:48:54] local.WARNING: This is my first log
Copied!
Writing To Specific Channels
By default, all logs are directed to the stack channel. If you want to send a message to a specific channel that is not the default channel, you can do that by calling channel() method on the Log facade.
use Illuminate\\Support\\Facades\\Log;
$message = "This is my first log";
Log::channel('daily')->debug($message);
Copied!
Given the current configuration, this will create a new daily log storage/logs/laravel-YYY-MM-DD.log (based on the current date) that will be active for 14 days. In this log file you will see the following entry:
Output:
[2021-04-30 10:07:40] local.DEBUG: This is my first log
Copied!
Contextual Information
You can also provide contextual data in the form of an array. This data will be formatted and printed alongside the log message.
For example, you can provide information such as the user that triggered the error or the current URL:
use Illuminate\\Support\\Facades\\Log;
Log::error("Error happend :(", ["id" => "12345", "username" => "some_guy"]);
Output:
[2021-04-30 10:44:56] local.ERROR: Error happend :( {"id":"12345","username":"some_guy"}
Copied!
Step 4 — Building Log Stack
As mentioned in the Channel drivers section, stack driver allows us to stack multiple channels together and send one message to all the channels at once. We can make a stack of multiple channels where each has a different driver therefore we can create a simple hierarchy. Let's take a look at the following example:
'channels' => [
 'stack' => [
 'driver' => 'stack',
 'channels' => ['debug-channel','error-channel'],
 'ignore_exceptions' => false,
 ],
 'debug-channel' => [
 'driver' => 'single',
 'path' => storage_path('logs/debug.log'),
 'level' => env('LOG_LEVEL', 'error'),
 ],
 'error-channel' => [
 'driver' => 'single',
 'path' => storage_path('logs/error.log'),
 'level' => env('LOG_LEVEL', 'error'),
 ],
]
Copied!
In the code above, we have created a stack of channels consisting of debug-channel and error-channel.
The debug-channel sends messages to the storage/logs/debug.log file and its level is set to debug. That means that every log message sent to


text:
I've been working on trying to solve the problem of calculating the average of a row of numbers in which some of the cells have a null value. I'm convinced there's no easy way to do this. I found an example on the net that I have been working from but I can't seem to get that to work either. The example is:
$sql = mysql_query("SELECT *, (COALESCE(example, 0) + COALESCE(example2, 0) + COALESCE(example3, 0)) / (3 - (COALESCE(example - example, 1) + COALESCE(example2 - example2, 1) + COALESCE(example3 - example3, 1)) ) AS row_avg FROM attrib1 WHERE recid=".$recordid) or die(mysql_error());
I'm not sure what exactly this query is doing, and thus equally unsure of how to use it do my advantage. Any input would greatly appreciated.


Fiery Pit Of Hell
The concept of a fiery pit that people associate with the concept called hell comes, of course, from the Archons.
When they created religions it was, in their eyes, necessary to create punishment for any and all misdeeds and so it occurred to them that the worst thing that they could create was a fiery pit where god threw anyone who did not conform to any particular religion, complete with everlasting suffering inflicted on them by demons and Imps working under the direction of this heartless god.
They did this because religions were first introduced into the middle East. Those countries are hot and so people suffered from the heat.
Thus, it made sense to the Archons to push the concept of heat to its limit.
So the concept was introduced into at least two of the major religions and seized upon with great eagerness by the priests in order to terrorize their congregation.
This concept exists to this day and is still propounded from pulpit to terrorize people.
Thus, people who have been brought up in a religion that expands this false doctrine, if they have a near death experience, before quite losing consciousness, enter a state where they expect to go to this burning hell as they still consider themselves guilty of various things and think that they are unworthy of going to Heaven.
So, with their imagination, they create this image and it remains uppermost in their mind even though they might, in fact, proceed down the tunnel of light towards heaven.
The concept of going to hell remains uppermost in their memory and so, when they return to physical life, that is what they describe.
But it is just imagination rather like a bad dream. It has no place in reality.
The truth is as we have described in various books and publications.
It is high time that this lie was chased from the words and writings of misguided Preachers.
It will fade gradually as people start to comprehend spirituality and the noble, loving nature of God and that replaces the heartless tyrant invented by religions.
To download this lesson, please click on the link below:
PDF - Fiery Pit Of Hell 11.72 KB 240 downloads


text:
Table of Contents
How long does a concrete dam last?
While the dam is expected to last for centuries, engineers predict the structure could last for more than 10,000 years, surpassing most remnants of human civilization if humans were to disappear from the earth.
How long will a dam last without maintenance?
Many dams built during the 1930-70s, an era of intensive dam construction, have an expected life of 50-100 years. Due to inadequate maintenance and/or for environmental reasons, some of these dams will fail or be removed in the next 50 years.
What is the oldest dam still in use?
The Quatinah Barrage or Lake Homs Dam, located in Syria, is the oldest operational dam in the world. The dam was constructed during the reign of the Egyptian Pharaoh Sethi between _PHONE_ BC, and was expanded during the Roman period and between 1934 and 1938.
What's the average life span of a dam?
Quick Look. Similar to other human-made structures, such as roads and bridges, dams require regular maintenance and have a finite lifespan. Many dams built during the 1930-70s, an era of intensive dam construction, have an expected life of 50-100 years. Due to inadequate maintenance and/or for environmental reasons,…
How long are dams like Hoover Dam engineered to last?
It's the little ones you should worry about. Most of the small and medium-sized dams in this country were built to last just 50 years. (Nowadays, from what structural engineers tell me, the typical design life is more like 100 years.)
How old are the dams in the United States?
According to the U.S. Army Corps of Engineers, about 30 percent of the more than 76,000 dams in the United States are older than 50 years — and by 2020, that number will increase to more than 80 percent. That's a lot of old dams, some of which hold back not just water but toxic sediments from early industrial operations.
What kind of dam was built in the 21st century?
The possibility and usefulness of building as many dams in the 21 st century as have been built in the 20 th is analyzed in section six. Gravity dam: a rigid dam, made of masonry or concrete, withstanding water pressure by means of its own weight.


text:
Ghosts of the Titanic dock at Shrewsbury library
By Doris Christelis, Contributing Writer
Shrewsbury – The Shrewsbury Public Library was recently transformed into a voyage on the Titanic for 80 lucky "passengers." Ticketholders holding "steerage" and "first class" tickets enjoyed a walking tour through the library, which had been transformed into different rooms of the Titanic in commemoration of Archaeology Month, which was October.
The tour, designed to educate and immerse the visitors in the Titanic's history, appealed to a broad range of adults and children who were able to step back in time to 1912.
"Since 2012 is the 100th anniversary of the sinking of the Titanic, a tour seemed a good fit," said Sharon Martin, Head of Children's Services at the Shrewsbury Public Library.
After entering the "ship," "passengers" were greeted by a model of the Titanic built by Dean Gillam, who also volunteered that night in the ship's boiler room. Tours led by Martin and Dan Barbour, the young adult librarian and volunteer coordinator, then proceeded past a model iceberg with photos of the real icebergs found in the vicinity of the ship's sinking. One of the icebergs had a smear of red paint on its base and it was thought that it was the one that the Titanic struck.
Throughout the tour, analogies to Shrewsbury were made. For example, while the library is 50 feet high, the 3,000-year-old iceberg that the Titanic struck was thought to be 50 to 100 feet high. "Passengers" also learned that the Titanic was as long as the distance between the library and the Town Hall, and that the last survivor of the Titanic, Lillian Asplund, died in Shrewsbury in 2006 at the age of 99.
In a room called "Titanic by the Numbers," "passengers" learned many interesting facts including how the ship that took three years to build sank in under three hours, and that three lap dogs survived, while so many passengers perished. Also interesting was that the hull of the Titanic was only three-quarter inch thick while most "passengers" in Shrewsbury guessed it was at least one foot thick.
Further along in the tour, "passengers" were able to visualize how big the average lifeboat was by tape marked out on a rug in the shape of a lifeboat. By putting the average number of passengers that had, in 1912, made their way onto one of the Titanic's lifeboats, visitors were able to visualize how much room remained on each lifeboat and could easily imagine how many more lives could have been saved had the boats been filled to capacity.
Other rooms with volunteers re-enacting members of Titanic's crew included the "Marconi Room" where wireless operators were the first to communicate that the Titanic was sinking to 25 ships in the area using Morse Code, including the Carpathia which was the first ship to respond although it was not the closest.
In the "ship's" dining room, visitors were able to dine on items from the Titanic's actual menu on the day of the sinking – chocolate éclairs that had been served in the first-class dining rooms, and "Cabin biscuits," a staple in steerage.
Those interested in more information on the Titanic are welcome to visit the Shrewsbury Public Library, where many books are available on the subject.
Short URL: _URL_


EFEKTIFITAS PENGGUNAAN MEDIA EDUKASI BUKU SAKU DAN LEAFLET TERHADAP PENGETAHUAN DAN KEPATUHAN DIET PASIEN RAWAT JALAN DIABETES MELITUS TIPE 2 DI PUSKESMAS
Muniratul Hidayah, Sopiyandi Sopiyandi
Abstract
Educational activities is one strategy to the management of diabetes mellitus. Education is the activity of delivering health messages to groups or individuals in order to gain a better knowledge. The selected media is pocket books and leaflets, booklets chosen because it is simple, brief, and contains a lot of information. The purpose of this study to determine the effectiveness of the use of educational media pocket books and leaflets on knowledge and dietary compliance of outpatients with diabetes mellitus type 2 in the clinic. The research is a Quasi-Experiment with design used is Pretest-Posttest designnamely in the two groups conducted a pretest to determine the initial state before being given a different treatment, and both were also given the posttestusing the Wilcoxon test and Mann-Whitney test with a significance level of = 0.05. The results showed no significant differences in knowledge after being given nutrition education with media pocket books and leaflets p value. knowledge of 0,000 (Sig. <0.05), whereas the p values obtained compliance. amounted to 0,641 (p. <0.05) showed no significant difference in adherence respondents after being given nutrition education with media pocket books and leaflets. It is concluded that there are differences in knowledge after being given nutrition education with media pocket books and leaflets. However there was no difference in compliance after being given nutrition education with media pocket books and leaflets.
Keywords
media education, diabetes melitus type 2, knowledge, dietary com
Full Text:
PDF
Article Metrics
Abstract views : 48| PDF views : 46
Refbacks
 - There are currently no refbacks.
Copyright (c) 2019 Pontianak Nutrition Journal
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.


What does t-carrier mean?
Definitions for t-carrier
t-car·ri·er
Here are all the possible meanings and translations of the word t-carrier.
Wiktionary
 1. T-carrier(Noun)
 The generic designator for several digitally multiplexed signal carrier systems.
Freebase
 1. T-carrier
 T-carrier, sometimes abbreviated as T-CXR, refers to one of several digital transmission systems developed by Bell Labs. T-carriers are used in North America, South Korea, and Kyoto. The first of these was Transmission System 1, which Bell Labs introduced in 1962. T-1 greatly increased the number of telephone calls the telephone network was capable of transmitting at one time.
Numerology
 1. Chaldean Numerology
 The numerical value of t-carrier in Chaldean Numerology is: 2
 2. Pythagorean Numerology
 The numerical value of t-carrier in Pythagorean Numerology is: 2
Examples of t-carrier in a Sentence
 1. Chester William Nimitz:
 I want that fourth carrier.
 2. Michael Connell:
 The mock carrier didn't fire back.
 3. Defense Minister Gen Nakatani:
 We are not thinking about using this as an aircraft carrier.
 4. Terry Gou:
 We are like an aircraft carrier taking a bunch of fighter jets.
 5. President Francois Hollande:
 The aircraft carrier will enable us to be more efficient in coordination with our allies.
Images & Illustrations of t-carrier
 1. t-carriert-carriert-carrier
Translation
Find a translation for the t-carrier definition in other languages:
Select another language:
Discuss these t-carrier definitions with the community:
Word of the Day
Would you like us to send you a FREE new word definition delivered to your inbox daily?
Please enter your email address:
Citation
Use the citation below to add this definition to your bibliography:
Style:MLAChicagoAPA
"t-carrier." Definitions.net. STANDS4 LLC, 2018. Web. 16 Nov. 2018. <_URL_
Are we missing a good definition for t-carrier? Don't keep it to yourself...
Free, no signup required:
Add to Chrome
Get instant definitions for any word that hits you anywhere on the web!
Free, no signup required:
Add to Firefox
Get instant definitions for any word that hits you anywhere on the web!
Nearby & related entries:
Alternative searches for t-carrier:
Thanks for your vote! We truly appreciate your support.