what is homogenization
What is homogenization?
Homogenization relates to a method of forming a uniform solution by dangling one component (solid or liquid) in a diluent. Researchers all over the world employ homogenization method during the process of mixing.
An effective homogenous mixture has bits (including immiscible particles), that are uniformly and regularly scattered.
How does homogenization work?
Particle size reduction
The main focus of homogenization is to trim down the size of bits in a ready sample. Merchandise from different sectors of the economy like food and beverages, pharmaceuticals, biotechnology, etc profit from tinier particle sizes.
Take, for example, foodstuffs that are made up of tiny fragments which can be beneficial for weight reduction in obese individuals. Another case in point is pharmaceutical drugs consisting of minuscule grains that build up bio availability.
What are homogenizers?
The homogenization method transforms two immiscible liquids
into an emulsion. The mechanical device that helps them complete this kind of homogenizations is termed as a homogenizer.
A laboratory homogenizer (or a lab homogenizer) is an essential laboratory equipment that observes and tests the homogenization effects on the manufactured goods and calculates the best process parameters in different industries like biotechnology, pharmaceutical, cosmetics, chemical, dairy, food and beverages, etc.
Homogenization technique is employed in diverse industries; when individuals pay money for groceries, prescribed medications, etc, homogenization is involved though buyers generally don't notice it.
Therefore, industrial homogenizers are becoming very important in the foods and beverages processing, pharmaceutical drugs industries, etc.
Food homogenizer machine decreases or alters particle size in foodstuffs and divide the fat globules in food items like milk, fruit juices, pastes, sauces, dips and liquid refreshments for a steady, thicker, and uniform texture.
Homogenizer mixers are perfect for homogenizing, blending and creating emulsions.
Inline homogenizers are very appropriate for all kinds of production needs, right from minor R&D applications up to major, 24/7 industrial processes. Not only is inline homogenization a swifter process, but is also very cost-effective as it doesn't require extra mixing tanks and vessels.
Homogenizer pump
In a basic way, the homogenizer is made up of a positive displacement pump and a supporting homogenizing valve assembly. The homogenizer pump pushes the fluids through the homogenizing valve under pressure.
The topic of homogenizing
Homogenizing is an all-embracing field of study; so, when someone mentions homogenizing, it can stand for the following:
 1. Blending
 2. Emulsifying
 3. Homogenizing
 4. Hydrating/De-agglomeration
 5. Dissolving
 6. Powder/Liquid Mixing
How high-shear mixing technology works ?
A high-shear homogenizer mixer spreads, or transfers, one part or component (liquid, solid, gas) into the most important continuous portion (liquid); under ordinary circumstances, these constituents would not mix.
Industries usually utilize a high shear homogenize process when they need emulsions, suspensions, lyosols (gas scattered in liquid), and granular items.
Normally, high shear homogenizers are made use of in adhesives, chemical, cosmetics, food, pharmaceutical, and plastics businesses.
In a high shear inline mixer, the rotor–stator array is enclosed in a covering that has an inlet at one end and an outlet at the other.
Leave a Comment
+91-_PHONE_
_EMAIL_
Plot No. G-39, Friends Industries Area, Shahbad, Daulatpur New Delhi
Translate »


text:
As the key process to ensure the test accuracy and quality, the dynamic calibration of the GNSS attitude measuring instrument is often embarrassed by the lack of the rigid enough test platform and an accurate enough calibration reference. To solve the problems, a novel dynamic calibration method for GNSS attitude measurement based on altazimuth mount is put forward in this paper. The principle and implementation of this method are presented, and then the feasibility and usability of the method are analyzed in detail involving the applicability of the mount, calibrating precision, calibrating range, base line rigidity and the satellite signal involved factors. Furthermore, to verify and test the method, a confirmatory experiment is carried out with the survey ship GPS attitude measuring instrument, and the experimental results prove that it is a feasible way to the dynamic calibration for GNSS attitude measurement.
Time and Frequency Remote Calibration System (TFRCS) based on GPS common-view has been designed by National Time Service Center (NTSC), which is used to realize time and frequency calibration for remote users as well as the precise time traceable to UTC (NTSC) for the local reference time. The high precision PCI plug-in time interval counter is the critical measuring instrument of TFRCS, which is self developed to measure the time interval between two 1 PPS signals from GPS timing receiver and local reference time. The basic principle of time interval counter and the realization method of bottom driver based on PCI are reviewed. On this basis, the method and the measuring results of time interval data based on the driver program are then presented. An experiment has been designed to test the performance of the self developed time interval counter. Research on the technology of time-interval measurement has a very important significance for TFRCS. Furthermore, it also can be used in the field of high precision time-interval measurement.

source: m-a-p/FineFineWeb


