"or" logic.
 0 && \0 = \0 \0 && 0 = \0 0 || \0 = \0 \0 || 0 = \0
 0 && \1 = \0 \0 && 1 = \0 0 || \1 = \1 \0 || 1 = \1
 1 && \0 = \0 \1 && 0 = \0 1 || \0 = \1 \1 || 0 = \1
 1 && \1 = \1 \1 && 1 = \1 1 || \1 = \1 \1 || 1 = \1
Once a directory is flagged to be pruned, it will be pruned regardless of subsequent rules.
 $rule->max_depth(3)->name(qr/foo/);
This will return files or directories with "foo" in the name, but all directories at depth 3 will be pruned, regardless of whether they match the name rule.
Generally, if you want to do directory pruning, you are encouraged to use the "skip" method instead of writing your own logic using \0 and \1.
Extension modules and custom rule methods
One of the strengths of File::Find::Rule is the many CPAN modules that extend it. Path::Iterator::Rule provides the add_helper method to provide a similar mechanism for extensions.
The add_helper class method takes three arguments, a name for the rule method, a closure-generating callback, and a flag for not generating a negated form of the rule. Unless the flag is true, an inverted "not_*" method is generated automatically. Extension classes should call this as a class method to install new rule methods. For example, this adds a "foo" method that checks if the filename is "foo":
 package Path::Iterator::Rule::Foo;
 use Path::Iterator::Rule;
 Path::Iterator::Rule->add_helper(
 foo => sub {
 my @args = @_; # do this to customize closure with arguments
 return sub {
 my ($item, $basename) = @_;
 return if -d "$item";
 return $basename =~ /^foo$/;
 }
 }
 );
 1;
This allows the following rule methods:
 $rule->foo;
 $fule->not_foo;
The add_helper method will warn and ignore a helper with the same name as an existing method.
Subclassing
Instead of processing and returning strings, this module may be subclassed to operate on objects that represent files. Such objects must stringify to a file path.
The following private implementation methods must be overridden:
 - _objectify -- given a path, return an object
 - _children -- given a directory, return an (unsorted) list of [ basename, full path ] entries within it, excluding "." and ".."
Note that _children should return a list of tuples, where the tuples are array references containing basename and full path.
See Path::Class::Rule source for an example.
LEXICAL WARNINGS
If you run with lexical warnings enabled, Path::Iterator::Rule will issue warnings in certain circumstances (such as an unreadable directory that must be skipped). To disable these categories, put the following statement at the correct scope:
 no warnings 'Path::Iterator::Rule';
PERFORMANCE
By default, Path::Iterator::Rule iterator options are "slow but safe". They ensure uniqueness, return files in sorted order, and throw nice error messages if something goes wrong.
If you want speed over safety, set these options:
 %options = (
 loop_safe => 0,
 sorted => 0,
 depthfirst => -1,
 error_handler => undef
 );
Alternatively, use the iter_fast and all_fast methods instead, which set these options for you.
 $iter = $rule->iter( @dirs, \%options );
 $iter = $rule->iter_fast( @dirs ); # same thing
Depending on the file structure being searched, depthfirst => -1 may or may not be a good choice. If you have lots of nested directories and all the files at the bottom, a depth first search might do less work or use less memory, particularly if the search will be halted early (e.g. finding the first N matches.)
Rules will shortcut on failure, so be sure to put rules likely to fail early in a rule chain.
Consider:
 $r1 = Path::Iterator::Rule->new->name(qr/foo/)->file;
 $r2 = Path::Iterator::Rule->new->file->name(qr/foo/);
If there are lots of files, but only a few containing "foo", then $r1 above will be faster.
Rules are implemented as code references, so long chains have some overhead. Consider testing with a custom coderef that combines several tests into one.
Consider:
 $r3 = Path::Iterator::Rule->new->and( sub { -x -w -r $_ } );
 $r4 = Path::Iterator::Rule->new->executable->writeable->readable;
Rule $r3 above will be much faster, not only because it stacks the file tests, but because it requires only a single code reference.
CAVEATS
Some features are still unimplemented:
 - Untainting options
 - Some File::Find::Rule helpers (e.g. grep)
 - Extension class loading via import()
Filetest operators and stat rules are subject to the usual portability considerations. See perlport for details.
SEE ALSO
There are many other file finding modules out there. They all have various features/deficiencies, depending on your preferences and needs. Here is an (incomplete) list of alternatives, with some comparison commentary.
Path::Class::Rule and IO::All::Rule are subclasses of Path::Iterator::Rule and operate on Path::Class and IO::All objects, respectively. Because of this, they are substantially slower on large directory trees than just using this module directly.
File::Find is part of the Perl core. It requires the user to write a callback function to process each node of the search. Callbacks must use global variables to determine the current node. It only supports depth-first search (both pre- and post-order). It supports pre- and post-processing callbacks; the former is required for sorting files to process in a directory. File::Find::Closures can be used to help create a callback for File::Find.
File::Find::Rule is an object-oriented wrapper around File::Find. It provides a number of helper functions and there are many more File::Find::Rule::* modules on CPAN with additional helpers. It provides an iterator interface, but precomputes all the results.
File::Next provides iterators for file, directories or "everything". It takes two callbacks, one to match files and one to decide which directories to descend. It does not allow control over breadth/depth order, though it does provide means to sort files for processing within a directory. Like File::Find, it requires callbacks to use global variables.
Path::Class::Iterator walks a directory structure with an iterator. It is implemented as Path::Class subclasses, which adds a degree of extra complexity. It takes a single callback to define "interesting" paths to return. The callback gets a Path::Class::Iterator::File or Path::Class::Iterator::Dir object for evaluation.
File::Find::Object and companion File::Find::Object::Rule are like File::Find and File::Find::Rule, but without File::Find inside. They use an iterator that does not precompute results. They can return File::Find::Object::Result objects, which give a subset of the utility of Path::Class objects. File::Find::Object::Rule appears to be a literal translation of File::Find::Rule, including oddities like making -M into a boolean.
File::chdir::WalkDir recursively descends a tree, calling a callback on each file. No iterator. Supports exclusion patterns. Depth-first post-order by default, but offers pre-order option. Does not process symlinks.
File::Find::Iterator is based on iterator patterns in Higher Order Perl. It allows a filtering callback. Symlinks are followed automatically without infinite loop protection. No control over order. It offers a "state file" option for resuming interrupted work.
File::Find::Declare has declarative helper rules, no iterator, is Moose-based and offers no control over ordering or following symlinks


text:
"I think that's the weakest link in the system … dealing with and getting parents into proper good care … there's not enough information given to the children."
A summary of the focus-group research exploring patient and caregiver experiences, recommendations and perspectives on healthcare integration in Ontario. This research formed the basis of The Change Foundation's first health integration report, Who Is the Puzzle Maker? Among the top learnings from this research: While patients are increasingly educated about health issues, they do not have a comparable understanding of the healthcare system. This knowledge would be very helpful for both patients and caregivers to ease their navigation through the system.

source: openbmb/Ultra-FineWeb


text:
Number of water treatment plants, located in Aishbagh, Balaganj and Gaughat, that draw water from the Gomti river and supply drinking water to Lucknow city after treatment.
125 million litres
Volume of water supplied to the city from the water treatment plants each day.
100,000 million litres
Average daily supply to city reported around 25 May leading to scarcity in areas like Aishbagh, Balaganj, Rakabagnj, Thakurganj, Yahiyaganj and Musabagh. Many residents also complained of dirty water supply.
Minimum level of water in the Gomti river below which the water treatment plants cannot function effectively.
Water level reported in the Gomti river at the beginning of May, while the average level at this time of the year is 356 ft., leading to rationing of supply. Rationing will continue until the arrival of monsoon as the Gomti river is mainly a groundwater and monsoon-fed river and levels will only dip further.
14 lakh residents, mostly from the old city, have been grappling with shortages since 10 days per reports.

source: m-a-p/FineFineWeb


text:
Fort Saint Vrain
Fort Saint Vrain was an 1837 fur trading post built by the Bent, St. Vrain Company, and located at the confluence of Saint Vrain Creek and the South Platte River, about 20 miles (32 km) east of the Rocky Mountains in the unorganized territory of the United States. This area later became part of the State of Colorado. A historical marker notes the place where Old Fort St. Vrain once stood, today at the end of Weld County Road 40, located about seven miles north of Fort Vasquez, Colorado. Among those who helped to establish the fort was Ceran St. Vrain, after whom it was named.
William Clark, governor of the territory, granted the Bent, St. Vrain Co. a license to trade on November 8, 1836. Like neighboring forts, the structure was built as a two-story adobe structure whose walls encased an interior courtyard. It accommodated trade with Native American tribes and mountain men engaged in fur trapping. It resembled the adobe building and plaza reconstructed at Fort Vasquez and Bent's Old Fort.
Marcellin St. Vrain, Ceran's brother, managed the trading post. He employed such notable people as James Beckwourth, a mountain man, and Jean Baptiste Charbonneau, who was born to Sacajewea during the _PHONE_ Lewis and Clark Expedition. She helped guide the expedition with her husband, the trapper Toussaint Charbonneau.
After the Taos Revolt in 1847, the St. Vrain brothers both returned to St. Louis. After Ceran St. Vrain sold his shares of the Bent, St. Vrain Co., William Bent became sole proprietor by 1849. Bent moved to Fort St. Vrain temporarily before building a new Fort Bent in the Big Timbers area.
- Whiteley, Lee; The Cherokee Trail: Bent's Old Fort to Fort Bridger; Lee Whiteley; 1999; Johnson Printing; Boulder, Colorado; ISBN 0-_PHONE_-1-7
- Brotemarkle, Diane; Old Fort St. Vrain; Diane Brotemarkle; 2001; Johnson Printing; Boulder, Colorado; ISBN 0-_PHONE_-0-4
- Ubbelohde, Carl; Benson, Maxine; Smith, Duane A; A Colorado History: Third Edition; 1972; Pruett Publishing Co; Boulder Colorado

source: HuggingFaceFW/fineweb-edu