text:
Sponsored Link •
In the last dozen episodes I have defined plenty of macros, but I have not really explained what macros are and how they work. This episode closes the gap: it explains the true meaning of Scheme macros by introducing the concepts of syntax object and of transformer over syntax objects.
Scheme macros - as standardized in the R6RS document - are built over the concept of syntax object. The concept is peculiar to Scheme and has no counterpart in other languages (including Common Lisp), therefore it is worth to spend some time on it.
A syntax-object is a kind of enhanced s-expression: it contains the source code as a list of symbols and primitive values, but also additional informations, such as the name of the file containing the source code, the position of the syntax object in the file, a set of marks to distinguish identifiers according to their lexical context, and more.
The easiest way to get a syntax object is to use the syntax quoting operation, i.e. the syntax (#') symbol you have seen in all the macros I have defined until now. Consider for instance the following script, which displays the string representation of the syntax object #'1:
$ cat x.ss (import (rnrs)) (display #'1)
If you run it under PLT Scheme you will get
$ plt-r6rs x.ss #
In other words, the string representation of the syntax object #'1 contains the full pathname of the script and the line number/column number where the syntax object appears in the source code. Clearly this information is pretty useful for tools like IDEs and debuggers. The internal implementation of syntax objects is not standardized at all, so that you get different informations in different implementations. For instance Ikarus gives
$ ikarus --r6rs-script x.ss #
i.e. in Ikarus syntax objects do not store line numbers, they just store the character position from the beginning of the file. If you are using the REPL you will have less information, of course, and even more implementation-dependency. Here are a few example of syntax objects obtained from syntax quoting:
> #'x ; convert a name into an identifier # > #''x ; convert a literal symbol # > #'1 ; convert a literal number # > #'"s" ; convert a literal string # > #''(1 "a" 'b) ; convert a literal data structure #
Here I am running all my examples under Ikarus; your Scheme system may have a slightly different output representation for syntax objects.
In general #' can be "applied" to any expression:
> (define syntax-expr #'(display "hello")) > syntax-expr #
It is possible to extract the s-expression underlying the syntax object with the syntax->datum primitive:
> (equal? (syntax->datum syntax-expr) '(display "hello")) _TAG_
Different syntax-objects can be equivalent: for instance the improper list of syntax objects (cons #'display (cons #'"hello" #'())) is equivalent to the syntax object #'(display "hello") in the sense that both corresponds to the same datum:
> (equal? (syntax->datum (cons #'display (cons #'"hello" #'()))) (syntax->datum #'(display "hello"))) _TAG_
The (syntax ) macro is analogous to the (quote ) macro. Mreover, there is a quasisyntax macro denoted with #' which is analogous to the quasiquote macro ('). In analogy to the operations comma (,) and comma-splice (,@) on regular lists, there are two operations unsyntax #, (sharp comma) e unsyntax-splicing #,@ (sharp comma splice) on lists and improper lists of syntax objects.
Here is an example using sharp-comma:
> (let ((user "michele")) #'(display #,user)) (# "michele". #)
Here is an example using sharp-comma-splice:
> (define users (list #'"michele" #'"mario")) > #'(display (list #,_USER_)) (# (# # #). #)
Notice that the output - in Ikarus - is an improper list. This is somewhat consistent with the behavior of usual quoting: for usual quoting '(a b c) is a shortcut for (cons* 'a 'b 'c '()), which is a proper list, and for syntax-quoting #'(a b c) is equivalent to (cons* #'a #'b #'c #'()), which is an improper list. The cons* operator here is a R6RS shortcut for nested conses: (cons* w x y z) is the same as (cons w (cons x (cons y z))).
However, the result of a quasi quote interpolation is very much implementation-dependent: Ikarus returns an improper list, but other implementations returns different results; for instance Ypsilon returns a proper list of syntax objects whereas PLT Scheme returns an atomic syntax object. The lesson here is that you cannot rely on properties of the inner representation of syntax objects: what matters is the code they correspond to, i.e. the result of syntax->datum.
It is possible to promote a datum to a syntax object with the datum->syntax procedure, but in order to do so you need to provide a lexical context, which can be specified by using an identifier:
> (datum->syntax #'dummy-context '(display "hello")) _TAG_ is tricky and I will go back to that in a future episode).
syntax-match is a general utility to perform pattern matching on syntax objects; it takes a syntax object in output and returns a syntax object in output. Here is an example of a simple transformer based on syntax-match:
> (define transformer (syntax-match () (sub (name. args) #'name))); return the name as a syntax object > (transformer #'(a 1 2 3)) #
For convenience, syntax-match also accepts a second syntax (syntax-match x (lit...) clause...) to match syntax expressions directly. This is more convenient than writing ((syntax-match (lit...) clause...) x). Here is a simple example:
> (syntax-match #'(a 1 2 3) () (sub (name. args) #'args)); return the args as a syntax object #
Here is an example using quasisyntax and unsyntax-splicing:
> (syntax-match #'(a 1 2 3) () (sub (name. args) #'(name #,@#'args))) (# # # #)
As you see, it easy to write hieroglyphs if you use quasisyntax and unsyntax-splicing. You can avoid that by means of the with-syntax form:
> (syntax-match #'(a 1 2 3) () (sub (name. args) (with-syntax (((a...) #'args)) #'(name a...)))) (# # # #)
The pattern variables introduced by with-syntax are automatically expanded inside the syntax template, without need to resort to the quasisyntax notation (i.e. there is no need for #' #, #,@).
Macros are in one-to-one correspondence with syntax transformers, i.e. every macro is associated to a transformer which converts a syntax object (the macro and its arguments) into another syntax object (the expansion of the macro). Scheme itself takes care of converting the input code into a syntax object (if you wish, internally there is a datum->syntax conversion) and the output syntax object into code (an internal syntax->datum conversion).
Consider for instance a macro to apply a function to a (single) argument:
(def-syntax (apply1 f a) #'(f a))
This macro can be equivalently written as
(def-syntax apply1 (syntax-match () (sub (apply1 f a) (list #'f #'a))))
The sharp-quoted syntax is more readable, but it hides the underlying list representation which in some cases is pretty useful. This second form of the macro is more explicit, but still it relies on syntax-match. It is possible to provide the same functionality without using syntax-match as follows:
(def-syntax apply1 (lambda (x) (let+ ((macro-name func arg) (syntax->datum x)) (datum->syntax #'apply1 (list func arg)))))
Here the macro transformer is explicitly written as a lambda function, and the pattern matching is performed by hand by converting the input syntax object into a list and by using the list destructuring form let+ introduced in episode 15. At the end, the resulting list is converted back to a syntax object in the context of apply1. Here is an example of usage:
> (apply1 display "hey") hey
sweet-macros provide a convenient feature: it is possible to extract the associated transformer for each macro defined via def-syntax. For instance, here is the transformer associated to the apply1 macro:
> (define tr (apply1 )) > (tr #'(apply1 display "hey

source: HuggingFaceFW/fineweb-edu


text:
Thus, the degradation condition can be represented by the MQE as follows:
where is the test input data vector and stands for the weight vector of BMU.
3.3. Failure threshold
The bearing health state during the whole bearing life is divided into three stages as normal, degradation and failure. After sampling from bearing vibration data, we calculate the three features into MQE value and then compare the incipient failure thresholds. The normal value of MQE is in range of 0-0.3. Therefore, the incipient threshold is set as 0.3 and the failure threshold is set as 1.0. If the features exceed the incipient threshold and enter the degradation area, an incipient fault will occur. And then the prediction model will be activated to continually track and record the vibration data. Once the failure threshold is exceeded, bearing suffers from a severe degradation and must be replaced.
A multistep prediction method is used in this paper. The initial time step is a very important element in bearing remaining life prediction. In order to realize the bearing remaining life prediction, the initial time step should be a point whose MQE is below the failure threshold. Generally, we choose the initial time step with a MQE value between the incipient failure threshold (the value is 0.3 in thise paper) and the final failure threshold (the value is 1 in thise paper). However, different initial time step result in different prediction accuracy.
3.4. GPR prediction
GPR is used to predict the failure time of bearings by assessing the features of bearings. The hyper-parameters are obtained by maximizing the marginal likelihood algorithm. The model outputs the predicted MQE value and confidence interval for the next steps. The latest (in this paper, 10) MQEs are took as input vector of GPR to predict the next several periods. The RUL of the bearing can be obtained based on the predicted MQE and failure threshold.
Covariance function is a key factor in GPR. Three standard covariance functions are used in this paper (i.e. squared exponential (SE) covariance function, rational quadratic (RQ) covariance function and Matern class of covariance functions). If,,…, are independent random GP, is also a GP. Therefore, a composite covariance function can be described as:
Fig. 2. Bearing test rig sensor placement illustration
4. Case studies
In this section, we used the test data of bearing to validate the effectiveness of the proposed bearing failure prediction model. The bearing test dataset was generated from the run-to-failure test performed under a constant load condition by the national science foundation industry and university corporative research program (NSF I/UCR) center on Intelligent Maintenance Systems (IMS). The test rig is shown in Fig. 2.
Four bearings were installed on one shaft for the run-to-failure test [18, 19]. The rotation speed was maintained at 2000 rpm. A radial load of 2730 kg was placed onto the shaft and the bearings by a spring mechanism. Vibration data were collected every 20 minutes, with a sampling rate of 20 kHz. Three tests were carried out and all tests were terminated when some failure occurred.
In order to give a brief demonstration of the proposed method, a part of MQEs were shown in Fig. 3. Three time domain features are applied to construct the input vector of SOM. After training SOM, the MQE of each test dataset can be calculated by Eq. (13)-(15).
Fig. 3. MQE of test bearing
4.1. Prediction based on GPR
Several degradation datasets are extracted from Bearing 3 of Test 1 and used to make predictions. Performance degradation causes fluctuation of bearing vibration and the increase of MQE. When MQE exceeds the incipient threshold, the prediction model are activated. If MQE exceeds 1.0, bearing enters the failure stage and should be replaced.
The evolution of MQE of the vibration signal of bearing 3 with threshold setting and prediction is shown in Fig. 4. The prediction is trigged at the 40th time step, where the MQE is about 0.7. The dotted line is the actual MQE and the solid line indicates the prediction result of GPR with composite covariance function. The actual failure time is 55.3 and the predicted one is 56.6. The prediction is overestimated with an accuracy of 97.7 %, which is acceptable.
Fig. 4. Remaining life prediction for bearing MQE
The prediction model based on GPR (CK) with 95 % confidence interval is used, as depicted in Fig. 5. Three prediction processes were triggered at the 30th, 40th and 52th time step, respectively. The corresponding MQEs of the bearing are approximately equal to 0.5, 0.7 and 0.9, respectively. The lines represent the predicted MQEs and the colored areas are the uncertainty areas of the predicted results. Among these lines, the black dot one indicates the actual MQE. It can be found that the predictions at 30 failed to follow the actual trend. Thus, prediction at the early stage faces a larger deviation. While, with more new data being added, the predictions become better as illustrated by the predictions at 40 and 52.
Fig. 5. Prediction of MQE based on GPR (CK) with 95 % confidence interval at 30, 40 and 52
4.2. Comparisons between different kernels
Covariance function is crucial for GPR, and can determine the efficiency of prediction. In this case, 60 points were used to make a comparison between different kernels. The length of the training data are 10. Six covariance functions are applied to the prediction model for training and validation. As shown in Fig. 6, most of kernels can suit the actual data well for one-step prediction. The RMS error (RMSE) and output variance are used to estimate the accuracy. Although, composite covariance functions consumed more time, they exhibited better performance (smaller RMSE and variance) than the single kernels. As listed in Table 1, the RMSE of the composite kernel of SE and Matern is smaller than others. Variance also reduces significantly. The composite kernel spent additional 60 % computing time in exchange for 30 % performance enhancement, which is valuable.
Fig. 6. Predictions with different covariance functions
For an -steps prediction, the dynamic of PDF predictions with single and composite covariance functions is shown in Fig. 7. The RUL distributions of both kernels cover the real RULs well. However, the distributions of RUL obtained from the single kernel have a larger PDF at early time, which means the variance of prediction is higher than the composite covariance functions. More accurate prediction with higher confidence can be obtained at the end life. This probabilistic implement help us make a correct judgment and provide an uncertainty management.
Fig. 7. PDF of prediction with different covariance functions
Table 1. Comparison of different kernels
4.3. Comparison with particle filter
PF is a kind of Sequential Monte Carlo (SMC) methods that are coupled with the recursive Bayesian estimation. The principle of PF is to utilize a set of weighted particles to represent the probability densities. 120 points degradation data are used to make a comparison. The failure threshold of the MQE is set as 1.0. The predictions are started at 100th time step. Both PF and GPR prediction model are run ten times and the average results are calculated. Fig. 8(a) is the prediction result using PF, and Fig. 8(b) is the prediction using GPR with the composite kernel.
Fig. 8. Comparison of MQE prediction between composite kernel GPR and PF method
The actual failure time as shown in the Fig. 8 is 116.2. While the mean value of the predicted failure time by GPR and PF are 117.8 and 119.1 respectively. Both results are acceptable. Compared with PF, GPR has a better accuracy and the predicted curve of GPR is more stable. That is to say GPR is superior to PF in maintenance decision.
This paper proposes a bearing remaining life prediction model based on GPR with composite kernel. Dynamic of PDF is illustrated in the experiment. The PDF of model outputs is essential for risk analysis and maintenance decision. From this paper, following conclusions can be drawn:
1) This paper proposes a creative application of GPR in bearing prediction field. The GPR model can simplify the prediction process with a satisfactory performance.
2) GPR with composite kernels can improve the prediction accuracy and reduce the variance of the RUL in comparison with single kernel.
3) Compared with PF algorithm, GPR model is better in terms of prediction accuracy.
The authors are highly thankful for the financial support of National Natural Science Foundation of China (61304111), Beijing Natural Science Foundation (_PHONE_), National Program on Key Basic Research Program of China under Grant 2014CB744904, and Fundamental Research Funds for the Central Universities under Grant No. YWF-14-KKX-001, China.
- Heng A., Zhang S., Tan A. C. C. Rotating machinery prognostics: State of the art, challenges and opportunities. Mechanical Systems and Signal Processing, Vol. 23, Issue 3, 2009, p. 724-739. [Search CrossRef]
- Qiu H., Lee J., Lin J. Robust performance degradation assessment methods for enhanced rolling element bearing prognostics. Advanced Engineering Informatics, Vol. 17, Issue 3, 2003, p. 127-140

source: openbmb/Ultra-FineWeb


text:
Following the devastating bushfires on the NSW South Coast, the Australian Government and Catholic Education Archdiocese of Canberra and Goulburn are providing a range of supports to affected children, families and communities.
The Australian Government will:
- provide mental health support for school staff, students and families in bushfire affected communities
- provide financial support to child care services in bushfire affected communities
- provide Child Care Subsidy (CCS) activity test debt exemptions for families in bushfire affected communities
- provide an additional $400 to families for each child aged under 16 that is eligible for the Australian Government Disaster Recovery Payment
- provide scholarships for regional students from bushfire affected communities to help them attend university
Further information on these assistance packages can be found on the Department of Education website.
Catholic Education Archdiocese of Canberra and Goulburn (CECG)
CECG has committed to providing practical and financial support to their schools in Batehaven, Broulee and Moruya that have been affected by the bushfires. This support includes:
- total fee remissions to families
- additional relief staffing to affected schools
- additional counselling services for students, staff and the wider school community
For more information contact Ben Duggan on (02) 6234 5454.
For information on personal hardship and distress assistance, contact the Disaster Welfare Assistance Line on 1800 018 444.


text:
In the fall of 2002, the British Columbia government released the BC Energy Plan. As part of this plan, BC Hydro, our publicly owned electric utility, is restricted from developing new generation facilities other than those in which it has already made significant investments. Furthermore, the BC Energy Plan instructs BC Hydro to acquire new supplies from the private sector. According to the Plan, 50% of new electricity needs are to come from conservation; however, much of the focus to date has been on developing new privately owned generating facilities.
Much has been written about the potential effects of the energy plan on electrical rates and the future of our publicly owned electrical utility; however, most British Columbians are still unaware of the extent of private hydro power development, the potential environmental consequences of this development, and the loss of sovereign control of our rivers.
In 2007, while researching these issues, I developed a Google Earth map of current and proposed private hydro electric projects in British Columbia. Subsequently, I reproduced the map in Google Maps for those who are unable to run Google Earth. Both presentations of the map are updated regularly.
I encourage all citizens of BC to explore the map and resources presented here, become informed about hydro power projects in their communities and become involved at all opportunities for public input. Only through active participation can we direct the use and conservation of these resources in an environmentally responsible way, for the long term benefit of local communities and all British Columbians.


text:
Franchising gained popularity for entrepreneurs to start their businesses without creating everything from scratch. Franchises are available in various industries, including fast food, retail, real estate, education, and health care.
Several franchising models exist, including product distribution, business format, and management franchising. Each model has its unique characteristics, benefits, and risks.
Advantages and Disadvantages of Franchising
Depending on the franchise and the individual owner's goals and circumstances, franchising can have advantages and disadvantages for franchisee and franchisor alike. Here are some of the most commonly recognised advantages and disadvantages:
Advantages of Franchising for Franchisees:
- Established brand and business model: Franchisees can leverage the franchisor's established brand name and business model, which can help them attract customers and run a successful business.
- Lower risk: of failure for franchisees than independent business owners because they operate under an established and proven business model.
- Economies of scale: Franchisees can benefit from the economies of scale that come with being part of a larger organisation, which can help them obtain supplies and inventory at lower costs.
- Training and support: Franchisors provide extensive training and support to franchisees, including assistance with marketing, operations, and management and some help with recruitment.
- Access to financing: Franchisees may have access to funding through the franchisor or their network of lenders, which can help them obtain funding more easily.
Disadvantages of Franchising for Franchisees:
- High initial investment: Franchisees must pay a significant upfront fee to purchase the franchise and ongoing royalty and advertising fees.
- Limited flexibility: Franchisees must operate their business according to the franchisor's guidelines, which can limit their ability to make independent business decisions.
- Shared profits: Franchisees must share a portion of their profits with the franchisor, which can impact their profitability.
- Limited territory: Franchisees may have a specific geographic region, limiting their ability to expand their business in certain areas.
Franchising for Franchisors
Becoming a franchisor can be complex and challenging, but it can be a lucrative business opportunity if done correctly. It's essential to do your research and seek guidance from experienced franchise professionals to ensure you're setting yourself up for success.
Advantages of Franchising for Franchisees:
- Growth: Franchisors can rapidly expand their business by recruiting franchisees to open new locations.
- Revenue: Franchisors can generate revenue from franchise fees, royalties, and other fees.
- Brand recognition: Franchisors can benefit from increased brand recognition as their franchise network grows.
- Shared risk: Franchisors can share the risks associated with business expansion with their franchisees.
- Economies of scale: Franchisors can benefit from the economies of scale that come with a larger organization, such as lower costs for supplies and inventory.
Disadvantages of Franchising for Franchisors:
- Legal issues: Franchisors may face legal matters related to the relationship between the franchisor and franchisee.
- Training and support costs: Franchisors are responsible for providing extensive training and support to franchisees, which can be expensive.
- Quality control: Franchisors must ensure that all franchisees maintain the same level of quality and consistency, which can be difficult.
- Reputational risk: If franchisees do not operate their businesses consistently with the franchisor's standards, it can damage their reputation.
Trending Franchise industries
As times change, so do trends, and that's why franchisors and franchisees need to adapt in the industry to stay competitive and successful through regular research. Let's look at some industries that trended during 2022 in the franchise sector.
Franchises will continue to grow by integrating technology into their business models, including online ordering, mobile apps, and digital marketing.
Focus on health and wellness:
Health and wellness franchises, such as fitness centers and healthy food options, are expected to grow in popularity as consumers prioritise health and wellness.
Franchisors are exploring new sites for their franchises, such as airports, hospitals, and college campuses, to reach new customers and expand their market.
Franchisees increasingly own multiple units of the same franchise, which allows them to benefit from economies of scale and streamline operations.
Franchises continue to evolve by adopting eco-friendly practices, such as reducing waste and using sustainable materials, to appeal to environmentally conscious consumers.
Virtual and remote business models:
The trend accelerated after the COVID-19 pandemic toward virtual and remote business models, and franchises continue exploring these options to increase flexibility and reduce costs.
Should you franchise?
Franchising can be a positive experience for both the franchisor and the franchisee. It provides the franchisee with a roadmap to success, ongoing support, and access to resources and expertise that may not be available to them if they were to start a business independently. Get in touch with the experts and get the advice you need to make your dreams a reality!
Shaun M Jooste, Point Franchise ©


Definitions for
Overview of noun yawn
The noun yawn has 1 senses? (first 1 from tagged texts)
1. (1) yawn, yawning, oscitance, oscitancy
Overview of verb yawn
The verb yawn has 2 senses? (first 1 from tagged texts)
1. (3) yawn
(utter a yawn, as from lack of oxygen or when one is tired; "The child yawned during the long performance")
2. gape, yawn, yaw
(be wide open; "the deep gaping canyon") © 2001-2013, Demand Media, all rights reserved. The database is based on Word Net a lexical database for the English language. see disclaimer
Classroom | Privacy Policy | Terms | Ad Choices


Our Blog
Ongoing observations by End Point people
Setting a server role in Salt (comparing Puppet and Salt)
By Spencer Christensen
December 23, 2013
There are many ways to solve a given problem, and this is no truer than with configuration management. Salt (_URL_) is a fairly new tool in the configuration management arena joining the ranks of Puppet, Chef, and others. It has quickly gained and continues to grow in popularity, boasting its scalable architecture and speed. And so with multiple tools and multiple ways to use each tool, it can get a little tricky to know how best to solve your problem.
Recently I've been working with a client to convert their configuration management from Puppet to Salt. This involved reviewing their Puppet configs and designs and more-or-less mapping them to the equivalent for Salt. Most features do convert pretty easily. However, we did run into something that didn't at first/assigning a role to a server.
We wanted to preserve the "feeling" of the configs where possible. In Puppet they had developed and used a convention for using some custom variables in their configs to assign an "environment" and a "role" for each server. These variables were assigned in the node and role manifests. But in Salt we struggled to find a similar way to do that, but here is what we learned.
In Puppet, once a server's "role" and "environment" variables were set, then they could be used in other manifest files to select the proper source for a given config file like so:
 file {
 source =>
 ensure => present,
 owner => "root",
 group => "root",
 mode => "644"
Puppet will search the list of source files in order and use the first one that exists. For example, if $hostname = 'myniftyhostname' and $system_environment = 'qa' and $system_role = 'sessiondb', then it will use rsyslog.conf.myniftyhostname if it exists on the Puppet master, or if not then use rsyslog.conf.qa-sessiondb if it exists, or if not then rsyslog.conf.sessiondb if it exists, or if not then rsyslog.conf.qa if it exists, or if not then rsyslog.conf.
In Salt, environment is built into the top.sls file, where you match your servers to their respective state file(s), and can be used within state files as {{ env }}. Salt also allows for multiple sources for a managed file to be listed in order and it will use the first one that exists in the same way as Puppet. We were nearly there; however, setting the server role variable was not as straight forward in Salt.
We first looked at using Jinja variables (which is the default templating system for Salt), but soon found that setting a Jinja variable in one state file does not carry over to another state file. Jinja variables remain only in the scope of the file they were created in, at least in Salt.
The next thing we looked at was using Pillar, which is a way to set custom variables from the Salt master to given hosts (or minions). Pillar uses a structure very similar to Salt's top.sls structurematching a host with its state files. But since the hostnames for this client vary considerably and don't lend themselves to pattern matching easily, this would be cumbersome to manage both the state top.sls file and the Pillar top.sls file and keep them in sync. It would require basically duplicating the list of hosts in two files, which could get out of sync over time.
We asked the salt community on _TAG_ on Freenode.net how they might solve this problem, and the recommended answer was to set a custom grain. Grains are a set of properties for a given host, collected from the host itselfsuch as, hostname, cpu architecture, cpu model, kernel version, total ram, etc. There are multiple ways to set custom grains, but after some digging we found how to set them from within a state file. This meant that we could do something like this in a "role" state file:
# sessiondb role
# {{ salt['grains.setval']('server_role','sessiondb') }}
 - common
 - postgres
And then within the common/init.sls and postgres/init.sls state files we could use that server_role custom grain in selecting the right source file, like this:
 - source:
 - salt://rsyslog/files/rsyslog.conf.{{ grains['host'] }}
 - salt://rsyslog/files/rsyslog.conf.{{ env }}-{{ grains['server_role'] }}
 - salt://rsyslog/files/rsyslog.conf.{{ grains['server_role'] }}
 - salt://rsyslog/files/rsyslog.conf
 - mode: 644
 - user: root
 - group: root
This got us to our desired config structure. But like I said earlier, there are probably many ways to handle this type of problem. This may not even be the best way to handle server roles and environments in Salt, if we were more willing to change the "feeling" of the configs. But given the requirements and feedback form our client, this worked fine.
automation devops puppet salt
Popular Tags
Search our blog


text:
Harrowing moment rare white tiger tries to nurse stillborn cub back to life at North Korean zoo as children are ordered told to clap and cheer
- Experts said mentally distressed tiger and her cub should have been seen by vet
- Zoo has been a favourite with North Korea's supreme leaders for generations
- Experts added that the animals were showing 'classic signs of torment'
Pyongyang Central Zoo played host to the agonising cries of a mother tiger standing over her dead cub, trying to revive its lifeless body.
The mentally distressed big cat and her mate pacing up and down the enclosure were neglected by staff who disregarded them, said experts.
Welfare experts reacted in complete disbelief after being shown the conditions of the zoo that has been a favourite with North Korea's supreme leaders for generations.
Scroll down for video
A mother tiger groans in devastation as her cub lays lifeless and limp in Pyongyang Zoo
Images show Kim Jong-un's new natural history museum and zoo…
First American to study in North Korea reveals what life is…
Share this article
Most of the animals were gifted to the zoo from around the world, but the Mirror have reported that it falls well below the standards expected.
Sickeningly, children were even urged to cheer and clap by their teachers. Experts suggest this is extremely bad for animal's mental well-being.
Humane Society International's Wendy Higgins said: 'This is a devastating, rare insight into the shockingly poor existence of animals at this zoo.
'It's little wonder that we see big cats here demonstrating stereotypical repetitive cage pacing, classic signs of mental distress as the animals struggle to cope with the monotony and deprivation.'
A staff member from the zoo stands next to a replica model of a crocodile at the Central Zoo
Visitors look at bears at the Central Zoo in Pyongyang, North Korea, Saturday, Sept. 15, 2018
Experts added that the animals were showing 'classic signs of torment' and described the attraction as 'one of the worst cases of psychological abuse of animals ever seen'.
The Mirror reported that their journalists only saw two zoo keepers in their two hour journey around the grounds.
They added that their minders thought nothing of the disgraceful conditions and even showed pride in the zoo at certain points.
The zoo was opened in 1959 by Kim Il-sung, Jong-un's grandfather and the original Supreme Leader of North Korea.
Experts said animals had no option to be out of view and this was bad for mental well-being
North Korean schoolchildren watch seals swimming in a tank at the Central Zoo in Pyongyang
The Kims claimed to be animal enthusiasts, with Jong-un admiring the deadly snakes and investing millions in upgrading the zoo in 2016, ordering the main entrance to take the shape of a huge tiger's head.
Kim Il-sung visited the site 20 times, his son Kim Jong-Il 31 times and current leader Jong-un six times so far, but the interest has done nothing for the welfare of the animals.
Dr Chris Draper, head of welfare at animal rights organisation Born Free Foundation, said the zoo was 'totally inappropriate' for all the animals.
He told the Mirror: 'Their cages are small, bare and there is no means of retreat from public view for them. It is most alarming to see the mother [tiger] and stillborn cub. There should've been a vet on the scene straight away.'
A North Korean man looks through a device to study the vision of a dinosaur
A North Korean boy studies the information of dinosaurs at the Central Zoo in Pyongyang
Source: Read Full Article


text:
Next Generation Blood Gas Monitors System Market: Overview
The next generation blood gas monitors are the devices that are used for observing the level of carbon dioxide tension, arterial oxygen tension, and acidity. By checking these parameters diagnosis of the disease becomes easy. The condition may be a shock, pulmonary disorder, overdose of certain drug, etc. The next generation blood gas monitors are fundamental devices that are present in the CCU and ICU rooms. There are many technological advancements done in this field.
Next Generation Blood Gas Monitors System Market: Segmentation
The global market for the next generation blood gas monitors system is fragmented into its product type, end user, and application. On the basis of the product type, the market is segregated into portable and bench top. On the basis of end user, the market is categorized into hospitals, clinical laboratories, cardiac centers, and others. On the basis of application, the market is divided into combined and single next generation blood gas monitors.
Next Generation Blood Gas Monitors System Market: Growth Factors
The major factors that are favoring the growth of the next generation blood gas monitors are the increased rate of the hospital admissions, the growing number of the geriatric population, and the rise in the prevalence of the chronic diseases. The other factors that are influencing the growth of the next generation blood gas monitors systems market in the coming years are the increasing healthcare expenditure and the development of the advanced technologies. The factors that are affecting the market growth in a negative way are the stringent regulatory protocols in some of the nations and the rise in the cost of the point of care devices.
Next Generation Blood Gas Monitors System Market: Regional Analysis
The geographical diversification of the global next generation blood gas monitors system market includes Asia Pacific, North America, the Middle East and Africa, Eastern Europe, Latin America, and Western European regions. The region that is leading the next generation blood gas monitors system market is North America. Europe is following North America in terms of market growth. The factors that are contributing to the market growth in these regions are the increased technological advancements, highly developed healthcare infrastructure, and the increased number of the market players. Increasing number of the product innovations that are made in this field is also supporting the growth of the market. It has been observed that the next generation blood gas monitors that are available in the regions of North America and Western Europe have the capability to incorporate with the EMR system of the hospital which helps in improving the work flow. The market in Asia Pacific will grow at a significant rate due to the increasing aging population and the rise in the cases of chronic diseases.
Next Generation Blood Gas Monitors System Market: Competitive Players
The key market players that are involved in the next generation blood gas monitors system market include Bayer, Convergent Technologies, Alere, Inc., Roche Diagnostics, Samsung Medison, Nova Stat, Alere, Medica, Radiometer Medical, Abbott Point of Care Inc., Nova Biomedical, Siemens Healthcare, Erba, Edan Instruments, and Dalko Diagnostics.
Next Generation Blood Gas Monitors System Market: Regional Segment Analysis
What Reports Provides


.NET 5 Applications and Class Libraries Used and Their Purpose
Blash uses a number of.NET projects in it's solution.
In addition to the Blash API and the Blazor WebAssembly application, it also uses a number of class libraries to integrate these two applications together.
We will have a look at the different.NET projects in the Blash source code, and what their purpose is.
The RoundTheCode.Blash.Data assembly is a class library that mirrors the tables used in the SQL Server database as classes.
In-addition, there are some extra classes, such as DashboardModel. This class is used by the Blash API and Blazor WebAssembly application, and is used when a new dashboard is created.
The RoundTheCode.Blash.Data assembly is shared by both the Blash API and the Blazor WebAssembly application. As a result, it shares classes used by both projects, such as creating a tweet, or returning a dashboard with it's tweets.
The RoundTheCode.Blash.Shared assembly is a class library that is primary used for logging.
Blash extends the logging feature that comes with ASP.NET Core to allow for writing log files to text files.
This library is used with RoundTheCode.Blash.TwitterApi and RoundTheCode.Blash.Api, mainly to log events in background tasks, or when an exception is thrown.
The integration of the Twitter API is used in the RoundTheCode.Blash.TwitterApi library.
It's a class library that performs HTTP requests to the Twitter API and returns it's response.
This request is done through the Blash API and it will wait until it gets a response. From there, the Blash API can store information in it's database, such as the dashboards available and the tweets to display.
The Blash API is the central part of Blash.
Using the ASP.NET Core Web API application, it has a number of methods inside its controllers to create and delete dashboards.
In-addition, it has a number of background jobs, where it communicates with the Twitter API. These include:
 - Getting a list of rules from the Twitter API and converting them into dashboards.
 - Getting a list of recent tweets from the Twitter API and placing them in the appropriate dashboard.
 - Listening to real-time tweets from the Twitter API, based on the rules setup.
Finally, the Blash API has a SignalR hub set up. The purpose of this hub is so it can send or receive any changes that might happen with the Blazor WebAssembly application.
Examples of this might include creating a new dashboard, or receiving a real-time tweet. These sort of events need to be communicated with all clients that are using the Blazor WebAssembly application.
The Blazor WebAssembly shows the application to the user.
The user has the ability to create and delete dashboards. In-addition, the user can view the most recent tweets for these dashboards, and receive real-time tweets.
The Blazor WebAssembly application has communication with the Blash API. When it starts up, it connects to the Blash API through a SignalR connection.
In addition, when a dashboard is created, or deleted, it will call an endpoint on the Blash API to perform that task.


Friday, February 01, 2008
Ed and Edd, But Not Eddy
Ed and Edd decided to build competing roller coasters. Ed built his roller coaster 40 feet high that will travel down on a straight slope. Edd built his roller coaster 40 feet high, but his travels down a curved slope (steep at the beginning, levels out at the end with no bumps).
If both cars are released at the same time (they cars are identical), which one will arrive at the bottom first?
 1. curved slope will win
 2. The curved slope will win because you will pick up more speed at the beginning.
 3. mike - are you sure about this? I spent a lot of time considering this (this happens to be right up my alley, as you may know by now), and I think I may disagree. you do in fact get more speed at the beginning, but you have a greater distance to travel, since you have to travel the length of the line, and if the line is curved, it will be longer (i.e. the shortest distance between two points is a straight line).
 Consider the following extreme example. Let's say that your "curved line" consists of a vertical drop for the full height, then a flat line going to the end, while the "straight line" coaster is just a linear slope between the start and end. We'll say that it's 45 degrees for simplicity (that is, length=height=h). If you crunch the numbers, it comes out that it takes slightly longer to get to the end of the "curved" coaster, unless I made a mistake.
 "Straight Line"
 distance to travel = d = h*sqrt(2)
 acceleration = a = g cos(theta) = g/sqrt(2)
 d = h*sqrt(2) = (1/2)*a*t^2
 t = 2*sqrt(h/g)
 "Curved Line"
 First Leg:
 distance = d = h
 acceleration = a = g
 d = h = 1/2*a*t1^2
 t1 = sqrt(2*h/g)
 final velocity = v = sqrt(2*g*h)
 Second Leg:
 distance = d = h
 acceleration = a = 0
 d = v*t2
 t2 = d/v = h/sqrt(2*g*h) = sqrt(h/(2*g))
 t = t1+t2 = (sqrt(2)+sqrt(1/2))*sqrt(h/g)
 since (sqrt(2)+sqrt(1/2))>2, the "curved" scenario takes longer, by my figuring. Anyway, it seems like this would hold true for all similar scenarios if it held true for this case, but I'm not sure about it.
 I bet this was a lot more than you bargained for on this question...sorry.
 4. As usual for me, I'm not sure. It's going to take me some time to figure this one out.
 At first glance, I would think it would matter how far you are dropping. Off the top of my head (I haven't worked my way through your math, yet) I can definitely see there would be a tipping point where the straight line would catch up to the curved line, but for a short drop, the curved line (I would think) would win.
 And, if there is a tipping point, I wonder what that would be.
 And, that all supposes that I'm right about the quick pick-up of speed.
 Let me work through your math and see what I can see.
 5. Alright, after trying my hand at some algebra, I think I came up with time on a curved track is (sqrt(2) + sqrt(2))*sqrt(h/g) which is bigger than time on a straight track 2*sqrt(h/g).
 If either of us is doing the math correctly, the straight line wins.
 Sorry about that.
 6. it's ok. I'm going to actually look at some Hamiltonian / Lagrangian techniques and see if I can solve this definitively with calculus of variations. you've piqued my curiosity. I'll get back to you.
 7. Mike,
 I crunched the numbers on one that slopes just a little more sharply than a straight line, then levels off at the bottom, and it is indeed faster. If you slope just a little more at the first, it is faster, but the extreme case I gave is slower, which means there is some maximization curve which will do it in the fastest time. Anyway, good question, even if you didn't realize it at the time ;-)
 9. Wow, that was totally not obvious to me. Very interesting though.
 I really wish I could say I knew it all along, but I'm guessing everyone here would know better by now!
Preview | Powered by FeedBlitz
The Lamplight Manor Puzz 3-D


text:
|| Checking for direct PDF access through Ovid
A rapid gradient echo technique was optimized to allow breath-held imaging of the lung parenchyma. The ability of this sequence to detect interstitial lung disease was then compared with high resolution computed tomography.A Turbo-FLASH gradient echo sequence (repetition time [TR] 4.7, echo time [TE] 2) was optimized using four volunteers. The parameters varied, including flip angle, inversion time, slice thickness, and number of measurements per unit time. The effect on signal to noise ratio of lung inflation and position within the lung were also studied. The optimized sequence was then compared with high resolution computed tomography in five patients being investigated for interstitial lung disease.Greatest signal was achieved using no inversion prepulse. This allowed up to six measurements, each with two acquisitions, during a single breath-hold. Optimum signal to noise ratio was achieved using a flip angle of 10 degrees with a 20-mm slice thickness, although a 10-mm slice was felt to be preferable for clinical use. Greatest signal to noise ratio was generated in the posterior aspect of the lung in full expiration. Comparison of the optimized magnetic resonance imaging technique with high resolution computed tomography showed no significant difference (P = 0.17) when assessing the proportion of diseased to normal lung.Using standard magnetic resonance software and hardware, it has been possible to use a breath-hold sequence that allows detection and quantification of interstitial lung disease.


text:
Odisha to implement ARUA to replenish groundwater table
The scheme will be implemented from the budget of the Water Resources department.
BHUBANESWAR: The Odisha government will soon launch a scheme called 'artificial recharge to underground acquifer' (ARUA) to replenish the depleting groundwater table in the State. As per a resolution of the Water Resources department, the scheme will be implemented in six semi-critical and 26 approaching semi-critical blocks having groundwater extraction of more than 65 per cent of the entire State at an estimated cost of Rs 49.23 crores over a period of five years from 2022-23 to 2026-27.
The scheme will be implemented from the budget of the Water Resources department. Under the scheme, groundwater recharge shafts will be installed in 2,400 existing tanks. Official sources said maintenance of the structures will be done by Pani Panchayats where available or by the staff of groundwater directorate. In the case of Pani Panchayats taking up maintenance in a block, funds will be provided by the Water Resources department for maintenance. Besides, they will also impart necessary training for taking up maintenance.


Take the 2-minute tour ×
I know the result that says "There is a bijection between distribution functions and characteristic functions".
So I was wondering if there are necessary or sufficient conditions on the characteristic functions so that it is a char. function of a valid random variable. I need conditions that are easy to verify.
For instance, is $\varphi_{X_1,X_2}(x_1,x_2) = (1 + |x_1 x_2| e^{-\frac{(x_1^2 + x_2^2)}2 \sigma^2} )$ a valid characteristic function?
Thank you.
share|improve this question
You might find this interesting – Sasha Sep 29 '11 at 5:16
1 Answer 1
up vote 4 down vote accepted
Bochner's theorem characterizes if a characteristic function corresponds to the random variable, but it's not an easy criterion.
It says that for all $x_1, \ldots, x_m \in \mathbb{R}^2$ and $c_1,\ldots,c_m \in \mathbb{C}$ the characteristic function $\phi$ should verify $$ \sum_{i=1}^m \sum_{j=1}^m \bar{c}_i c_j \phi(x_i - x_j) \ge 0 $$
For the characteristic function in question, choose $m=2$, and $c_1 = -1$, $c_2=1$, and $x_1 = \{1, \frac{1}{2}\}$ and $x_2 = \{ \frac{1}{2}, 1 \}$. Then the resulting sum is $-\frac{1}{2} \exp(-\frac{\sigma^2}{4} )$.
Here is Mathematica code:
In[210]:= \[Phi][{w1_, w2_}] :=
 1 + Abs[w1*w2]*Exp[(-(w1^2 + w2^2)/2)*sigma^2]
In[211]:= With[{cvec = {-1, 1}, xvec = {{1, 1/2}, {1/2, 1}}},
 Conjugate[cvec]. Outer[\[Phi][#1 - #2] &, xvec, xvec, 1]. cvec]]
Out[211]= -(1/2)/E^(sigma^2/4)
share|improve this answer
Thank you. I wanted to make a pair of r.vs that are marginally Normal but not jointly Normal. I know there are standard examples, but I wanted to fabricate one through char functions. Anyway the positive definite condition in Bochners theorem is one hard nut to satisfy :( – Isomorphism Sep 29 '11 at 5:36
_USER_, try $\varphi_{X_1,X_2}(x_1,x_2)=\mathrm e^{-(x_1^2+x_2^2)/2}\cosh(x_1x_2)$. – Did Sep 29 '11 at 5:59
_USER_: Thanks! I was looking for that :) – Isomorphism Sep 29 '11 at 19:28
Your Answer


text:
Downstream users are companies or individuals who use a chemical substance, either on its own or in a mixture, in the course of their industrial or professional activities.
Downstream users have a key role to play in advancing the safe use of chemicals by implementing safe use at their own site and communicating relevant information both to their suppliers and their customers.
Who is a downstream user?
Roles and obligations
Communication in the supply chain
Communication with suppliers
Effective communication between downstream users and suppliers at all stages in the REACH process ensures that relevant information is provided in the supply chain.
Communication with customers
Formulators need to communicate relevant safety information further down the supply chain to their own customers.
Chemical safety assessment
Downstream user chemical safety assessment
Downstream users may choose to carry out a chemical safety assessment if they use a substance outside the conditions described in the exposure scenario provided by the supplier, or if the use is advised against by the supplier.
Downstream user report
Downstream users have to report unsupported uses to ECHA in certain cases.


a clogged nozzle or feeding tube, incorrect extruder temperature settings, or low-quality filament.
extruder skipping
Extruder skipping is a common issue in 3D printing where the extruder motor makes a clicking or grinding sound and the filament fails to move through the nozzle properly. This can cause uneven extrusion, under-extrusion, and ultimately, failed prints. It typically occurs when the extruder motor is unable to push the filament through the hot end due to a blockage or other mechanical issue. Some common causes of extruder skipping include a clogged nozzle, improper tension on the filament, a worn out or damaged gear, or a faulty extruder motor. To fix the problem, the blockage needs to be cleared or the mechanical issue needs to be addressed.
How to diagnose and fix extruder problems
When you encounter problems with your 3D printer extruder, it can be frustrating and disruptive. However, there are steps you can take to diagnose and fix the issue.
One common problem is extruder clogs, caused by foreign debris or leftover filament in the nozzle. To fix this, you can try clearing the nozzle with a small wire or unclogging solution. Another issue is inconsistent filament feed, which could be due to a loose extruder gear or a worn-out drive mechanism. In this case, tightening or replacing the gear, or cleaning the drive mechanism, could solve the problem.
If you are experiencing under-extrusion, it could be due to a clogged or partially blocked nozzle or a problem with the extruder stepper motor. Cleaning or replacing the nozzle or adjusting the motor settings may be necessary. Additionally, filament slipping can occur when the filament is not gripping properly, caused by a loose drive gear or too much tension on the filament. Adjusting the tension or replacing the gear may solve the problem.
Lastly, extruder skipping is when the motor skips steps and causes gaps in the print. This could be due to a motor problem or a misaligned or worn-out drive gear. Adjusting or replacing the gear, or adjusting the motor settings, may be necessary.
Maintenance and Upgrades for Extruders
Maintaining and upgrading your 3D printer extruder can help ensure optimal printing performance and extend its lifespan. One of the most important maintenance tasks for extruders is keeping them clean. Filament residue, dust, and other debris can accumulate in the extruder and cause clogs or uneven extrusion. Regularly cleaning the extruder gears, drive train, and hot end can help prevent these issues.
In addition to cleaning, upgrading your extruder can also improve its performance. Upgrades such as replacing the stock plastic gears with metal ones or upgrading to a dual drive system can provide a better grip on the filament and reduce slipping or skipping. You may also consider upgrading to a more powerful extruder if you frequently print with high-flow filaments or need to increase your print speed. These upgrades can be a cost-effective way to improve the quality and reliability of your 3D prints.
Cleaning and lubrication
You must perform regular maintenance on your 3D printer extruder, including cleaning and lubricating. Lack of lubrication can result in extruder wear and tear, and a dirty extruder might affect print quality.
Remove any extra filament from the gears and nozzle before cleaning the extruder. To get rid of any dust or debris, use a tiny brush or compressed air. Use acetone or isopropyl alcohol as a solvent for tough dirt. It's crucial to exercise caution when using solvent since too much of it can harm the extruder's plastic components.
To maintain smooth functioning after cleaning, it is essential to oil the extruder. On the gears and the filament path, a small amount of lubricant can be applied. Choose a lubricant that is suitable for 3D printing filaments and compatible with the extruder's substance. To avoid it drawing dust and debris, make sure you wipe off any extra lubrication. Your extruder's lifespan can be extended and high-quality prints can be ensured with routine cleaning and lubrication.
Upgrading and replacing parts for better performance
Upgrading and replacing parts of your 3D printer extruder can help you achieve better performance and print quality. One upgrade you can consider is replacing the stock nozzle with a higher-quality one. Nozzles are available in different sizes and materials, and choosing the right one for your application can improve the extrusion process and reduce clogs. A hardened steel nozzle, for example, is better suited for printing with abrasive materials such as carbon fiber or metallic filaments.
Another part you can upgrade is the extruder drive gear. Upgrading to a high-quality drive gear can increase the grip on the filament, leading to better print quality and a reduction in filament slippage. A dual-drive gear system, such as the one used in the E3D Hemera extruder, is even more effective at reducing filament slippage and improving overall extrusion performance. Upgrading the extruder motor to a more powerful one can also be considered, especially if you are experiencing issues with filament skipping or under-extrusion.
In conclusion, upgrading and replacing parts of your 3D printer extruder can significantly improve its performance and print quality. Replacing the nozzle, drive gear, or motor with higher-quality alternatives can help reduce clogs, improve filament grip, and enhance the overall extrusion process.
Calibration and tuning for optimal printing
Calibration and tuning are essential for achieving optimal printing results with your 3D printer extruder. Proper calibration ensures that the extruder is working precisely, and the filament is feeding smoothly without under or over-extrusion. Additionally, it minimizes the risk of clogs and jams in the nozzle, resulting in high-quality prints. One of the most critical calibration factors is the extruder steps per millimeter. It determines how much filament is extruded for a specific amount of motor rotation. The extruder steps per millimeter can vary based on the filament's diameter, extruder gear ratio, and other factors. Calibrating it correctly ensures that the printer can accurately push the correct amount of filament for precise printing.
Other essential factors to consider during calibration include bed leveling, nozzle height, and temperature settings. Proper bed leveling ensures that the printer nozzle is at the correct distance from the print bed, ensuring that the filament adheres to the bed correctly. The nozzle height determines the thickness of each layer, which impacts the print's overall quality. Lastly, temperature settings affect the material's flow and adhesion, so it's important to ensure they are set correctly. With proper calibration and tuning, you can achieve high-quality prints and make the most out of your 3D printer extruder.
Conclusion
In conclusion, the 3D printer extruder is an essential part of the 3D printing process that plays a significant role in the overall print quality. To ensure optimal performance, it is essential to properly maintain and upgrade the extruder as necessary. Cleaning and lubrication are critical steps in maintaining the extruder and prolonging its lifespan. Additionally, upgrading and replacing parts can improve its performance and compatibility with various filaments. Calibration and tuning also play a vital role in achieving optimal printing results. By following proper calibration and tuning procedures, users can achieve high-quality prints with minimal issues.
Overall, selecting the right extruder for your needs and properly maintaining it can make a significant impact on your 3D printing experience. Whether you are a hobbyist or a professional, understanding the common issues that arise with extruders and how to troubleshoot them is essential to achieving successful prints. By staying up to date with the latest upgrades and advancements in extruder technology, users can continue to improve the quality of their prints and explore new possibilities in the world of 3D printing.
Summary of important points
In conclusion, the extruder is a crucial part of any 3D printer, and it is crucial to comprehend its functions, upkeep, and upgrades in order to get the best print quality. With the right troubleshooting skills, common problems like jams, skipping, and blockages can be quickly identified and fixed. The extruder can experience problems and last longer with routine cleaning and lubrication. The performance of the extruder can be considerably enhanced by replacing or upgrading components like the hot end or driving gears, which will lead to faster print times and higher print quality. To get the best printing results, the extruder must be calibrated and tuned.
While there are many extruder alternatives on the market, it is necessary to pick one that is compatible with the system and hot end of your 3D printer. Pricing and affordability are also essential factors, but choosing a less expensive choice over one of higher quality could lead to more issues and costs in the long run. The longevity and performance of the extruder can be extended through proper upkeep and modernization, improving the quality of the printing process.
Final thoughts on 3D printer extruders and their impact on 3D printing technology
Since the beginning of 3D printing, 3D printer extruders have advanced significantly. Technology developments have made 3D printer


Doppler-free saturated absorption spectroscopy
A simple linear absorption spectroscopy experiment is shown at the top of Fig. 3a. The intensity of a monochromatic beam of laser light, passing through a vapor cell, is measured as a function of the laser frequency. When the frequency of the laser matches the frequency of an allowed atomic transition, the photons will excite the atoms in the vapor and the intensity of the transmitted beam will be diminished. A plot of beam absorption as a function of laser frequency will show Doppler broadened absorption features like those seen in the bottom of Fig. 3a.
Figure 3: Comparison of (a) linear saturated absorption spectroscopy to (b) Doppler-free saturated absorption spectroscopy.
For the case of rubidium atoms at room temperature, Doppler broadening of the spectral lines makes the hyperfine features un-resolvable using linear absorption spectroscopy. However, Doppler-free saturated absorption spectroscopy, as illustrated in Fig. 3b, allows one to resolve features normally obscured by the effect of thermal Doppler broadening.
Doppler free saturated absorption spectroscopy uses two overlapping, counter-propagating beams – from the same laser in our case – which we call the probe beam and the pump beam. The intensity of the probe beam is monitored as a function of laser frequency just as is done in linear absorption spectroscopy. In the absence of a pump beam, the probe beam would produce a Doppler broadened linear absorption spectrum. The effect of the pump beam depends on the velocity of the atom along the $z$-axis.
Figure 4: Doppler shifting of probe and pump beams.
First consider the case illustrated in Fig. 4a, where an atom has non-zero velocity relative to the laser, along the z-axis. Since the two beams are counter-propagating one beam will always appear, to the atom, to be red-shifted and the other blue-shifted. Thus, any given transition cannot simultaneously be in resonance with both the probe and pump beams.
Now consider the case in which the atom has zero velocity relative to the laser, along the $z$-axis as illustrated in Fig. 4b. Since there is no Doppler shift, the atom sees both probe and pump beam photons at the same frequency. Thus, it is possible for a given transition to be simultaneously in resonance with both beams. If the laser is tuned to the frequency of a transition and the pump beam is intense enough, it will keep most of the atoms in the vapor in the excited state. (I.e. the pump beam saturates the vapor.) This saturation reduces the number of atoms available to absorb photons from the probe beam and so there is less attenuation of the probe beam than there would be in the absence of a pump beam.
Finally let us examine how both of these cases affect the absorption of the probe beam as the laser frequency is scanned across a Doppler-broadened transition as shown in Fig. 3b. As the laser frequency approaches the atomic transition frequency, the probe beam will be absorbed only by that fraction of the atoms in the vapor whose velocity along the $z$-axis Doppler shifts the probe beam onto resonance. These atoms cannot simultaneously be in resonance with both beams, and so the probe beam will measure the Doppler broadened absorption profile until the laser matches the frequency of an atomic transition. At that point, $f^\prime = f^{\prime\prime}$ and both beams can excite the same population of atoms having zero velocity parallel to the beams. The more intense pump beam will saturate the vapor and the absorption of the probe beam will decrease. As the laser frequency continues past the transition frequency the probe beam will again return to sampling the Doppler broadened spectrum. The result is a dip in the Doppler-broadened spectrum at the Doppler free frequency of the transition. The width of the Doppler free line is just the natural line width of the transition. Recall that the natural line width is related to the lifetime of the excited state by the uncertainty principle as
$\Gamma = \hbar / \tau$ (6)
where $\tau$ is the lifetime of the excited state and $\Gamma$ is the natural line width (in units of energy).
Crossover frequencies
Consider the case when the frequency of the laser $f_L$ is tuned to the midpoint between two transitions with frequencies $a$ and $b$ so that $f_L = \frac{1}{2} (f_a + f_b)$. There will be a subset of atoms whose velocity Doppler shifts the photons in one beam (pump or probe) into resonance with transition $a$ while shifting the photons in the other beam (probe or pump) into resonance with transition $b$. At these frequencies referred to as crossover frequencies, a dip in the Doppler broadened absorption spectra will appear. Thus, an atom with two transitions will exhibit three Doppler-free features, two transitions and one crossover. An atom with 3 transitions will have 3 crossover frequencies as illustrated in Fig. 5.
Figure 5: Energy level diagram for 85Rb showing allowed transitions to the $F = 3$ ground state (solid lines) along with the associated crossover frequencies (dashed lines).


I'm trying to cut a hole in a mesh to create torpedo tubes on a spacecraft, and am running into a bit of trouble. I can get the hole cut out just fine using Knife Project, the problem, however, is that it completely screws with the shading of the mesh.
Here are the target and pattern meshes:
Here's a detail of the pattern that creates the shape of the outer tube:
and the target mesh:
Target with pattern superimposed
Now, as I said I can cut the hole in the target mesh just fine. The problem is, I get this:
Result Result showing polys
As you can see, cutting the hole in the mesh throws off the smoothing of the mesh, leading to some odd shading which is just unacceptable.
I'm trying to do this with as few extra polys as possible.
Prior to cutting the new geometry the transitions are smooth because the shading is a function of the average face normals connected to each vertex. Because each of those adjacent face normals is different as you go around the surface of the object, the transition is relatively smooth. It's a cheap but effective trick.
Once you start cutting into a face, you get new geometry which has a number of vertices which are surrounded by faces which have the same face normals, therefore the shading is 'flat' on those sections. The transition from surrounding faces onto that flat area is also abrupt, and more prominent with transitions between quads and triangles.
Read Blender docs about custom normals
possible solutions
 1. A way out of that is to carefully adjust the positions of the new vertices such that they follow the inferred curvature, this doesn't have to be exact. as long as you get away from the faces all having the same normals on that spot.
 enter image description here The dark area just below the blue arrow indicates the flow that your geometry would need to have (seen from the side of that edited face). If you can move the internal vertices to match the curvature you'll get reasonable smoothing.
 2. or adjust the vertex normals to follow the curvature, but (May 2015) this is not exposed to the UI, but can be scripted. Manual changes might be overwritten by operations such as remove doubles / recalc normals.
 enter image description here
 3. Normal Edit modifier. It takes a vertex group, and an object, and modifies the normals of the vertices in the vertex group to follow as if they eminated from the center of the object (radial) or directionally if you use a mesh object to help guide the normals.
Blender's Proportional Editing feature can help get nice curvature, but you'll have to experiment with it.
 - $\begingroup$ So if I'm reading you right, this means that even though the vertices are aligning properly on the plane of that particular poly, I'll need to move them inwards or outwards to fit the curvature that the smoothing is simulating? $\endgroup$ – Ambaryerno May 9 '15 at 23:13
 - $\begingroup$ The upside of keeping it lowpoly is that any such intervention isn't going to take too long even if you have to manually adjust the verts or faces. That being said: now i'm wondering if there isn't an add-on for this kind of stuff.. $\endgroup$ – zeffii May 10 '15 at 7:25
 - $\begingroup$ _USER_ probably can be fixed with normal edit modifier copying normals from the original model $\endgroup$ – Denis May 10 '15 at 8:15
 - $\begingroup$ I tried using the Normal Edit modifier after turning on Auto-Smooth in mesh options (which it required). However while Radial and Directional fixed the specific problem I was having, it caused serious issues on OTHER parts of the model. The modifier required me to turn on Auto-Smooth in the mesh options, and I noticed that when I switched from Radial to Directional BEFORE setting a target for Directional, the problem instantly went away. So it looks like just turning on auto-smooth corrected everything. However I wanted to touch base before I decided to just leave it at that. $\endgroup$ – Ambaryerno May 10 '15 at 13:55
 - $\begingroup$ Disregard, it was looking ok from some angles but it's definitely not right on others. AND it screws with the Edge Splitting. $\endgroup$ – Ambaryerno May 10 '15 at 14:10
Zeffi mentioned surface normals and shading. Perhaps you want sharp edges where the hull meets the torpedo launcher. This effect is often achieved using an Edge Split modifier for Sharp edges. You have to leave the Sharp Edges checkbox checked, and then mark those edges in the mesh editor (Ctrl-E > Mark Sharp).
Another thing that sometimes causes strange shading is if the surface normals are flipped. You can check that using the 3d View's N-panel Mesh Display > Normals (pick the Face icon).
 - $\begingroup$ Already made sure the normals are correct, and making a sharp edge around the torpedo tube made no difference. $\endgroup$ – Ambaryerno May 12 '15 at 15:20
I ended up turning on Auto-Smooth and then making the transition between the sides of the hull and the bottom (specifically, the edge along the bottom of the poly in which the torpedo tube was cut) sharp, and that fixed it. It's not exactly how I wanted the contour to look, but it works.
enter image description here
 - 4
 $\begingroup$ show an image :) i'm interested to see what was 'acceptable' $\endgroup$ – zeffii May 12 '15 at 15:29
 - $\begingroup$ _USER_ Added. You'll note I made the transition between the sides of the hull and bottom sharp rather than smooth, and that fixed the shading around the corner and tip of the torpedo tube. $\endgroup$ – Ambaryerno May 13 '15 at 22:59
 - $\begingroup$ Great, that does indeed appear to look good. Marking Sharp edges + Auto Smooth. $\endgroup$ – zeffii May 14 '15 at 4:19
 - $\begingroup$ I was actually able to turn off Auto Smooth and just use the Edge Split modifier once I marked that bottom edge sharp. So it definitely had to do with having a smooth transition between the sides and lower hull. $\endgroup$ – Ambaryerno May 15 '15 at 0:19
Your Answer


Configure CPU and Memory for Confluent Platform in Confluent for Kubernetes
Setting proper requests and limits is important for the performance of the Confluent Platform clusters and their applications.
Before configuring CPU and memory resource requirements for Confluent Platform, review Cluster sizing for Confluent Platform for resource allocation planning.
Specify CPU and memory requests
Requests and limits are dependent on your workload. The best practice should follow the minimum requirements for Confluent Platform, and then benchmark and tune if needed to suit your environment.
For more information about CPU and memory resources in Kubernetes, see Resource Management for Pods and Containers.
Confluent for Kubernetes (CFK) allows you to define custom pod resource requirements for Confluent Platform components it deploys. You specify these requirements using the requests and limits properties for components in their custom resources (CR).
spec:
 podTemplate:
 resources: --- [1]
 limits: --- [2]
 cpu: --- [3]
 memory: --- [4]
 requests: --- [5]
 cpu: --- [6]
 memory: --- [7]
 - [1] resources describe the compute resource requirements for this component CR.
 - [2] limits describe the maximum amount of compute resources allowed. Your Confluent Platform component will throttle if it tries to use more resources than the values set here.
 - [3] [6] Limits and requests for CPU resources are measured in CPU units. 1 CPU unit is equivalent to 1 physical CPU core or 1 virtual core.
 Fractional CPU requests are allowed. For example, resources.requests.cpu: 0.5 requests half as much CPU time.
 For CPU resource units, the quantity expression 0.1 is equivalent to the expression 100m, which means "one hundred milli CPU".
 - [4] [7] Limits and requests for memory are measured in bytes.
 - [5] requests describe the minimum amount of compute resources required. If the requests section is omitted, it defaults to limits if that is explicitly specified in the same CR, and otherwise to the values defined for the Kubernetes cluster.
The following example CR specifies requests for 0.25 CPU and 64 MiB of memory. The limits are set to 0.5 CPU and 128 MiB of memory.
spec:
 podTemplate:
 resources:
 requests:
 memory: "64Mi"
 cpu: "250m"
 limits:
 memory: "128Mi"
 cpu: "500m"
Resource definitions for CFK Init Container
CFK does not allow you to configure the resource requests or limits for the Init Container. For each Confluent Platform deployment, CFK sets the following for the Init Container:
resources:
 limits:
 cpu: 500m
 memory: 1Gi
 requests:
 cpu: 100m
 memory: 512Mi
Define Java heap size
In addition to memory sizing, you can configure the Java (JVM) heap size for Confluent components using the configuration override feature (spec.configOverrides.jvm).
For guidance on setting JVM heap size, see the Tuning defaults for containers article.
Auto scale JVM heap size
To auto scale the JVM heap size, make sure UseContainerSupport is enabled, which is the default setting:
kind: Kafka
spec:
 configOverrides:
 jvm:
 - "-XX:+UseContainerSupport"
Set JVM heap size
In the component CR, set MaxRAMPercentage to match the desired JVM heap size in relation to the total memory limit (spec.resource.limits.memory) you set in Specify CPU and memory requests above.
kind: Kafka
spec:
 configOverrides:
 jvm:
 - "-XX:MaxRAMPercentage=<percentage value>"
To use MaxRAMPercentage, you must first remove the existing JVM -Xms and -Xmx settings, using the current memory limits or requests for the pod. When only the pod memory limits value is set, use the memory limits value to remove the setting. When both the memory limits and the requests are set, use the requests value to remove the settings. See below for examples.
For the steps to remove configOverrides settings, see Remove default configuration.
Note
To remove -Xms and -Xmx, specify the value in megabytes (M) or gigabytes (G). Mebibytes (Mi) or gibibytes (Gi) are not supported.
The following examples show the JVM MaxRAMPercentage set to 50% of the memory and auto-scaling enabled.
Example 1: In this example, only limits is set (4Gi) for the pod. To remove the -Xmx and -Xms, specify the pods memory limit, such as ---Xmx4G and ---Xms4G.
apiVersion: _URL_
kind: Kafka
metadata:
 name: kafka
 namespace: confluent
spec:
 podTemplate:
 resources:
 limits:
 memory: "4Gi"
 configOverrides:
 jvm:
 - "---Xmx4G" # This removes -Xmx parameter
 - "---Xms4G" # This removes -Xms parameter
 - "-XX:+UseContainerSupport"
 - "-XX:MaxRAMPercentage=50.0"
Example 2: In this example both limits and requests are set for the pod. To remove the -Xmx and -Xms, use the pods requests memory, such as ---Xmx2G and ---Xms2G.
apiVersion: _URL_
kind: Kafka
metadata:
 name: kafka
 namespace: confluent
spec:
 podTemplate:
 resources:
 limits:
 memory: "4Gi"
 requests:
 memory: "2Gi"
 configOverrides:
 jvm:
 - "---Xmx2G" # This removes -Xmx parameter
 - "---Xms2G" # This removes -Xms parameter
 - "-XX:+UseContainerSupport"
 - "-XX:MaxRAMPercentage=50.0"
For more details about the configuration overrides feature, see Configuration overrides.


text:
Kitchen Cart Craigslist was published on March 13, 2017 at 5:45 pm. It is published at the Kitchen category. Kitchen Cart Craigslist is tagged with Kitchen Cart Craigslist, Kitchen, Cart, Craigslist..
Kitchenkitch•en (kich′ən),USA pronunciation n.
- a room or place equipped for cooking.
- culinary department;
cuisine: This restaurant has a fine Italian kitchen.
- the staff or equipment of a kitchen.
- of, pertaining to, or designed for use in a kitchen: kitchen window; kitchen curtains.
- employed in or assigned to a kitchen: kitchen help.
- of or resembling a pidginized language, esp. one used for communication between employers and servants or other employees who do not speak the same language.
Cartcart (kärt),USA pronunciation n.
- a heavy two-wheeled vehicle, commonly without springs, drawn by mules, oxen, or the like, used for the conveyance of heavy goods.
- a light two-wheeled vehicle with springs, drawn by a horse or pony.
- any small vehicle pushed or pulled by hand.
- [Obs.]a chariot.
- on the water cart, See wagon (def. 12).
- put the cart before the horse, to do or place things in improper order;
- to haul or convey in or as if in a cart or truck: to cart garbage to the dump.
- to drive a cart.
- cart off or away, to transport or take away in an unceremonious manner: The police came and carted him off to jail.
The blog post about Kitchen Cart Craigslist have 4 images including Kitchen Islands For Sale Craigslist 2016 Kitchen Ideas Amp Designs, Kitchen Cart Craigslist, I Have This Tea Cart $11 On Craigslist SCORE! Will Make An Awesome Coffee Station, Used Kitchen Cabinets Craigslist, Used Kitchen Cabinets Craigslist Suppliers And Manufacturers At Alibaba.com. Below are the photos:
One of many things that specify the Kitchen Cart Craigslist's wonder could be the room's style. One of many designs that we must attempt could be the bohemian fashion. Even though the Bohemian empire is definitely extinct, the tastes of the world group within this design however haven't passed. Particularly when you incorporate it with a minimalist style that is straightforward, but still cross eyed.
Not all things Kitchen Cart Craigslist within the classification. Bohemian style bedroom is not exactly like decorating style cheerful adolescentis area. Bohemian favor solid American racial character and feminism. Do not forget to place two potted indoor crops or one in the bedroom. Flower may die. But, it'd be better if live plants are used by you being a language- in-law flowers, hanging or dangling.
This really is it room decor style Bohemian that is minimalist. Simple steps to execute boho chic will be to present your fashion accessories. Necklaces, bracelets, earrings and connections are usually located in a container, wear it a hook. It could be on the wall hanger or around the table. Picture flowered or ethnic motifs in radiant shades is likely to make gorgeous and your room suddenly boho.
Related Images on Kitchen Cart Craigslist
- Wooden Corner Desk
- What Color Walls Go With Blue Furniture
- Pebble Tile Bathroom Floor
- Cabinet For Kitchen Sink
- Desk In Living Room
- Warm Inviting Living Rooms
- Furniture Stores In Manhattan Ks
- Wooden Toilet Paper Holder
- 3x3 Ceramic Tile
- Lounge Pillows For Floor
- Corner Wall Units For Living Room
- Wall Rock Tile
- What Is Regency Style Furniture
- Harris Floor Covering
- Fell On The Floor
- Garden Candle Lanterns
- Angel Garden Statues
- Red Kitchen Cabinet Knobs
- Musty Basement Solution
- Kitchen Aid Toaster Oven
- White Wax For Furniture
- Best White Paint For Furniture
- New Garden Hotel
- 30 Inch Wooden Bar Stools
- Purpose Of A Floor Plan


text:
In Ubuntu (and any other Ubuntu-based distro), when you use a "sudo" command, the system will prompt you for your password. After the first "sudo" command, the system will remember your password for the next 15 minutes so you don't have to enter any more password for subsequent "sudo" command. If, however, you feel that the 15 minutes is a bit too long/short, here is how you can change it.
1. Open a terminal and type:
2. In the file that open, scroll down till you see the line:
Change it to
Defaults env_reset, timestamp_timeout=X
where X is the time (in minutes) that the sudo password will timeout. You can set X to the value you want.
- If you set X to "-1", it will revoke the password prompt, which is not advisable.
- If you set X to "0", the system will prompt you for password everytime you use the "sudo" command
3. Press "Ctrl + x" to exit. Don't forget to press "y" to save the changes.


text:
[For immediate release]
Rail sector deploys EMSOL platform to understand air quality impact
EMSOL and East-West Rail Alliance (EWRA) are collaborating to deploy the EMSOL platform at Bletchley railway station part of the new East-West Railway line. In addition, consortium partner Network Rail will be extending the EMSOL platform to include Birmingham New Street station. This is a first of its kind service to mitigate and drive change around air and noise pollution benefiting rail passengers, staff, and the general public. The EMSOL platform will be deployed to monitor the railway activity and the impacts of rail construction during the £1.5 billion rail program to reconnect Cambridge and Oxford.
Freddie Talberg CEO and co-founder of EMSOL said "Innovation is a key driver for a cost-effective change and a new way of working that needs to happen in the air quality and pollution space. We are excited to push new boundaries with EWRA and this will be a great example of how industry can work effectively with smaller business to make an impact – huge thanks to the EWRA team to support EMSOL and this opportunity'. Solving air quality issues is a massive challenge shared by governments, regulators, local authorities and businesses. It is a problem across both road transport and the rail sector which can generate high levels of harmful NOx and PM emissions.
EMSOL will collaborate with East West Rail Alliance (EWRA) (an alliance of Volker Rail, Network Rail, Laing O'Rourke and Atkins) who is responsible for the £1.5 billion rail program that will reconnect Cambridge and Oxford in one of the most prestigious projects in the UK infrastructure pipeline. The government has committed to invest £40bn in the UK rail infrastructure between 2019-2024.
The deployment in Bletchley and Birmingham New Street station railway station will demonstrate the value of EMSOL's real-time continuous air quality monitoring. Introducing pollution attribution to understand who and what is causing a breach of air quality and drive interventions in pollution in real time. Rail passengers, staff, and those living close to stations will benefit from a service that is engaged and focused on prioritising environmental impact.
About EMSOL – Founded in 2017, EMSOL (www.emsol..io) is a data-focused air and noise pollution monitoring solution that enables businesses to drive interventions based on live data to reduce transport pollution – which is a full service offered called 'Emissions as a Service'.
For further information, please contact:
Ben Fielden – _EMAIL_
Tel: _PHONE_ 9440


top bar
Difference between revisions of "Well Plate Plugin"
m
(Example Micro-Manager BSH Script)
Line 79: Line 79:

 // setting first and last well is optional if you want to define a smaller region.

 // setting first and last well is optional if you want to define a smaller region.
 setFirstWell(1,1); // can't be less than 1, or greater than setLastWell();
+
 plate.setFirstWell(1,1); // can't be less than 1, or greater than setLastWell();
 setLastWell (12,8); // X = 12 and Y = 8 is maximum value for 96 well plate and correspond to well H12
+
 plate.setLastWell(12,8); // X = 12 and Y = 8 is maximum value for 96 well plate and correspond to well H12

 for (m = 1; m <= numberOfWells; m++) {

 for (m = 1; m <= numberOfWells; m++) {
Revision as of 09:28, 14 March 2011
Description
Designed to handle standard SBS well plates from 24, 96, 384 and 1536 wells.
The plugin will calculate the correct coordinates for each well position. You can then iterate through each well, starting at the first well. You may either zero position of the XY stage on the microscope for the center of well A1 to coordinates to {0,0} or you can pass the X and Y offsets.
The plugin will move the stage down or up each column, until the last row, before moving to the next column and reversing direction. The zig-zag path chosen for moving the stage is the fastest path on an Zeiss AxioObserver Z1.
You can change the starting well, or the ending well to only work on a subregion.
Setup
big.jar must be installed and imported into the bsh script.
addClassPath("Big.jar");
import edu.umassmed.big.SBSPlate;
Todo
Currently the plugin only supports moving to the center of each well. I want to add functionally to move within a well. I haven't decided on the best way to do this yet.
Class Functions
Most functions expect well positions in X, Y coordinates, where X is the long axis, and Y is the short axis of the well plate. X might have a range from 1 to 48 and Y might have a range from 1 to 32, depending upon plate size. Functions with Position in the name return coordinates in microns relative to well A1 plus an offset.
SBSPlate()
Initializes the plugin and uses 96 as the size of the well plate.
SBSPlate(int size)
Initializes the plugin for use with well plate of a set size. Acceptable sizes are 24, 96, 384, and 1536. Assumes Well A1 is at
coordinates 0,0.
SBSPlate(int size, double X, double Y)
This also sets the X and Y stage coordinates of well A1. Only use one initialization SBSPlate();
void setFirstWell(int x, int y)
Changes the starting position from {1,1} to {x,y}, assuming 96 well plate. Index is 1 based. X is the long dimension, and Y is the short dimension of the well plate. For example, setFirstWell(1,2) would start at well B1.
void setLastWell(int x, int y)
Changes the ending position from {12,8} to {x,y}. Index is 1 based. X is the long dimension, and Y is the short dimension of the well plate. For example, setLastWell(10,7) would finish at well G10.
double[] getWellPosition (int x, int y)
Returns the absolute position in microns relative to well A1. Calling X and Y is 1 indexed but returns X and Y 0 indexed position in microns.
String getWellLabel(int well)
Returns the SBS name of the well as a String formatted as letter and number. For example, A01. If you are only using a subregion, then you only need to pass the well number of that subregion, with well 1 being the start of the subregion. The function will calculate the correct SBS label of that subregion based on where that subregion is on the well plate.
int getNumberOfWells()
Returns the number of wells in the entire plate, or the number of wells in a subregion.
double[] getNextPosition()
Returns the {x,y} coordinates in microns of the next well. If at the last well, it will return the first well's coordinates.
Example Micro-Manager BSH Script
import edu.umassmed.big.SBSPlate;
gui.closeAllAcquisitions();
gui.clearMessageWindow();
xystage = mmc.getXYStageDevice();
double[] position = {0,0}; // 0 indexed in microns.
//
// Well A1 should be centered with the objective.
// You can zero your stage, or use the X and Y offsets for well A1
//
// This assumes Well A1 is zeroed
mmc.setXYPosition(xystage,position[0],position[1]);
mmc.waitForDevice(xystage);
//
// This assumes Well A1 has an X and Y offset
//
double startX = mmc.getXPosition(xystage);
double startY = mmc.getYPosition(xystage);
// Pass the well plate type, and optionally pass the X and Y micron offset of well A1
SBSPlate plate = new SBSPlate(96,startX, startY);
numberOfWells = plate.getNumberOfWells();
// setting first and last well is optional if you want to define a smaller region.
plate.setFirstWell(1,1); // can't be less than 1, or greater than setLastWell();
plate.setLastWell(12,8); // X = 12 and Y = 8 is maximum value for 96 well plate and correspond to well H12
for (m = 1; m <= numberOfWells; m++) {
 // code to take an image could be here
 // move the stage to the next well
 position = plate.getNextPosition(); // 0 indexed in mcrons
 mmc.setXYPosition(xystage,position[0],position[1]);
 mmc.waitForDevice(xystage);
}
// return stage to starting position, either to {0,0} or {startX, startY}
mmc.setXYPosition(xystage,startX,startY);
mmc.waitForDevice(xystage);
--Karl Bellve, Biomedical Imaging Group, University of Massachusetts 20:02, 9 February 2011 (UTC)
© Micro-Manager : Vale Lab, UCSF 2006-2011 | All Rights Reserved | Contact


A A measure of PC gaming performance that includes frame drops.
Average Fps don't tell the whole story. High average Fps can be accompanied by stuttering which results in a poor overall gaming experience. Effective Fps (EFps) measure gaming experience using both average Fps and frame drops. Frame drops are quantified using the following four statistics:
0.1% and 1% Lows (Avg|Max)
To calculate the 0.1% low all the frames in a sample are sorted from slowest to fastest. For a 60 second sample, the frames in the first 0.1%: 60s * 0.1% = 60s/1000 = 0.06s are used to determine the 0.1% low. The average and maximum Fps of those (slowest) frames are the Avg|Max 0.1% lows. A similar calculation is used for the Avg and Max 1% lows. (download example calc spreadsheet )
EFps vs Fps
For most games EFps are similar to average Fps (e.g. GTAV). Where frame delivery is very consistent EFps are higher than average Fps (e.g. Overwatch). Where frames are relatively inconsistent EFps are lower than average Fps (e.g. CSGO). EFps incorporate and improve upon average Fps as a measure of real world playability.
Bottlenecks
PC components are similar to links in a chain: weak components bottleneck the whole system. For example: an AMD Ryzen 3700X bottlenecks an Nvidia 2070 Super. The 3700X costs 40% more money for 11% less performance. The lost performance is similar to downgrading from a 2070S to a 2060S. Publishing EFps data puts UserBenchmark in conflict with the marketing from billion dollar corporations, but it also helps our users to build faster PCs by dodging marketing traps. Users can verify EFps figures with Afterburner
EFps Benchmarks
The Best.
CPUGPUSSD
Intel Core i5-9600K $195Nvidia GTX 1660S (Super) $230Crucial MX500 250GB $45
Intel Core i5-9400F $155Nvidia GTX 1650S (Super) $170Samsung 850 Evo 120GB $78
Intel Core i7-9700K $340Nvidia RTX 2070S (Super) $510Samsung 860 Evo 250GB $50
HDDRAMUSB
Seagate Barracuda 1TB (2016) $39Corsair Vengeance LPX DDR4 3200 C16 2x8GB $69SanDisk Extreme 64GB $72
WD Blue 1TB (2012) $34Corsair Vengeance LPX DDR4 3000 C15 2x8GB $69SanDisk Extreme 32GB $46
Seagate Barracuda 3TB (2016) $85G.SKILL Trident Z DDR4 3200 C14 4x16GB $681SanDisk Extreme 16GB $24
Today's hottest deals
About • User Guide • FAQs • Email • Privacy • Developer • YouTube Feedback


text:
With even more entries and more vocabulary words, this second edition of Pevsner's Architectural Glossary covers the complete range of technical terms used in the storied guides.Â Pevsner's famous designations E. E. and Perp. are among the terms clearly explained in this informative glossary drawn from the vocabulary of the Buildings of England, Scotland, Wales, and IrelandÂ volumes. Anyone who has wondered how a headstop relates to a hoodmould or what a squich looks like will find their understanding and enjoyment of architecture enhanced by knowledge of its components, styles, and ornament.Â This clear and practical primer to looking at all the elements of buildings will enliven any architectural exploration.
|Dimensions||21.6 × 12.1 × 2 cm|
144 , 32 unnumbered of plates
Professional and scholarly / Code: H