text:
We have investigated chemical states and charge density in HfSiON films as a function of depth using x-ray irradiation time-dependent photoemission spectroscopy. N 1s core-level photoemission spectra deconvoluted into three components depend on HfSiON thickness, indicating the component, which is attributed to the N atoms bonded to Hf atoms, has peak near the surface. On the other hand, charge density estimated from band bending in Si from Si 2p photoemission spectra is also distributed mainly near the surface. These results indicate that the origin of the negative charge trapping can be directly related to the presence of Hf-N bonds.
ASJC Scopus subject areas


text:
Franklin in Williamson County, Tennessee — The American South (East South Central)
A Final Place of Rest
The only marked graves in the African American section are those of Mariah and Bolen Reddick's twin sons, who were stillborn in 1877. Mariah Reddick had once been a McGavock slave. She lived until 1922 and is buried next to her husband at Toussaint L'Ouverture Cemetery in downtown Franklin.
Formal family cemeteries such as this were far from typical. Most people in the 18th and 19th centuries, whatever their race or background, were buried in crude graves with wooden markers and thus were lost to time.
Today this cemetery is a place of rest, but it is also a place for the living to remember. While those buried here are largely
Erected by Battle of Franklin Trust.
Location. 35° 54.267′ N, 86° 51.578′ W. Marker is in Franklin, Tennessee, in Williamson County. Marker can be reached from Eastern Flank Circle 0.4 miles south of Lewisburg Pike (Business U.S. 431), on the left when traveling west. Touch for map. Marker is at or near this postal address: 1345 Eastern Flank Cir, Franklin TN 37064, United States of America. Touch for directions.
Other nearby markers. At least 8 other markers are within walking distance of this marker. McGavock Family Cemetery (a few steps from this marker); McGavock Confederate Cemetery (a few steps from this marker); Maj. Gen. William W. Loring's Division (within shouting distance of this marker); Battle of Franklin, Eastern Flank (about 300 feet away, measured in a direct line); a different marker also named Battle of Franklin, Eastern Flank (about 300 feet away); a different marker also named Battle of Franklin, Eastern Flank (about 300 feet away); The Final Campaign 1864 (about 300 feet away); a different marker also named The Battle of Franklin (about 300 feet away). Touch for a list and map of all markers in Franklin.
Categories. African Americans • Cemeteries & Burial Sites •
More. Search the internet for Carnton.
Credits. This page was last revised on November 26, 2019. This page originally submitted on November 26, 2019, by Larry Gertner of New York, New York. This page has been viewed 47 times since then and 9 times this year. Photos: 1, 2, 3, 4, 5. submitted on November 26, 2019, by Larry Gertner of New York, New York. • Bernard Fisher was the editor who published this page.


text:
Measuring Green Body Density
The bulk density of a green ceramic body provides valuable information needed to control the quality of a ceramic piece (after firing) with respect to its final size and the porosity and cracks in the body. Therefore, it is important that optimum measurement procedures to be followed in determining density.2
Many American Society for Testing and Materials (ASTM) methods for determining bulk density of refractory materials and glasses are described in annual books published by ASTM (see _URL_). Most of these methods are based on volume displacement by Archimedes' principle; that is, since both refractory materials and glasses are compatible with water, their bulk density can be easily determined by volume displacement in water. However, this test method is not suitable for green body ceramics, which will disintegrate easily in water. For green body ceramics, mercury pycnometry is recognized as the benchmark method for measuring the bulk volume of a body. Mercury is an excellent displacement liquid—its high wetting angle and large surface tension prevents it from penetrating the small pores in green bodies. However, mercury has a high toxicity and is considered to be a significant health hazard. Mercury porosimetry is currently used (a) to generate bulk density data to be compared with data obtained from other absolute measurement techniques and (b) to generate calibration standards for a relative measurement technique.
In 1999, an assessment report on several laboratory techniques for bulk density measurement was published.1 The techniques studied include mercury pycnometry (ASTM C493-93), water displacement of bodies coated with wax (ASTM C914-95) or with a water repellent spray, volume displacement of mineral oil, and powder pycnometry methods. Of all measurement techniques studied with a limited number and shape of samples, the compacted powder pycnometry appeared to be promising when compared to mercury pycnometry.
Experimental ProceduresGreen Ceramic Bodies Studied
Green body samples with different preparation procedures were used in this study. The first set of alumina samples was prepared by using a uniaxial pressing process in different sized pressing dies at various pressures. The second set of samples comprised commercial alumina and electronic porcelain tiles.
The first pressed alumina samples were cylinders, and GE 94ND2 was the alumina powder used. Pressed alumina cylinders with a dimension of 1.86 cm (0.75 in.) height and 1.28 cm (0.5 in.) diameter were designated as the "A" series. The pressures used were 142 MPa (20.5 Kpsi), 85.0 MPa (12.3 Kpsi), 56.6 MPa (8.21 Kpsi) and 35.4 MPa (5.13 Kpsi). Altogether, 24 cylinders were produced with six cylindrical samples at each pressure setting. Their green body densities were first determined by the mass-volume measurement technique, and the density value (g/cm3) at each pressure was approximately 2.22, 2.15, 2.10 and 2.04, respectively. Thus, a range of densities was produced for the higher precision measurements that follow.
The second set of alumina samples, designated as the "B" series, was pressed uniaxially with the same alumina powder, but they were in disc form. Their dimensions were 3.15 cm (1.25 in.) diameter and 0.9 cm (0.36 in.) thick. The pressing loads were 32.3 MPa (4.68 Kpsi), 48.4 MPa (7.02 Kpsi), 64.5 MPa (9.35 Kpsi) and 96.8 MPA (14.038 Kpsi). Their densities (g/cm3) at each pressure by mass and volume measurement technique were approximately 1.96, 2.05 2.11 and 2.19, respectively.
These two sets of alumina samples were used to compare the bulk densities determined by mercury porosimeter, compact powder pycnometry, and the mass-volume measurement technique. The bulk densities obtained from the mass-volume method were used to establish correlation with noncontact ultrasound measurements.
Two sets of 9 cm x 9 cm (3.5 in. x 3.5 in.) square alumina tile samples were also studied. The first set consisted of two electronic porcelain tile samples, designated "C" and "D," and were pressed at 12.6 MPa (1825 psi) 18.1 MPa (2625 psi), respectively. The second set consisted of two 96% alumina tile samples, designated "E" and "F," and were pressed at 12.6 MPa (1825 psi) and 18.1 MPa (2625 psi), respectively.
Each tile sample was cut into nine small squares (3 cm x 3 cm), which were examined with the noncontact ultrasound technique and numbered Al to A9. After ultrasound study, each tile sample was cut again into nine smaller squares (1 cm x 1 cm), and the edges were shaped to fit the porosimeter's cell (penetrometer), which was not large enough to hold the first divided samples (3 cm x 3 cm). Mercury porosimeter measurements were made on three of the 1 cm x 1 cm samples, and the average of the three measurements was taken as the corresponding noncontact ultrasound measurement.
After obtaining both their ultrasound velocity data at these nine positions of each tile sample and then their corresponding bulk density values by mercury porosimeter, a correlation between the two techniques was considered to determine whether noncontact ultrasound velocity can be used as a relative measurement technique for bulk density gradient of each tile sample.
Bulk Density Measurement Methods
Mercury displacement method. Two mercury porosimeter instruments were used in this study. The Autoscan Porosimeter (Quantachrome Corp., Boynton, Fla.) was used to measure the bulk densities of the alumina tile samples, and the AutoPore Ill mercury porosimeter (Micromeritics Instrument Corp., Norcross, Ga.) was used to measure the bulk densities of the alumina discs.
For both porosimeters, a penetrometer with known volume was used. The cell tapered into a finer tube at one end where a reference mark is present for accurate filling. The volume of mercury displaced by the green body is determined by measuring the following masses: the mass of the green body (WB), the mass of the cell filled with mercury (WC+Hg), and the mass of the cell filled with mercury plus the green body (WC+Hg+B). The mass of mercury displaced by the green body is equal to (WC+H9) - (WC+Hg+B - WB). By keeping the temperature constant during the measurements, the density of mercury is known, with which the volume of mercury displaced is calculated knowing the mass. The bulk density of the green body is the mass of the green body divided by the displaced mercury volume.1,3
Compacted powder method. In this method, a packing of fine powders serves as the displacement media. The volume of a body is measured by the change in volume of a given quantity of particles before and after the body is immersed in the particles under the same applied force.1,3 The instrument used here was the Geo-Pyc from Micromeritics Instrument Corp. Parametric studies of the instrument have been reported previously.1
To improve the repeatability and reproducibility of the method, the following parameters should be carefully considered: consolidating force, ratio of sample volume to the chamber volume, sample shape, sample position in the chamber, and pretest sample preparation in the instrument.
Mass-volume measurement. Since the alumina cylinders and discs have geometric shapes, the volume can be calculated from a few linear measurements. A digital caliper can measure the lengths, thicknesses and diameters needed for the calculation to obtain the volume of cylindrical and circular bodies. An analytical balance can obtain mass of the green bodies, and bulk densities can be derived.
For tile samples, the edges of the divided tile subsamples are not perfect, so linear measurements are not possible. Therefore, mass-volume measurements are not feasible.
Noncontact ultrasonic measurements. Noncontact (air coupled) ultrasound, a relatively new technique to characterize green bodies,4,5 determines ultrasound velocity through a material with approximately 10 mm of air between the specimen and the transducers. Since it is a noncontact technique, measurements on fragile samples such as green body ceramics can be made. Before this new technique, ultrasound velocity through a sample was generally measured in a medium such as water, and it is impossible to immerse green ceramics in water without disintegration.
Noncontact ultrasound is a relative method and has the potential to be used as a nondestructive quality control technique to control green body density during an on-line production process, since it can perform precise measurements at a speed of 20 readings per second.
For the tests discussed in this article, ultrasonic velocities were measured with the NCA 1000 noncontact analyzer from Secondwave Systems Corp, Boalsburg, Pa. This system is characterized by >140 dB dynamic range and a time-of-flight uncertainty of ±20 ns (under open ambient air condition) and ±1 ns (under closed condition)—i.


text:
Using Google Earth to Estimate Shoreline Erosion History
When evaluating a shoreline for possible implementation of a living shoreline project, one of the most important site characteristics to assess is the erosion history of the site. An easy and free way to do this is to use Google Earth and Microsoft PowerPoint.
Using these tools, you should be able to quickly determine if a site has been experiencing erosion or if it is relatively stable. You may also be able to determine the cause of erosion at a site using this activity alone or in combination with property owner interviews.
This guide serves as a step-by-step tutorial to help anyone to be able to do shoreline erosion assessments using this common software. However, this is a rough evaluation of erosion at a site. It should not be used to measure exact erosion rates or amount of land lost.
How is this exercise helpful for living shoreline decisions?
Erosion history can indicate:
- Suitability for living shoreline implementation
- The need for wave-breaking structures
How to download Google Earth
- Go to _URL_ This example uses Google Chrome, but other browsers will also work.
- Select "Earth Versions."
- Select "Google Earth Pro on desktop."
- Select "Download Earth Pro on desktop."
- Select "Accept & Download."
- Click the execute command and select "Yes" to allow changes to your computer.
Welcome to Google Earth!
- Enter location into search bar.
- Go back in time. In this example, 1992 is the date chosen.
- Zoom in as much as possible while still being able to discern the shoreline.
- Can zoom in by pressing the plus button, scrolling up with the mouse wheel, or zooming in on a touchpad.
- Save the zoomed-in image. Be sure to include the year in the name of the picture file!
- Set picture as slide background in PowerPoint.
- Select "Format Background."
- Select "Picture or texture fill," and then Insert picture from "File…"
- Get rid of text boxes.
- Choose "Layout."
- Choose the "Blank" slide option.
- Trace shoreline.
- Choose the free draw tool.
- Use your mouse to draw along the shoreline.
- To change the color and width of the line, choose "Format Shape."
- Trace reference line.
- Group the tracings together.
- Select all by holding down shift and clicking each.
- Choose "Arrange," and then "Group."
- Save a later image from Google Earth.
- Set the second image as the background on a new PowerPoint slide. (See step 5 for instructions.)
- Add the shoreline tracings from the first image to the second image.
- Select the tracings in the first image, and then select "Copy."
- Go to the new image and paste.
- Use your reference lines to adjust your shoreline tracing.
- Use the rotate button to rotate the image by dragging in the direction needed to line up your reference lines.
- By dragging the dots, you can change the shape, width, and height of the grouping.
- How to interpret the pictures: The space between the shoreline tracing and the more recent shoreline is the area of erosion.
For more information
Visit _URL_ or email _EMAIL_.
The information given here is for educational purposes only. References to commercial products, trade names, or suppliers are made with the understanding that no endorsement is implied and that no discrimination against other products or suppliers is intended.
Publication 3357 (POD-05-19) MASGP-19-029
By Sara Martin, Extension Associate, and Eric Sparks, PhD, Assistant Extension Professor, Coastal Research & Extension Center.
Copyright 2019 by Mississippi State University. All rights reserved. This publication may be copied and distributed without alteration for nonprofit educational purposes provided that credit is given to the Mississippi State University Extension Service.
Mississippi State University is an equal opportunity institution. Discrimination in university employment, programs, or activities based on race, color, ethnicity, sex, pregnancy, religion, national origin, disability, age, sexual orientation, genetic information, status as a U.S. veteran, or any other status protected by applicable law is prohibited. Questions about equal opportunity programs or compliance should be directed to the Office of Compliance and Integrity, 56 Morgan Avenue, P.O. 6044, Mississippi State, MS 39762, _PHONE_.
The Mississippi State University Extension Service is working to ensure all web content is accessible to all users. If you need assistance accessing any of our content, please email the webteam or call _PHONE_.


Published on (
 See this if you're having trouble printing code examples
Hackers Meet Soldiers
by George Peter Staplin and Cameron Laird
OpenBSD is widely recognized as "one of those other OSes"--an operating system available, like Linux, without licensing fee, but with its own character distinct from any other OS. Only recently, though, have people begun to learn that that the US Defense Advanced Research Projects Agency (DARPA) partially funds the Canadian-based OpenBSD project. Why is the US military paying ideology-driven foreign hackers? What's the effect on development of the OS?
Focused on Security
Independent Alberta-based kernel hacker Theo de Raadt is the creator, overseer, and taskmaster of the OpenBSD project. Security has been a consistent strength of his professional career. While centered in Canada, the OpenBSD advanced operating system team De Raadt leads includes members from around the world.
OpenBSD has focused on security, reliability, and quality since its launch over 7 years ago. The team follows such standards as POSIX, ANSI, and most of X/Open. Since 1996, formal audits [see sidebar on security and audits] of the base system's source code have further buttressed its reputation for security. Thousands of companies, including Adobe and Network Security Technologies, Inc., use OpenBSD, although many of them keep their choice private for security reasons.
Security and Audits
"Security" and "audit" mean something different to OS programmers than they do in civilian life. Security refers to everything done to protect a system. This certainly concerns "AAA" (authentication, authorization, and accounting) as ways to keep "bad guys" from wreaking havoc, but also involves a variety of expedients, from "Are you sure?" buttons to log files, which protect users from their own mistakes.
An audit is an attested review of quality and integrity performed by an independent professional. OpenBSD reviewers carefully study individual programs and parts of programs, to verify that nothing can go wrong. "Go wrong" here means, for example, that the program doesn't burn its CPU or launch missiles if a user (perhaps accidentally) enters a longer data-field than expected.
Military Contracts
DARPA has funded OpenBSD through a program known as Composable High Assurance Trusted Systems (CHATS). The University of Pennsylvania oversees the specific proposal behind this grant, called Portable Open Source Security Elements (POSSE). The grant money has allowed De Raadt to hire former part-time volunteers as full-time employees. This staffing accelerated development and provided time for the team to report on its research by writing academic papers.
De Raadt answered several questions about the contract for this article. He explained that no development serves only government purposes: "Nearly everything that is being developed is going into the OpenBSD source tree. All of what we do is free. Any changes which do not go into our source tree are a result of discarded work: something went wrong, something was not useful, a semantic is flawed, etc."
Among the OpenBSD implementation projects CHATS has at least partially financed are support for cryptographic hardware, setuid reduction and daemon cleanup, systrace, the stateful OpenBSD packet filter pf, and, most recently, stack protection. Changes implemented through CHATS are likely to migrate to other systems as well. The changes are already licensed as free software, and they follow what De Raadt calls "Unix semantics" for portability. To ensure that the code is well understood and able to be shared, the implementation team has been writing papers about its design and implementation.
Summary of Recent Projects
Even without the detail these formal papers provide, it's possible to understand the essence of the CHATS projects. setuid reductions, for example, increase the precision of operation as a privileged user. Certain code, known as a "setuid program", must be run with heightened security privileges. But if a program runs as root or a similarly privileged identity, any error or exploit has the potential to damage the entire system. Limiting security settings restricts the scope and likelihood of such damage.
Related Reading
The Complete FreeBSD
Documentation from the Source
By Greg Lehey
The traditional Unix-like security provisions for networking illustrate this principle. These OSes restrict creation of services on the "lower range" of socket ports, such as port 80 for an HTTP server. This means that the user must have special privileges to create a server on these ports. Apache, for example, starts as a privileged user to create a server socket on port 80. It then changes to run as a less powerful user for safety reasons.
OpenBSD reinforces this precaution by changing Apache's root directory (chroot), along with its user identity. So even if a cracker accesses the system, she'll be able to reach only the Apache root directory (typically /var/www), rather than the full filesystem below /, which would likely be accessible with a less secure implementation of Apache.
The systrace project also manages the relations between programs and the privileges they exercise. systrace uses configuration files to specify the system calls a program may make, and what the system calls--including non-native, emulated calls--may do. This restricts a cracker's ability to use a program for an unintended purpose. A systrace configuration file for named, for example, might declare:
native-fsread: filename eq "/etc/named.conf" then permit
This restricts named to reading only the file that it should read; even if named is compromised somehow, OpenBSD prevents it from being "hijacked" to more dangerous ends.
systrace expressively and elegantly addresses common security vulnerabilities. We expect to see many system administrators learn and use it soon. Two recent ONLamp articles address systrace in detail: Systrace and Creating Systrace Policies.
The pf packet filter is another powerful tool. It provides the ability to limit port and address access across a network interface, does network translation (NAT/BINAT/redirection), queuing, and other features vital for a server or firewall. Two ONLamp articles about securing small networks with OpenBSD discuss how to use pf: Introducing pf and NAT with pf in OpenBSD 3.3.
Stack Protection
The execution stack is a common target for attack by buffer overflows and other means. (A recent ONLamp article about chroot explored buffer overflows in more detail.) It's characteristic of common hardware architectures that stack modification can allow a cracker to execute malicious code. The OpenBSD team has come up with a combination of defenses that reduces the risk of such exploits. Memory pages and ELF sections have been marked as non-writable and non-executable where possible; this prevents an attacker from writing his own code into memory and executing it. The team has also cooperated in development of ProPolice, a tool originally created by IBM employee Hiroaki Etoh. At runtime, ProPolice checks return addresses and reorganizes variables to make them more difficult to overflow.
These initiatives, CHATS and POSSE, and OpenBSD programming ingenuity have generated a variety of security advances. OpenBSD's liberal license means that the whole world will have the opportunity to use more secure software. The crack prevention provided by the multitiered approach of stack protection, non-writable/non-executable areas of memory, and setuid reduction should make life more difficult for crackers; and, thus, easier for administrators. The proactive security approach that OpenBSD has used for years is now trickling down into other systems, as big players, including Microsoft, recognize the importance of secure coding. You can benefit from OpenBSD's advantages and also support the OpenBSD project by buying a CD. It's also possible, of course, to download OpenBSD freely via FTP.
As has been true for many years, the upcoming annual USENIX conference will include presentation of an OpenBSD security research paper that explains more about an OpenBSD project; in this case, cryptographic hardware. In the meantime, OpenBSD mailing lists are the best way to monitor the details of the OS's security advances.
George Peter Staplin is a student in Utah whose own programming focuses mainly on computer graphics. He works mostly with open-source variants of Unix, including OpenBSD.
Cameron Laird is the vice president of Phaseit, Inc. and frequently writes for the O'Reilly Network and other publications.
Return to the BSD DevCenter.
Copyright © 2009 O'Reilly Media, Inc.


text:
amercementArticle Free Pass
amercement, in English law, an arbitrary financial penalty, formerly imposed on an offender by his peers or at the discretion of the court or the lord. Although the word has become practically synonymous with "fine," there is a distinction in that fines are fixed by statute, whereas amercements are decided by the court. Originally, an amercement represented a commutation of a sentence that required the forfeiture of goods, while a fine was an arrangement agreed upon between the judge and the prisoner to avoid imprisonment. Magna Carta (1215) attempted to regulate the assessment of amercements.
What made you want to look up "amercement"? Please share what surprised you most...


text:
The The Effect of the Kahoot Quiz on the Student's Results in the Exam
Students taking low-stake quizzes in a gamified environment shows improvement on their studies, thus has the potential to be an effective part in an improved learning experience. Previous researches show that implementing gamification into the educational system has positive outcome on the student's engagement, motivation and the overall experience of learning. In this study is a field experiment, where quizzes were created with the Kahoot application, to bring action and visual triggers into the classroom. The aim of this paper to measure the long-term learning effect of the Kahoot quiz in the exams. Several of the quiz questions during the class were purposefully blended into the exam's question bank as a multiple choice or a true or false question. In this research 200 bachelor students participated in a 14-week long elective course. The data was collected weekly from the Kahoot quizzes and from the two mandatory exams. All the results from the Kahoot quiz and the exams provided the base of the analysis. Furthermore, the exam results were analyzed based on number of Kahoot quizzes they took part, a comparison of the results of each question based. The results show that students who took part in more Kahoot quizzes tend to reach higher exam mark. Moreover, they marked more correct answers and less incorrect ones. As a conclusion, using some level of game-based learning has a positive effect on the student's results and perception of learning.


Telling Tales – discovering the authentic story of Leeds
Leeds is a city full of fantastic contradictions, creative and brilliant conversations on and offline and real complexity. Guest blogger Nick Copland asks how do we make it work better and create a dynamic dialogue?
A tale of our city Leeds
Leeds is a wonderful place of surprises, hidden gems and well-kept secrets… But how can we publicise mystery, how can we celebrate the unexpected? Photograph: John Baron/
A very clever Russian called Mikhail Bakhtin once described the complex language of the novel as 'heteroglossia'.
Put simply, heteroglossia is a dynamic dialogue of'social dialects, characteristic group behaviour, professional jargons, generic languages, languages of generations and age groups,languages of the authorities, of various circles and of passing fashions'.
His concept provides a valuable insight into the novel as our most, populous, sophisticated and complex literary forms – and one that presents a fascinating approach to the representation of a city like Leeds.
If, perhaps, an epic poem is like a country house or a bridge, and a short story is like a provincial town then a city, with its astonishing array of cultures, functions, qualities and characters, is like a novel. Like a novel, a city is multifaceted, multi-voiced, and almost impossible to sum up. Like a novel, a city only releases its reality - its truth - through interaction, conversation and dialogue.
Destination marketing
Until recently 'destination marketing' - the promotion of various places for people to visit - had operated in precisely the opposite way, taking the complexity of a place and reducing it to a singular set of simple,'sticky' ideas – so Florida is 'The Sunshine State', New York is 'The Big Apple', Chicago is the Windy City' etc. And back when the media was limited to print, film, radio and TV, this was a useful shorthand.
Marketing wonks still use this approach. Recently Malmesbury branded themselves the 'philosophy town' with the aim of celebrating 17th century thinker Thomas Hobbes, who was born there. They are hosting a two-day festival, and a long-distance walk to the birthplace of John Locke, and have heady hopes to 'transform a building into an "ideas place", containing bookshops and a coffee house'.
This probably works for Malmesbury – it generates nice colour supplement column inches, gives the town a focal point for promotion, and shows initiative – but it works because it is a town, not a city. Malmesbury is compact, with a finite number of stakeholders, and little else to say for itself (sorry Malmesbury). A brief scan of the first page of a Google search for Malmesbury brings up only the official voices of tourist and council sites, local attractions etc.
Even in our modern world of Twitter, Blogs, peer reviews, Facebook, mobile technology and smart phones, this single-concept approach can work for a town. But cities resist such a reduction to a single idea, and that resistance often comes from within, as a result of their many competing voices, official and unofficial conversations.
Leeds is full of fantastic contradictions and creative conversations
Leeds is a city full of fantastic contradictions, creative conversations and real complexity. And unlike many other similar large cities, has no obvious unified notion - no USP - no tower, no Royal Mile, no unrivalled football team/musical heritage etc.
No, Leeds is rather a wonderful place of surprises, hidden gems and well-kept secrets… But how can you publicise mystery, how can we celebrate the unexpected?
Well, we already have an amazing array of voices – as Leeds and as the heart of Yorkshire. Sites like Guardian Leeds, My Life in Leeds and The Culture Vulture, and blogs like Hebe Media present opinions, information and generate discussion from multiple authors, bloggers, reviewers and critics.
independent leeds screenshot
A screenshot of Independent Fullstop Public Domain
Keeping track of our many independent events is easy with the rather
clever interactive map of Independent.Fullstop, while the mysterious and delightful can be found at Exploring Leeds blog and Secret Leeds, and there are feisty forums like Leeds Forum and the inimitable Leeds Music Scene.
There is even site-specific storytelling with Leeds Stories where you can scan QRcodes at locations around the city and access geographically relevant stories… and Leeds also features in some great cultural collaborations like Yorkshire Telly.
There are, of course, the official voices too - Marketing Leeds, Visit Leeds, the many attractions and communities, government, local and national…
And it's not just online - Culture Vulture hosts face-to-face Cultural Conversations, there is TEDxLeeds and the Leeds chapter of the Yorkshire Mafia regularly attracts hundreds of business people, and Leeds regularly benefits from events like Bettakultcha and TestSpaceKitchen… not to mention Geek-Ups, Tweet-Ups and plain old meet-ups…
These are all brilliant, distinctive, unique voices, that engage, entertain, inform and converse with the people who live and work in Leeds, as well as visit it.
How do we make it work better?
This is brilliant news. Leeds is in an enviable position. We have quality and quantity. But how can we make it better? And how can we make it work harder for us?
Well, as my Russian friend says – it is not just the quantity, or the quality of the voices, but the 'dynamic dialogue' they create by interacting.
According to Bakhtin, great novels reflect reality by setting their many voices in dialogue.
It is only through the interaction of distinct language genres that a novel breathes life and creates emotion, and draws the reader into its wonderful complexity. And perhaps that is what Leeds must do now too.
ExpLeeds is not trying to replicate or replace any of the voices already speaking out, merely to make a space – online and elsewhere - where these distinct speakers can interact, collaborate and co-operate – and engage with each other without compromise.
Check out the next ExpLeeds event here.
Guest blogger Nick Copland helps businesses create values and vision statements that inspire and inform their people, and drive their brand forward.


View data values in DataTips in the code editor
DataTips provide a convenient way to view information about variables in your program during debugging. DataTips work only in break mode and only with variables that are in the current scope of execution.
To display a DataTip
 1. Set a breakpoint and start debugging (press F5).
 2. Where paused in the debugger, place the mouse pointer over any variable in the current scope.
 A DataTip appears.
 3. The DataTip disappears when you remove the mouse pointer. To pin the DataTip so that it remains open, click the Pin to source icon, or right-click on a variable, then click Pin to source.
 Pinning a Data Tip
 Note
 Data tips are always evaluated in the context where execution is suspended, and not where the cursor is hovering. If you hover over a variable in another function with the same name as a variable that is in the current context, the value of the variable in the other function is displayed as the value of the variable in the current context.
To unpin a DataTip and make it float
 - In a pinned DataTip, click the Unpin from source icon.
 The pin icon changes to the unpinned position. The DataTip now floats above any open windows. The floating DataTip closes when the debugging session ends.
To repin a floating DataTip
 - In a DataTip, click the pin icon.
 The pin icon changes to the pinned position. If the DataTip is outside a source window, the pin icon is disabled and the DataTip cannot be pinned.
To close a DataTip
 - Place the mouse pointer over a DataTip, and then click the Close icon.
To close all DataTips
 - On the Debug menu, click Clear All DataTips.
To close all DataTips for a specific file
 - On the Debug menu, click Clear All DataTips Pinned to File.
Expand and edit information
You can use DataTips to expand an array, a structure, or an object to view its members. You can also edit the value of a variable from a DataTip.
To expand a variable to see its elements
 - In a DataTip, put the mouse pointer over the + sign that comes before the variable name.
 The variable expands to show its elements in tree form.
 View a Data Tip
 When the variable is expanded, you can use the arrow keys on your keyboard to move up and down. Alternatively, you can use the mouse.
To edit the value of a variable using a DataTip
 1. In a DataTip, click the value. This is disabled for read-only values.
 2. Type a new value and press ENTER.
Making a DataTip Transparent
If you want to see the code that is behind a DataTip, you can make the DataTip temporarily transparent. This does not apply to DataTips that are pinned or floating.
To make a DataTip transparent
 - In a DataTip, press CTRL.
 The DataTip will remain transparent as long as you hold down the CTRL key.
Visualize complex data types
If a magnifying glass icon appears next to a variable name in a DataTip, one or more visualizers, such as the string visualizers, are available for variables of that data type. You can use a visualizer to display the information in a more meaningful, usually graphical, manner.
To view the contents of a variable using a visualizer
 - Click the magnifying glass icon VisualizerIcon to select the default visualizer for the data type.
 -or-
 Click the pop-up arrow next to the visualizer to select from a list of appropriate visualizers for the data type.
 A visualizer displays the information.
Add information to a Watch window
If you want to continue to watch a variable in a list view, you can add the variable to the Watch window from a DataTip.
To add a variable to the Watch window
 - Right-click a DataTip, and then click Add Watch.
 The variable is added to the Watch window. If you are using an edition that supports multiple Watch windows, the variable is added to Watch 1.
Import and export DataTips
You can export DataTips to an XML file, which can be shared with a colleague or edited using a text editor.
To Export DataTips
 1. On the Debug menu, click Export DataTips.
 The Export DataTips dialog box appears.
 2. Use standard file techniques to navigate to the location where you want to save the XML file, type a name for the file in the File name box, and then click OK.
To Import DataTips
 1. On the Debug menu, click Import DataTips.
 The Import DataTips dialog box appears.
 2. Use the dialog box to find the XML file that you want to open and click OK.
See Also
Viewing Data in the Debugger
Watch and QuickWatch Windows
Create Custom Visualizers


26
\$\begingroup\$
In math, one way to figure out what the type of a given relation (linear, quadratic, etc) is to calculate the differences. To do so you take a list of y values for which the gap between the correspondent x values is the same, and subtract each one from the number above it, creating a list of numbers one shorter then the previous list. If the resultant list is completely composed of identical numbers, then the relation has a difference of 1 (it is linear). If they are not identical, then you repeat the process on the new list. If they are now identical, the relation has a difference of 2 (it is quadratic). If they are not identical, you simply continue this process until they are. For example, if you have the list of y values [1,6,15,28,45,66] for incrementally increasing x values:
First Differences:
1
6 1-6 =-5
15 6-15 =-9
28 15-28=-13
45 28-45=-17
66 45-66=-21
Second differences:
-5
-9 -5+9 =4
-13 -9+13 =4
-17 -13+17=4
-21 -17+21=4
As these results are identical, this relation has a difference of 2
Your Task
Write a program or function that, when given an array of integers as input, returns the difference of the relation described by the array, as explained above.
Input
An array of integers, which may be of any length>1.
Output
An integer representing the difference of the relation described by the input.
Test Cases
Input => Output
[1,2,3,4,5,6,7,8,9,10] => 1
[1,4,9,16,25,36] => 2
[1,2,1] => 2 (when there is only one value left, all values are automatically identical, so the largest difference an array can have is equal to the length of the array-1)
"Hello World" => undefined behavior (invalid input)
[1,1,1,1,1,1,1,1,1] => 0 (all elements are already identical)
[1, 3, 9, 26, 66, 150, 313, 610] => 6
Scoring
This is , lowest score in bytes in each language wins for that language. Lowest score overall gets the green checkmark.
\$\endgroup\$
9
 - \$\begingroup\$ Can the input be "invalid" as in, if the input is to NOT conform to the provided spec, should we error? Provide -1 as the output? \$\endgroup\$ Sep 11, 2017 at 23:29
 - \$\begingroup\$ Behavior is undefined for invalid input (I don't care what your code does) \$\endgroup\$
 – Gryphon
 Sep 11, 2017 at 23:30
 - \$\begingroup\$ Shouldn't [1,2,1] give 2? [1,2,1] -> [1,-1] -> [-2] \$\endgroup\$
 – hyper-neutrino
 Sep 11, 2017 at 23:35
 - \$\begingroup\$ @HyperNeutrino, yep, sorry. I had a brain-fart there \$\endgroup\$
 – Gryphon
 Sep 11, 2017 at 23:37
 - \$\begingroup\$ Add this test case [1,3,9,26,66,150,313,610] -> 6 if you like \$\endgroup\$
 – ZaMoC
 Sep 12, 2017 at 0:10
30 Answers 30
10
\$\begingroup\$
Husk, 6 bytes
Thanks Leo for letting me use his version that works for [1,1,1,1,1,1]
←VE¡Ẋ-
Try it online!
Explanation
 ¡ Repeatedly apply function, collecting results in a list
 Ẋ- Differences
 VE Get the index of the first place in the list where all the elements are equal
← Decrement
\$\endgroup\$
4
 - 2
 \$\begingroup\$ Whenever someone said Husk is the new Jelly, they were pretty dang right. >_< \$\endgroup\$
 – Adalynn
 Sep 11, 2017 at 23:50
 - \$\begingroup\$ Damn, I was gonna post this. Good job though, +1! \$\endgroup\$
 – Leo
 Sep 11, 2017 at 23:51
 - \$\begingroup\$ @Leo, test case I didn't see [1,1,1,1], can I use yours? \$\endgroup\$
 – H.PWiz
 Sep 11, 2017 at 23:57
 - \$\begingroup\$ @H.PWiz sure, go on! \$\endgroup\$
 – Leo
 Sep 11, 2017 at 23:58
8
\$\begingroup\$
JavaScript (ES6), 47 bytes
f=a=>-a.every(x=>i=!x)||1+f(a.map(n=>n-a[++i]))
Test cases
f=a=>-a.every(x=>i=!x)||1+f(a.map(n=>n-a[++i]))
console.log(f([1,2,3,4,5,6,7,8,9,10])) // 1
console.log(f([1,4,9,16,25,36])) // 2
console.log(f([1,2,1])) // 2
console.log(f([1,1,1,1,1,1,1,1,1])) // 0
console.log(f([1,3,9,26,66,150,313,610])) // 6
\$\endgroup\$
7
\$\begingroup\$
MATL, 8 bytes
'dta}x@q
Try it online! Or verify all test cases.
Explanation
This compuntes consecutive differences iteratively until the result is all zeros or empty. The output is the required number of iterations minus 1.
' % Do... while
 d % Consecutive diffferences. Takes input (implicitly) the first time
 t % Duplicate
 a % True if any element is nonzero. This is the loop condition
} % Finally (execute before exiting the loop)
 x % Delete. This removes the array of all zeros
 @ % Push iteration index
 q % Subtract 1. Implicitly display
 % End (implicit). Proceed with next iteration if top of the stack is true
\$\endgroup\$
7
\$\begingroup\$
R, 50 44 bytes
function(l){while(any(l<-diff(l)))F=F+1
F*1}
Try it online!
Takes a diff of l, sets it to l, and checks if the result contains any nonzero values. If it does, increment F (initialized as FALSE implicitly), and returns F*1 to convert FALSE to 0 in the event that all of l is identical already.
\$\endgroup\$
1
5
\$\begingroup\$
Mathematica, 49 bytes
(s=#;t=0;While[!SameQ@@s,s=Differences@s;t++];t)&
thanx @alephalpa for -6 bytes and @hftf -1 byte
and here is another approach from @hftf
Mathematica, 49 bytes
Length@NestWhileList[Differences,#,!SameQ@@#&]-1&
\$\endgroup\$
2
 - \$\begingroup\$ (s=#;t=0;While[UnsameQ@@s,s=Differences@s;t++];t)& \$\endgroup\$
 – alephalpha
 Sep 12, 2017 at 3:50
 - 1
 \$\begingroup\$ UnsameQ[1,2,1] is False; !SameQ[1,2,1] is True. I don't think the manual loop saves characters either: Length@NestWhileList[Differences,#,!SameQ@@#&]-1& is already the same length as yours after replacing UnsameQ with !SameQ. \$\endgroup\$
 – hftf
 Sep 12, 2017 at 7:45
4
\$\begingroup\$
Jelly, 7 bytes
-Iß$E?'
Try it online!
Explanation
-Iß$E?' Input: array A
 ? If
 E All elements are equal
 Then
- Constant -1
 Else
 $ Monadic chain
 I Increments
 ß Recurse
 ' Increment
\$\endgroup\$
1
 - \$\begingroup\$ Non-recursive alternative: IÐĿE€ċ0 \$\endgroup\$ Sep 12, 2017 at 10:05
4
\$\begingroup\$
Japt, 10 7 bytes
è@=ä-)d
Try it online!
Relies on the fact that the result is guaranteed to be within the


text:
As Opill—the first over-the-counter daily oral contraceptive pill in the United States—is expected to be available for purchase in early 2024, new research conducted by KFF examines barriers to its accessibility for consumers and challenges in providing insurance coverage for it.
Based on interviews with nearly 80 representatives from private insurance plans, state Medicaid programs, chain pharmacies, and other key groups, the report provides a deeper view into the operational challenges in expanding access to coverage of over-the-counter contraceptive pills.
Although the new over-the-counter birth control pill could broaden access to contraceptive options across the country, KFF interviews with experts uncovered that consumers are likely to face some hurdles if they seek to have their plan cover the costs. According to the interviewees, the extent to which Opill can expand contraceptive options will depend on several factors, including clear state and federal policies and protocols, insurance coverage, pharmacy engagement, pharmacy stocking and signage, cost, and broad-scale public awareness and education.
Perrigo, Opill's manufacturer, has yet to announce the price of the contraceptive, which will have implications for affordability, particularly if Opill is not covered by insurance or Medicaid.
While states could require coverage of Opill in fully insured health plans, only a federal requirement would reach self-insured plans, which cover most people with employer-sponsored health coverage. A federal requirement would also apply to states that do not have existing over-the-counter contraceptive coverage requirements. Under the Affordable Care Act, health plans are generally required to cover a wide range of preventive services with no patient co-pays, including contraceptives with a prescription.
In states where over-the-counter contraceptive methods are covered without a prescription by Medicaid or private plans, consumers will generally need to get Opill at the pharmacy counter for their plan to cover it. In some private health plans, consumers may be able to pay for Opill up front and then seek reimbursement from the plan, but that could be financially and administratively burdensome for consumers and is reportedly rarely used for other over-the-counter drugs available without a prescription.
Insurance Coverage of OTC Oral Contraceptives: Lessons from Field is based on interviews conducted from January to August 2023, with nearly 80 experts and key players such as pharmacists, health plans, and state Medicaid officials involved in the coverage and provision of over-the-counter contraception in IL, NJ, NM, NY, OR, UT, and WA. States were selected based on whether they had implemented insurance coverage of over-the-counter contraception without a prescription or expanded the scope of pharmacist practice.
Join us tomorrow, September 15th, at 12:30pm ET for a discussion of insurance coverage of over-the-counter birth control pills, which will include a presentation of the discoveries in this report.
Also, learn more about over-the-counter contraceptive pills in the brief Over-the-Counter Oral Contraceptive Pills, an overview of over-the-counter oral contraceptives and laws and policies related to insurance coverage.


To fly or to drive? Energy intensity data provides some insight
by Lisa Timmerman 2/3/2014 9:01 AM
Ever wondered whether it's more fuel efficient to fly or drive over long distances? The answer isn't always straightforward and involves a number of factors, as well as personal choices and preferences. A recent article from The Atlantic offers one explanation based on data recently collected by University of Michigan professor, Michael Sivak. To compare travel modes, the data focuses on energy intensity, or the total amount of energy it takes to move one person one mile. Commercial aviation has seen tremendous energy efficiency improvements over the last 40 years, particularly compared to passenger vehicles which have, on the whole, become less fuel efficient. Better fuel efficiency is certainly a part of the equation, but planes also now fit more passengers and rarely depart with empty seats. The trend is reflected here at PDX. In 2013, PDX had a record-breaking travel year with 15 million passengers. The number of travelers increased 4.4 percent over 2012. At the same time, flight operations - the number of planes coming and going from the airport - remained almost flat with only a 0.1 percent increase.
Which travel mode is right for you? Read The Atlantic's article and decide for yourself.


text:
Image ©Henk Schulp
Tetmemorus brebissonii. Note the cylindric cell shape and the apical invagination which are characteristic of the genus Tetmemorus.
Cell dimensions (L x B): ca 130 x 25 µm.
Just like in Euastrum oblongum (our desmid of the last month) cells of the genus Tetmemorus are marked by a deep, closed apical invagination. In contrast to the genus Euastrum, however, Tetmemorus cells are not flattened but cylindric or fusiform (so in transversal section almost circular, not elliptic-rhomboid as in Euastrum). World-wide, the genus Tetmemorus numbers only a few species. T. brebissonii differs from the other species in that the cell wall pores are arranged in longitudinal series. In the Netherlands, T. brebissonii in its occurrence is strictly confined to acidic, oligotrophic bog pools.
Image © Henk Schulp
Empty cell of Tetmemorus brebissonii showing the longitudinal series of cell wall pores characteristic of this species.


SecondsToDate procedure). The fields in the date-time record now contain the values that represent the 300th day of 1994. Listing 4-6 shows an application-defined procedure that calculates the 300th day of the Gregorian calendar year using a date-time record.
Listing 4-6 Calculating the 300th day of the year
PROCEDURE MyCalculate300Day;
VAR
 myDateTimeRec: DateTimeRec;
 mySeconds: LongInt;
BEGIN
 WITH myDateTimeRec DO
 BEGIN
 year := 1994;
 month := 1;
 day := 300;
 hour := 0;
 minute := 0;
 second := 0;
 dayOfWeek := 1;
 END;
 DateToSeconds (myDateTimeRec, mySeconds);
 SecondsToDate (mySeconds, myDateTimeRec);
END;
The DateToSeconds procedure converts the date and time to the number of seconds elapsed since midnight, January 1, 1904, and the SecondsToDate procedure converts the number of seconds back to a date and time. After the conversions, the values in the year, month, day, and dayOfWeek fields of the myDateTimeRec record represent the year, month, day of the month, and day of the week for the 300th day of 1994. If the values in the hour, minute, and second fields do not exceed the maximum value allowed for each field, the values remain the same after the conversions (in this example, the time is exactly 12:00 A.M.).
Similarly, you can use a long date-time record and the LongDateToSeconds and LongSecondsToDate procedures to compute the day of the week corresponding to a given date. Listing 4-7 shows an application-defined procedure that computes and retrieves the name of the day for July 4, 1776. Note that because the year is prior to 1904, it is necessary to use a long date-time record.
Listing 4-7 Computing the day of the week
PROCEDURE DoDayCalc;
VAR
 myLongDateRec: LongDateRec;
 myLongSeconds: LongDateTime;
 myDayOfWeek: Integer;
BEGIN
 WITH myLongDateRec DO
 BEGIN
 era := 0; /*initialize era field*/
 year := 1776;
 month := 7;
 day := 4;
 hour := 0; /*initialize hour field*/
 minute := 0; /*initialize minute field*/
 second := 0; /*initialize second field*/
 dayOfWeek := 1; /*initialize dayOfWeek field*/
 dayOfYear := 1; /*initialize dayOfYear field*/
 weekOfYear := 1; /*initialize weekOfYear field*/
 pm := 1; /*initialize pm field*/
 END;
 LongDateToSeconds (myLongDateRec, myLongSeconds);
 LongSecondsToDate (myLongSeconds, myLongDateRec);
 myDayOfWeek := myLongDateRec.dayOfWeek;
END;
The LongDateToSeconds procedure converts the date and time to the number of seconds, and the LongSecondsToDate procedure converts the number of seconds back to a date and time. After the conversions, the value in the dayOfWeek field of the myLongDateRec record represent the day of the week corresponding to July 4, 1776. If the values in the hour, minute, and second fields do not exceed the maximum value allowed for each field, the values remain the same after the conversions (in this example, the time is exactly 12:00 A.M.). The values in the dayOfYear, weekOfYear, and pm fields correspond to the date July 4, 1776 and the time 12:00 A.M.
Working With Different Calendar Systems
The additional fields and wider ranges allowed by the long date-time record can help you to do calculations and conversions for different calendar systems. For example, the date January 1, 1993 in the Gregorian calendar year converts to 7 Rajab 1413 in the Arabic Civil Lunar Calendar (CLC) and 4 Tevet 5753 in the Jewish calendar; the years 1413 and 5753 are outside of the year field's range in the date-time record.
Note
Depending on the country, the change from the Julian calendar to the Gregorian calendar occurred in different years. In western European countries, the change occurred in 1582; in Russia, the calendar changed in 1918. In these countries, dates before the calendar change should use the Julian calendar for conversion. (The Julian calendar differs from the Gregorian calendar by three days every four centuries.)
In addition, the beginning of the year for one calendar system falls on different dates in other calendar systems. Table 4-1 shows the equivalent dates for the first day of the calendar year in the Gregorian, Arabic CLC, and Jewish calendars.
Table 4-1 Equivalent dates in the Gregorian, Arabic CLC, and Jewish calendars
Gregorian calendarArabic CLCJewish calendar
January 1, 19937 Rajab 14134 Tevet 5753
June 20, 19931 Muharram 14141 Tammuz 5753
September 16, 199329 Rabi I 14141 Tishri 5754
Converting from one calendar system to another produces different values in the dayOfYear and weekOfYear fields of a long date-time record. For example, assuming all the data for the date 1 Muharram 1414 is correctly put into a long date-time record, the dayOfYear field value is 1, and the weekOfYear value is also 1. Converting this date to the Gregorian calendar results in June 20, 1993. The dayOfYear field value is then 171, and the weekOfYear value is 26. Table 4-2 shows these values.
Table 4-2 Values for the dayOfYear and weekOfYear fields for the date 1 Muharram 1414 and equivalent values in the Gregorian calendar
LongDateRec fieldArabic CLCGregorian calendar
dayOfYear1171
weekOfYear126
Note
Language-specific information, such as the name of the day, name of the month, and so on, are stored in the international resources. The international resources are provided by a script system, and the information in these resources varies according to the language associated with the script system.
Table 4-3 shows how some of the fields in the long date-time record are set to show the first day of the year 1414 in the Arabic CLC and the equivalent dates in the Gregorian and Jewish calendars.
Table 4-3 Comparison of settings in fields of the long date-time record for Arabic CLC, Gregorian, and Jewish calendars
Field of a long date-time recordArabic CLC calendarGregorian calendarJewish calendar
era000
year141319935753
month16
day121
...
dayOfWeek423
dayOfYear1172
weekOfYear126
Note
The Arabic script system supports two lunar calendars: the astronomical lunar calendar (ALC) and the civil lunar calendar (CLC). The Macintosh user may choose either of the Arabic calendars or the Gregorian calendar by clicking buttons in the Arabic Calendar control panel.
The Hebrew script system supports the Jewish calendar besides the Gregorian calendar.
For more information on the different calendar systems supported by localized versions of the Macintosh system software, see Guide to Macintosh Software Localization.
For calendars that have more than seven day names and 12 month names (for example, the Jewish calendar sometimes has 13 months), you use the 'itl1' resource, defined by the Itl1ExtRec data type. To get more information on the format of the 'itl1' resource, see the appendix "International Resources" in Inside Macintosh: Text.
Handling Geographic Location and Time-Zone Data
Geographic locations and time zones can affect date and time information. For example, time-zone information can be used to derive the Greenwich mean time (GMT) at which a document or mail message was created. With this information, when the document is received by an application or user in a different time zone, the creation date and time are correct. Otherwise, documents can appear to be created after they are read (for example, a user creates a message in Tokyo on Tuesday and sends it to San Francisco, where it is received and read on Monday). Geographic location information can also be used by applications that require it.
The geographic location and time-zone information for a particular Macintosh computers are stored in parameter RAM. You can work with this information through the ReadLocation and WriteLocation procedures. These procedures use the geographic location record (of date type MachineLocation) to help you read and store latitude, longitude, daylight saving time (DST), and GMT values.
TYPE MachineLocation = {geographic location record}
RECORD
 latitude: Fract; {latitude}
 longitude: Fract; {longitude}
 CASE Integer OF
 0:
 (dlsDelta: SignedByte); {daylight saving time}
 1:
 (gmtDelta: LongInt); {Greenwich mean time}
END;
The daylight savings time value is a signed byte value that you can use to specify the offset for the hour field--whether to add 1 hour, subtract 1 hour, or make no change at all.
The Greenwich mean time value is in seconds east of GMT. For example, San Francisco is at -28,800 seconds (8 hours * 3,600 seconds per hour) east of GMT.
If the geographic location record has never been set, all


Definitions for Ministryˈmɪn ə stri
This page provides all possible meanings and translations of the word Ministry
Princeton's WordNet
 1. ministry(noun)
 religious ministers collectively (especially Presbyterian)
 2. ministry(noun)
 building where the business of a government department is transacted
 3. ministry(noun)
 a government department under the direction of a minister
 4. ministry(noun)
 the work of a minister of religion
 "he is studying for the ministry"
 1. ministry(Noun)
 Government department, at the administrative level normally headed by a minister (or equivalent rank, e.g. secretary of state), who holds it as portfolio, especially in a constitutional monarchy
 She works for the ministry of finance.
 2. ministry(Noun)
 The complete body of government ministers (whether or not they are in cabinet) under the leadership of a head of government (such as a prime minister)
 The premier offered his last ministry's resignation to the monarch, and is asked the form a new one in accordance with the election results
 3. ministry(Noun)
 A ministration
 4. ministry(Noun)
 The active practice and education of the minister of a particular religion or faith.
Webster Dictionary
 1. Ministry(noun)
 the act of ministering; ministration; service
 2. Ministry(noun)
 agency; instrumentality
 3. Ministry(noun)
 the office, duties, or functions of a minister, servant, or agent; ecclesiastical, executive, or ambassadorial function or profession
 4. Ministry(noun)
 the body of ministers of state; also, the clergy, as a body
 5. Ministry(noun)
 administration; rule; term in power; as, the ministry of Pitt
 6. Origin: [L. ministerium. See Minister, n., and cf. Mystery a trade.]
 1. Ministry
 Ministry is an American industrial metal band founded by lead singer Al Jourgensen in 1981. Originally a new wave - synthpop outfit, Ministry changed its style to industrial metal in the late 1980s. Ministry found mainstream success in the early 1990s with its most successful album Psalm 69: The Way to Succeed and the Way to Suck Eggs and touring as part of the Lollapalooza festival. After 27 years of performing, Jourgensen decided to end the band in 2008, and since then stated that a reunion would never happen. However, on August 7, 2011, a reunion was announced, when Ministry confirmed that they will play one of their first shows in 4 years at the Wacken Open Air festival in August 2012. Ministry released a new album, titled Relapse, on March 23, 2012, which was followed by a world tour.
British National Corpus
 1. Spoken Corpus Frequency
 Rank popularity for the word 'Ministry' in Spoken Corpus Frequency: #2063
 2. Written Corpus Frequency
 Rank popularity for the word 'Ministry' in Written Corpus Frequency: #3518
 3. Nouns Frequency
 Rank popularity for the word 'Ministry' in Nouns Frequency: #845
Translations for Ministry
From our Multilingual Translation Dictionary
Get even more translations for Ministry »
Find a translation for the Ministry definition in other languages:
Select another language:
Discuss these Ministry definitions with the community:
Word of the Day
Please enter your email address:
Use the citation below to add this definition to your bibliography:
"Ministry." STANDS4 LLC, 2015. Web. 2 Sep. 2015. <>.
Are we missing a good definition for Ministry? Don't keep it to yourself...
Nearby & related entries:
Alternative searches for Ministry:
Thanks for your vote! We truly appreciate your support.


2021 1.3 - Projection Mapping for In-Situ Surgery Planning by the Example of DIEP Flap Breast Reconstruction/ClipID:37927 previous clip next clip
Recording date 2021-11-12
* Automated closed captions generated with Whisper Open AI
Via
Free
Language
English
Organisational Unit
Lehrstuhl für Informatik 9 (Graphische Datenverarbeitung)
Producer
Friedrich-Alexander-Universität Erlangen-Nürnberg
Format
lecture
Nowadays, many surgical procedures require preoperative planning, mostly relying on data from 3D imaging techniques like computed tomography or magnetic resonance imaging. However, preoperative assessment of this data is carried out on the PC (using classical CT/MR viewing software) and not on the patient's body itself. Therefore, surgeons need to transfer both their overall understanding of the patient's individual anatomy and also specific markers and labels for important points from
the PC to the patient only with the help of imaginative power or approximative measurement. In order to close the gap between preoperative planning on the PC and surgery on the patient, we propose a system to directly project preoperative knowledge to the body surface by projection mapping. As a result, we are able to display both assigned labels and a volumetric and view-dependent view of the 3D data in-situ. Furthermore, we offer a method to interactively navigate through the data and add 3D markers directly in the projected volumetric view. We demonstrate the benefits of our approach using DIEP flap breast reconstruction as an example. By means of a small pilot study, we show that our method outperforms standard surgical planning in accuracy and can easily be understood and utilized even by persons without any medical knowledge.
More clips in this category "Technische Fakultät"
2023-06-01
IdM-login
protected
2023-06-01
Studon
protected


text:
Educational institutions have high demand for limited periods of time. The requirement for heat and domestic hot water is critical due to the nature of their occupancy. The requirement for economy of operation and ecological sensitivity is very important.
Gasmaster Industries high efficiency, condensing boilers and hot water heaters have an extremely fast response time to demand; the supply of hot water is almost instantaneous with even our largest boilers. The economies (up to 99.8% efficiency) of operation are not surpassed and the materials of construction (stainless steel) have unparalleled longevity.


Take the 2-minute tour ×
Assume that a 100 pW He-Ne single-mode last emits light at 633 nm in a TEM00 Gaussian beam.
(a)What is the mean number of photons crossing a circle of radius equal to the waist radius of the beam $W_0$ in a time T=100 ns?
(b) What is the root-mean-square value of the number of photon counts in (a)?
(c) What is the probability that no photons are counted in (a)?
Here is my solution. Could somebody please double check it?
A. $h=6.63 \times 10^{-34}$
Photon flux = $(100\times10^{-12})/((h)(4.74\times10^{14}))=3.18\times10^{8}$
Mean number of photons = $3.18\times10^{8} *(100\times10^{-9})=31.8$
B. $\sqrt{((31.8)^2/(100\times 10^{-9})}$
C. probability = 1-.86 =.14
share|improve this question
closed as too localized by Qmechanic, David Z Nov 14 '12 at 6:33
Hi John - generally we discourage questions that just ask for someone to check your work. Once you have identified the specific concept that you're not sure about, that's the point at which it's appropriate to ask a question here. – David Z Nov 14 '12 at 6:33


text:
So there does exist a document already on this topic, Getting OCLC numbers into your vendor records using MarcEdit but I found the instructions difficult to refer to. I ended up writing my own version with the added instructions on creating a set of MARC records specifically for this purpose. After doing this sort of thing again today, I finally decided to share them.
Once you do this once or twice, you'll get a hang of it, and it's actually a fairly simple process, but I always need a reference in case I forget things.
Create a Mini MARC set
The example in the document I referred to talks about merging two existing sets of records. The records I work with typically have the control number in a spreadsheet with some of the item's information (title, author, ISBN, etc.), so the first step is to actually create a set of MARC records with the minimal information needed to merge the control numbers into the main set of MARC records.
To create the mini set of MARC with control numbers, you will need a match point. In the vendor records I've been working with, the match point is the ISBN (020). MarcEdit also gives you 010, 022, and 035 as default options, and you can customize it to a certain extent.
- Do your work with data in a spreadsheet and make sure you have at a minimum your control number in a column, and match point in a second column (order does not matter). I suggest title as well simply for reference.
- Save as Tab Delimited Text (.txt)
- In MarcEdit, choose Delimited Text Translator (also under Add-ins).
- Source file is your tab delimited.txt
- Output to a filename of your choice
- Map each field to its appropriate field. For example,
- 020$a for ISBN
- 035$a for control number column
- 245$a for title
- Run it.
You should now have your mini set of MARC records with minimal information for merging purposes. Do take a quick look over to check that everything is there.
Merge into MARC record set
You should now have two sets of records, your mini set and your main set that you want to add control numbers to.
- Choose Tools → Merge Records
- For Source File, select your main MARC records set
- For Merge File, select the mini MARC set you created
- Set your output file to your desired location and filename
- Choose record identifier e.g. 020 to match on ISBN
- Click on Next
- Choose Merge Selected Fields
- Select the field fields you want to import e.g. 035 (control number)
- Click on Next
Review the output to make sure they were merged properly, and that's it.


text:
Posted on 15 October 2012
Early detection of lung cancer has been shown to save lives, but available methods for screening at-risk people are either too costly or involve invasive procedures. The latest findings, published today in the US journal Proceedings of the National Academy of Sciences, mean that a simple blood test could now be developed.
Dr Dawn Coverley, who is based at the University's Department of Biology and is funded by Yorkshire Cancer Research, has found that an altered form of a protein called Ciz1 is present in lung cancers, even when they are at a very early stage.
She said: "The Ciz1 protein is involved in cell growth and division. Altered forms of this protein are present in cancer cells, and one specific form is prevalent in lung cancers. Surprisingly, this variant-Ciz1 somehow gets into the blood stream and once there appears to be very stable. This means that by looking for variant Ciz1 in the blood we can pick out people who have small tumours in their lungs, without the need to take a biopsy or undergo surgery.
We think that the test will be especially powerful when combined with X-ray or CT imaging, and will offer doctors an alternative way to test whether an abnormal growth is cancerous
Dr Dawn Coverley
"We think that the test will be especially powerful when combined with X-ray or CT imaging, and will offer doctors an alternative way to test whether an abnormal growth is cancerous. For the patient, this means that many could avoid invasive diagnostic procedures altogether."
Kathryn Scott, Head of Research Funding for Yorkshire Cancer Research, said: "This research is related to a cancer which is prevalent in Yorkshire towns and cities. Lung cancer is very difficult to treat and has a low survival rate, but it is traditionally underfunded in the UK. Yorkshire Cancer Research is strongly committed to funding projects such as these, which have enormous potential patient benefit."
Cizzle Biotech, a spin out company from the University of York that is funded primarily by Yorkshire Cancer Research, the White Rose Seed Fund and Finance Yorkshire, is now translating the research into a test suitable for use in hospital diagnostic laboratories.


text:
A user has multiple rows of data for a custom MDF in Manage Data. When a document is generated, data from the first row is getting captured. The requirement is to have data from all the rows to the generated document.
Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.
SuccessFactors Employee Central: Document Generation
Reproducing the Issue
A custom MDF object "Tuituion Reimbursement" has a child object "Classes". In the example, the user has three entries for Classes:
The template is configured as following:
The generated document contains data from only the first row:
Note that data from the second and third row are not in the generated document.
Incorrect mapping configuration.
In the template the table has placeholders in multiple rows. Hence, they are considered static which will fetch only the first value available.
For the placeholders to fetch multiple values in a table, all the placeholders should be in the same row. You can keep the first row for header and the second row will contain its respective placeholders. This would fetch the multiple values if present.
The template should look like:
Now, the generated document is:
Dynamic, KBA, LOD-SF-EC-DOC, Document Generation, Problem


text:
A course format refers to the layout of a course. The course format can be selected in Administration > Course administration > Edit settings.
An administrator can enable, disable or delete course formats for courses in Administration > Site administration > Plugins > Course formats > Manage course formats. They can also change the order in which available course formats are displayed to teachers in the course settings.
- 1 Standard course formats
- 2 Contributed Course Formats
- 3 See also
Standard course formats
- TIP: If you want all your students to work on the same materials at the same time, this would be a good format to choose.
- NOTE: Make sure your course start date is correct. If it is not your weeks will have the wrong date on it. This is especially important if you are restoring a course to use with a new section of students.
TIP: This is great to use if your course is objective based and each objective may take different amounts of time to complete. An example of this would be scaffolding where the students are building upon the knowledge from earlier topics.
"Show only one section"
With the Weekly, Topics and any contributed format that implements the functionalty, it is possible via Administration > Course administration > Edit settings to "show one section per page". Here is a course with eight topics, with the third one currently shown. The links left and right lead to topics two and four:
- The course home page shows just the section names and any text in the section description along with activity and resource numbers, with the names being click-able. This is what you see the first time you access the course. Once you have selected a topic by clicking on its name, you then see one section at a time.
- If editing is ON, then the Main course page will display all the content in all the sections.
- There is a 'Jump to...' menu at the bottom of each single section page
This format is oriented around one main forum,the social forum, which appears listed on the main page. It is useful for situations that are more free form. They may not even be courses. The Moodle Lounge is an example of a social format course.
When selecting the social format, it is possible to specify how many discussions you wish to display on the course page:
The social forum can be edited by clicking the 'Update this forum' button on the social forum page. The forum introduction is displayed at the top of the course page. Activities and resources can be added on the side by using the Social activities block.
Single activity format
The single activity format only has 1 section, and allows the teacher to add one activity only to the course. When the single activity format is selected, a drop down menu appears for the teacher to choose the activity they wish to use. See the "See also" section below for a screencast and working example of the single activity course format.
Note: This course format replaces the SCORM format in earlier versions of Moodle, as it is possible here to select a SCORM package as the single activity.
Single activity format with a forum as the activity and social format are very similar. The only difference is when the course contains other activities. The single activity format displays them as "orphaned" and for teachers only; the social format displays them in an activities block and available for students.
Contributed Course Formats
See MDL-27646 and MDL-28555 and maybe the discussion _URL_
Buttons course format
This is a format that is essentially the same as the standard Topic and Weekly formats but with a 'toggle' for each section except '0'. The toggles' purpose is to reduce the amount of initial information presented to the user thus reducing the'scroll of death' that can plague courses with a lot of content. The'state' of the toggles is remembered on a per course per user basis. For more information, please visit Collapsed_Topics_course_format.
For an overview of 'Collapsed Topics' please see this video:
The daily format is a modification of the weekly format that shows sections by day rather than by week.
The grid format is a modular and visual course format. Hides all topics and creates a grid of icons (one for each topic) with short titles. Clicking on an icon brings up the content from the corresponding topic in a "lightbox" style display.
The menutopic format allows you to display the topics/sections in a menu.
The Noticeboard format presents the latest post in the news forum at the top of the course.
The onetopic format shows each topic in a tab, keeping the current tab between calls to resources, in such a way that when it returns from a module as the blog or the glossary it returns to tab from where you started. This format is based on the Moodle standard format: "Topics".
Topic format (colors)
The colored topic format is based on the 'Topics' standard format and allows a teacher to specify the foreground and background colours for each course section.
Flexible sections format
The flexible sections format for Moodle 2.4+ allows to have nested sections and each section may be displayed expanded (with all content on the parent section page) or collapsed (as a link to a separate page)
Other contributed course formats are available from the modules and plugins database.
- Screencast: Single Activity course format
- Example of a single activity course format on school.demo.moodle.net: Moodle History Quiz (Log in with username: parent and password: moodle)
- Using Moodle Course formats forum
Using Moodle forum discussions:


text:
Two cooling water units were being constructed at the BP Whiting Refinery facility. BP Whiting Refinery would like some assurance that, with the current design, surface vortex would not form in the cooling pump suction bay. Surface vortex could reduce pump water delivery and reduce pump reliability. Computational Fluid Dynamics (CFD) was used to model the suction bay.
Computational domain of the suction bay
Three-dimensional CFD models of the cooling tower suction bays were developed to simulate the critical flow conditions at the suction bays. The suction bays were modeled for designed operating condition where all pumps were operating and off-designed operating condition when one of the pump was shut off.
Flow streamlines for the case where one pump is shut off
The simulation results for the ideal operating case where all pump were operating indicated there were very fex vortices formed around the corner of each suction bay. Increased number of vortices was present, especially in the area near concrete pillars, when one of the pumps was shut off. Based on these results, it was recommended to the oil refinery owner to reduce the size of the concrete pillars in order to reduce the possibility of vortex formation.
Vertex formed near a pump suction inlet
Click the movie below to see the Cooling Tower in detail.
If your network blocks youtube please click here.
Faculty Collaborator: Dr. Chenn Q. Zhou


Chemical Process Simulation: Scaling Up Mixing Processes without the Common Challenges
Avoid the Most Common Challenges During The Chemical Process Simulation Processes.
 In the chemical and pharmaceutical fields, Scaling Up often provides many tough challenges due to the many complicated processes involve that are often difficult to identify and of course difficult to solve which causes many delays.
At the end of the day, I think most would agree that it all comes down to the mixing process. In this article we'll use the example of the development of a vaccine, which is very important in these times, to see what are the typical challenges that occur during the different phases.
Chemical Process Simulation: From Phase 2 to Phase 3
The process to develop a vaccine is a process that is often long and very expensive. It can often take between 5 to 10 years and according to Dr. Jerome Kim, Director General of the International Vaccine Institute (IVI), "if you asked GSK or Merck, they would tell you it costs $500 million for an easy vaccine, and $1 billion to $2 billion for a difficult vaccine".
Testing during the first phases are usually less challenging, involving research, animal testing and limited-size human testing. However, it is in phase 3 that the production challenges begin to show their head, as before phase 3 everything is developed in a lab. But, now, suddenly this needs to be scaled up and be produced for thousands, or even tens of thousands of people. Instead of using 500ml flasks and lab test tubes, we have to move to thousand-liter reactors. It is important to remember, that this still is only phase 3 and the vaccine hasn't been approved nor recommended by any regulatory bodies, which it needs to be before it can be produced on a larger scale.
What Can Go Wrong?
Now, we've got to the point that the formula works perfectly inside the lab, whether it is a vaccine or any other chemical solution. Bu, what is the next step? Now, the dimensions and quantities have changed and the mixing conditions need to be adjusted to be able to produce it in production conditions in bigger facilities. If you don't know exactly how these changes will affect the final result, nor how to change and adjust the mixing process to compensate for this, things will go wrong. This means that the result you had in the lab will not be equal to those that you had in the lab.
However, this is no quick solution, as you don't have an idea of what exactly went wrong, how can you fix something without know the cause? What usually happens, is that an investigation is performed in order to find the issue, or sometimes, adjustments are made to the process, before trying again. This means that in some cases, it can take years to solve the issue – that is if it is solved at all. Sometimes, it seems as if there is an 'unknown' factor or a mystery that can't be solved in the mixing process.
In these types of process, these types of issues lead to long delays and losses of billions every single year. In a situation like that of this example of the vaccine, it can even affect people's lives.
Looking and Understanding the Unknown.
However, all is not as hopeless as it seems, it is actually possible to get an accurate and deep understanding of the scale-up parameters that are affecting the mixing process, therefore bringing these typical mysterious issues into the light and avoiding them altogether. Here at VisiMix, we have created and developed some incredible software that allows chemical engineers to visualize and characterize the mixing process in an easy to see and follow interface that is designed to be user-friendly, this allows them to effortlessly scale mixing processes up or down as required. The objective is to develop a process that will give results that are similar to what was achieved in the previous facility or in the lab. This is achieved by evaluating the process under the same conditions that you will have during the production phase, which enables you to identify the parameters that need to be adjusted or completely changed as well as showing you how to adjust them to get the best solution.
We are scientists, and scientists are all about conducting investigations in order to solve mysteries, we've done our investigation and we have solved this one, which will enable other scientists to continue to change the world through their research and development without the usual frustrations, trial and error, costs nor delays.
FAQ
Are lab experiments absolutely necessary to scale-up the process?
It is not advisable to scale up the process if there is no previous information from a lower level (laboratory, pilot, etc.) on the positive results.
It is only possible to design an optima process for production when a process is well known, from both a chemical and hydrodynamic aspect (e.g.: heat, mass, and momentum transfer). This is because the yields of some diffusion-controlled reactions are extremely dependent on the hydrodynamic properties.
What type of processes are recommend to be scaled-up with mixing simulations?
By using a suitable mixing simulator like VisiMix, any batch or semi batch process in mixing reactors can be scaled-up as long as the necessary information is available.
Some examples of this are: Single-phase mixing (blending), Suspension of solid particles, Emulsification, Crystallization, Liquid-solid chemical reaction. Gas dispersion. Absorption. Chemical reaction, among others…
What is scale-up factor is advisable, would 10x volume be OK?
It is well-accepted that product and process developments are usually scaled-up in small steps, from lab scale to bench scale to pilot scale and ultimately to production scale.
Scaling by 10x or more the original volume is absolutely possible as long as the necessary information and a reliable simulator (such as VisiMix) are available.
What is the importance of process simulation?
Simulation of processes are of great importance for the design and operation of the chemicals manufacturing process. The chemical process that occurs in a stirred reactor depends largely hydrodynamics during mixing. VisiMix use for simulating chemical process in stirred reactors can estimate the main mix parameters influencing the process and determine its outcome.
Knowledge of these parameters allows to better understand the process and, if necessary, make changes to improve it. It also allows, with a high degree of confidence, to evaluate the transfer of the process to another stirred reactor, as well as to scale it up or down. Finally, the simulation of these processes involves saving time and money during the development of a project.
VisiMix Video
The Influence of Mixing in the Process
New methodology using VisiMix software for the purpose of checking the influence of mixing in the processes.
VisiMix Demo Operation
Learning how to input data into the VisiMix software and get results the will help us understand the influence of mixing in our processes.
Lab Experiments
Learning how to set up the relevant experiments at the lab scale, to develop the processes from an engineering point of view.