Not quite.
There is no way to start at some node N and cycle back again to N.
(Polytree actually —directed tree)
A commit contains a snapshot of the files at a given point in time.
Wait a second...
They might be the same. But they mean different things.
But enough of this, it's just metadata.
$ echo 'testing blobs' > some-file.txt
$ git hash-object -w some-file.txt
d675fa44e50606caa705c3f48de02cf129c7f9a2
$ find .git/objects
.git/objects
.git/objects/d6
.git/objects/d6/75fa44e50606caa705c3f48de02cf129c7f9a2
As we can see, git now has a blob with our file's content.
This will be v1 of some-file.txt.
echo 'a new line' >> some-file.txt
$ git hash-object -w some-file.txt
1aeaedbf4ee8dccec5bc2b1f1168efef19378ffd
$ find .git/objects
.git/objects
.git/objects/1a
.git/objects/1a/eaedbf4ee8dccec5bc2b1f1168efef19378ffd
.git/objects/d6
.git/objects/d6/75fa44e50606caa705c3f48de02cf129c7f9a2
Now we have both versions of our file.
$ git cat-file d675fa44e50606caa705c3f48de02cf129c7f9a2
testing blobs
$ git cat-file 1aeaedbf4ee8dccec5bc2b1f1168efef19378ffd
testing blobs
a new line
Restoring the first version
$ git cat-file d675fa4... > some-file.txt
Now the second one
$ git cat-file 1aeaedb... > some-file.txt
Of course this is ridiculously impractical, but is (a really simplified version of) what Git does under the hood.
| Mode | Type | Hash | Name |
|---|---|---|---|
| 100755 | tree | 05fd5a3 | src |
| 100644 | blob | d3ef0cc | README.md |
The purpose is to detect changes that may be introduced to a file. Willingly, by editing, or unwillingly, caused during data transmission or storage (file corruption).
And the resulting hash is used to identify each of this objects.
This also means...
The working directory are your files at a given point in time (commit). These are the files you work on.
The staging area (AKA The Index) is a pre-commit stage that you use to add the changes to be commited next.
The remote repository is a copy of your local repository in some other machine.
When you clone a repository you're downloading a copy of it.
It will remember where's the original, to know where it should fetch from and push to. This will be called origin by default.
A branch is simply a pointer to a commit.
Git will automatically point the current branch to new commits as you go.
There's a special pointer called HEAD. And it's just a pointer to the current branch.
Note: checking out '94a87f75a'.
You are in 'detached HEAD' state. You can look around, make
experimental changes and commit them, and you can discard any
commits you make in this state without impacting any branches by
performing another checkout.
If you want to create a new branch to retain commits you create,
you may do so (now or later) by using -b with the checkout
command again. Example:
git checkout -b new_branch_name
HEAD is now at 94a87f7... Added readme
The detached HEAD state happens when you check out a commit or a tag that is not the latest in the branch, i.e. your HEAD no longer points to a branch.
Git will let you make new commits, creating a tangent in history, which you can keep by creating a new branch, or discard, by checking out another branch.
Remote-tracking branches are local references to the state of the branches in the remote(s).
They can't be moved, that is done automatically by Git when you push or fetch.
Phew! We've covered the basics! But it's not over...
Besides commit...
But you need to get this right, otherwise...
YOU'RE GONNA HAVE A BAD TIME
$ git pull merge
$ git pull --rebase rebase
Fetch updates the remote-tracking branches to reflect the state of the remote branches
Bringing new commits along, if there are any.
We have the new commits, and the updated remote-tracking branches...
We need to update both!
$ git checkout master
$ git merge origin/master
Updating f0dde76..5d6ee4c
Fast-forward
index.html | 2 ++
1 file changed, 2 insertions(+)
When the history between two branches doesn't diverge, Git can just move the pointer of your local branch forward.
$ git merge hotfix
Merge made by the 'recursive' strategy.
index.html | 1 +
1 file changed, 1 insertion(+)
$ git rebase origin/master
First, rewinding head to replay your work on top of it...
Fast-forwarded master to origin/master.
Using rebase or merge when the history has not diverged will both result in a fast-forward.
Unless --no-ff flag is passed.
$ git checkout hotfix
$ git rebase master
First, rewinding head to replay your work on top of it...
Applying: The commit summary here
origin/master branch and the remote's master branch are the same.
But we have new local commits waiting to be pushed.
$ git push
Counting objects: 11, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (9/9), done.
Writing objects: 100% (9/9), 1.16 KiB | 0 bytes/s, done.
Total 9 (delta 6), reused 0 (delta 0)
To git@github.com:xFlatlinex/Git-Talk.git
ef29a87..ae798ab master -> master
Now the remote is up to date with our changes
$ git push --force
We will rebase master from ticket
We have introduced a change before our master changes.
So the original changes are still there. But the local history is now completely different.
It is never safe, but with proper coordination with your team mates it can go painlessly.
$ git pull <remote> <remote ref>[:<local ref>]
$ git push <remote> <local ref>[:<remote ref>]
ref is the path to the object as it is found in the .git/ directory, for example: refs/heads/master or refs/tags/some-tag.
$ git push -u origin refs/heads/branch:refs/heads/branch-alt
Total 0 (delta 0), reused 0 (delta 0)
To git@github.com:user/repo.git
* [new branch] branch -> branch-alt
$ git push origin branch-local:branch-remota
$ git push origin branch-x:branch-x
Even shorter!
$ git push origin branch-x
We could say
$ git push <to which remote> <which local branch>:[<to which remote branch>]
$ git pull <from which remote> <which remote branch>:[<to which local branch>]


NSHipster posted a great article on using GYB to reduce boilerplate in your Swift projects, but I found the suggestion of how to integrate with Xcode via a Build Phase a bit loose and messy (at least in terms of littering your project directory with generated files).
I’d suggest you have a look at creating a custom Build Rule instead - this will have the advantage of outputting the generated Swift files to a directory outside of your project (therefore leaving your Git status clean during CI and other automated processes).
Here’s what you need to do:
Do exactly as Mattt suggests in his article and download the GYB scripts into your project directory:
$ mkdir Scripts
$ cd Scripts
$ wget https://github.com/apple/swift/raw/master/utils/gyb
$ wget https://github.com/apple/swift/raw/master/utils/gyb.py
$ chmod +x gyb
Use the small + button to add a new Build Rule, then configure it as follows:
*.gyb
Using Custom script:, using the following script:
"${PROJECT_DIR}/Scripts/gyb" --line-directive '' -o "${DERIVED_FILE_DIR}/${INPUT_FILE_BASE}" "${INPUT_FILE_PATH}"
Add one entry to Output Files:
$(DERIVED_FILE_DIR)/$(INPUT_FILE_BASE)
.swift.gyb
Scripts/gyb.pyc
to your .gitignore
file.Build your project. You can check that the output of your GYB is as you expect by navigating to the DERIVED_FILE_DIR
directory. This is usually some variation of the following:
~/Library/Developer/Xcode/DerivedData/YOURPROJECT-ID/Build/Intermediates.noindex/YOURPROJECT.build/Debug/YOURTARGET.build/DerivedSources/
Alternatives: You could consider integrating Krzysztof Zabłocki’s Sourcery instead of GYB - it provides much the same result in a similar template format, but has a bunch of well documented examples and tutorials available.


Getting started
An overview of Pengines, how to download, install and use.
An overview of Pengines, how to download, install and use.
First, ask yourself whether you really need to download and install the Pengines platform at this time. The platform is designed to allow online interaction with Prolog running in the cloud, and if you just want to check it out, you can probably do so without downloading and installing your own instance of the Pengines server. Indeed, you can skip this entire page and quickly move on to the fun parts, the Scratchpad and the SWISH applications. The only area that you will not have access to is the password protected Pengines Administrator.
If on the other hand you want to develop a serious application on top of the Pengines platform, you will need access to the apps directory and the Administrator pages, and thus need to download and install the whole distribution. Allowing access to the Pengines server from localhost
only is of course safe, but if you are thinking about opening up to the rest of the world, please consider the following safety information:
We cannot at this time guarantee the safety of the Pengines platform. We think it is safe, but only if you know what you are doing. You run it at your own risk!
Download the latest full source code.
Basic installation merely requires installing a recent version (>= 7.1.5) of SWI-Prolog and unpacking the Pengines platform below.
Start run.pl
as ./run.pl
on Unix or double-click run.pl
on Windows and direct your browser to the indicated address (default
is http://localhost:3030/). You are now looking at the Pengines home page and should be able to use Scratchpad and SWISH and run all the examples. If you click Admin on the home page, you will be asked to enter a user name and a
password, and if this is the first time you use Pengines you should use "admin" for both. You will end up on the Server settings page.
You most likely want to change the admin password right away. Clicking the Account link will get you to a page that will allow you to do just that.
The Pengines Administrator is a password protected area that allows the owner of a Pengines server instance to change the settings of applications as well as of the server itself. It also features a statistics page where statistics of the workings of the systems is presented as well as an account page where the admin password can be changed.
The Pengines Administrator's server settings page gives an overview of various settings related to the operation of the server. This is where you set the various timeouts related to the system.  Here is a picture of the Server settings page:
The Pengines Administrator's application settings page is where the settings for pengines run by individual applications can be inspected and changed. Here is a screen dump depicting the application settings page:
The Pengines Administrator's statistics page gives an overview of various statistics related to the operation of the server. Here is a picture of the Statistics page:
Note that the Statistics page is available from the Pengines home page as well. If you prefer not to show it there you will need to comment out the relevant links in the files docs/index.html, docs/getting_started.html and docs/documentation.html.
The Pengines Administrator's account page allows you to change the admin password. Here is a picture of the Account page:


Suppose in lab, I say to do "SRM 564, D2, 250-pointer". This is how you do it. I'm assuming that you already have a topcoder account. First, go to www.topcoder.com/tc. The upper lefthand corner of the web page will look like:
Click on the "O(n)," and it will launch the competition applet. That may require you to download some Java software. Go ahead and do what you have to do. Once you log in, you'll be in the main lobby with a window like this:
Click on "Practice Rooms", then "SRMs", and then find "SRM 564," just like I do below. The SRM's are numbered consecutively, so it shouldn't take you too long to find the right one:
That will bring you to the competition arena for SRM 564, D2 ("SRM" stands for "single round match."). Each SRM has two divisions. Division one is hard, and division two is easier. In this class we'll focus on D2 problems for the most part. Now, the "Select one" drop box typically has three problems to try, with differing point values -- below, I'm choosing the 250-point problem:
This pops up a new window which you may have to mess with to see everything. However, it will have two sub-windows. One has a problem description, and one has a programming area:
The problem statement tells you what problem to solve. In this one, you'll be given a string, and you need to state whether it is a palindrome, a "faux" palindrome, or neither. If you scroll the top sub-window, you'll see a "Definition".
What this says is that you need to define a C++ class called FauxPalindromes, and that class needs to have a public method called classifyIt. It will have one parameter, which is the input string, and it must output a string.
If you scroll further, you'll see "Constraints," which tell you constraints on the input. The constraints are often helpful for finding a solution. Then after the constraints, you'll see "Examples":
The examples are usually very helpful, but beware of proof-by-Cosmo. It's very easy to get all of the examples right and still have a program that's wrong.
Now, you want to start coding. The first thing you need to do is define the class and the method, and then below that, implement the method. I do that below. My program isn't correct, but I just want to get something compiling. I personally don't like to implement methods inside my class definition. That's why my implementation is below the definition:
You'll also notice that I've changed the name of the parameter twice. In the problem description, it's "word." In my class definition, it's "s" and in my implementation, it's "w." That's perfectly fine -- as long as the types match the definition, I can name them anything I want.
I click "Save", to save the program on topcoder's server, and then "Compile" for topcoder's server to compile the program. My compilation doesn't work:
String doesn't name a type? Oh -- I forgot my include statements. I fix that and my compilation still fails. You can see my include statements there behind the "compile result" window:
I have a bug on line 10, and I can't really read what it is. When I enlarge the "compile result" bug, I see the whole thing:
This is one of those frustrating bugs when you're just starting out. It says that ClassifyIt is not defined in the class, but it looks as though I've defined it. The problem is that I've capitalized the "C" in my implementation, but not in the class definition. I go back to the "Problem Statement" window and see that the "C" should be lower case, so I fix it.
Now I compile, and I still get the warning that I'm not not using w, but that's ok -- I just want to get something compiling. After you have successfully compiled, you can test your program with "Test." That allows you to test each example, and you can enter your own input if you want as well. Here, I get ready to test Example 0:
I click OK, and it shows me the results:
I got it right!!!! That's just because ANA happens to be a palindrome. Obviously, if I try example 1 it will fail. You'll also note that it tells you execution time -- your program has to run in under 2 seconds. That can be a challenge with some programs, but not this one.
Ok -- I program up a solution with the following strategy (which is incorrect, by the way). I'm going to create a string t, which is created from the non-repeating characters of w. I'll test t to see if it's a palindrome. If not, I return "NOT EVEN FAUX." If it is, then I test to see if t equals w. If so, then the original is a palindrome, so I return "PALINDROME." If t doesn't equal w, then it's "FAUX."
You'll note that I have a cout statement that prints w and t. Topcoder ignores print statements, which is nice. It compiles with no warnings or errors:
It works fine on examples 0 and 1 -- here's the output window of example 1. You can see the my cout statement there in "Standard Output":
Since Topcoder competitions are timed, I decide that my program has to be right, so I click "Submit" and submit it. It tells me that I received 213.41 points!!
Now, just because submission is sucessful doesn't mean that your program is correct. You need to close your program window and click on "Run System Test," which is under "Practice Options:"
Now the Topcoder servers run a battery of tests on your program, and if any test is incorrect, you get a zero. It's hard on the self-esteem, and it's what has just happened to me:
Looks like I've got a few cases wrong. You can double-click on any of the test cases, and it will tell you the input, the expected output and your output:
Yup. That should have returned "FAUX." Test case #3 happens to be an example, so I reopen the programming window and test example 3:
Hmmm. T looks correct, and it is indeed a palindrome. What gives? When I probe further, I realize that I'm testing w[i] and w[j] inside my while loop, when I should be testing t[i] and t[j]. Duh. So, I fix it, test example 3, and submit:
You can see the bug fix there in the coding area. I'm going to be assessed a 10% resubmission penalty. So it goes:
177.22 isn't that bad. I close the window and run the system test again:
DANG IT!!!! I double-click test case 4 and see the following:
Oh. If the original is a palindrome with repeated letters, you need to report that as a palindrome and not a faux palindrome. My fix for this is, in my opinion, inelegant. Before constructing t, I simply test to see if w is a palindrome:
Compile, test, submit. Yes, another 10% penalty:
That's a sucky score for such an easy program. Whatever.
After a few seconds of anxiety, I see that the system test has passed:
YAY!
Topcoder problems utilize two skills: problem solving and programming. Typically, the hard part is the problem solving, and often pencil and paper are better tools for solving the problem than a computer. When you've solved the problem, you have to program it. For me, that part is usually trivial once I've figured out how to solve the problem. For you, it will be harder, because you are learning, but I want you to get practice. This is why we do Topcoder in labs.
A final caveat. Topcoder has two flaws as a teaching device. The first is that you're so focused on speed that you write icky programs. For example, in the program above, I should have written a palindrome testing procedure. Then I could call it on w, then if necessary create t and call it on t. That would be cleaner, and it would be less bug prone because I'm not writing two separate palindrome testers. I'm not too worried about this flaw. You should know when you're writing bad code for speed, and when you should slow down to write good code. I.e., your homeworks should have good code.
The second flaw is that you have a mistake, and instead of slowing down to figure it out, you simply make random changes to your program until it passes the system test. When you do that, you are not learning anything, so I really want to recommend that you don't do it. Slow down, and figure out what's wrong.


--- layout: minimal title: "About me" permalink: /about/index.html description: "Some description about Victor Igor..." ---
I'm a PhD candidate at the University of Western Australia in the Human Factors Laboratory. My research project investigates the cognitive mechanisms that underlie performance in safety-critical complex jobs, such as air traffic control, with a particular focus on interruption, workload, and prospective memory. I have a strong interest in reproducible research methods and statistics, and recently I have been applying Bayesian methods and reproducible research practices to my own work. Currently, I am trying to focus my free time on GNU/Linux, "big data", and machine-learning. Feel free to get in contact with me or read more about my services.


keyboard_backspace
Idea Vault
Create an account to start keeping track of your valuable ideas!
Upload a profile picture from the internet (link to image file)
Create Account
Already have an account


Playground built by José Padilla.
The recommended line length in Black is 88 characters. We adjusted it to 60 here to better illustrate line wrapping behavior.


Turn autoplay off
Turn autoplay on
Please activate cookies in order to turn autoplay off
Jump to content [s]
Jump to site navigation [0]
Jump to search [4]
Terms and conditions [8]
Mobile site
Sign in
Register
Text
larger
·
smaller
About Us
About us
Contact us
Press office
Guardian Print Centre
Guardian readers' editor
Observer readers' editor
Terms of service
Privacy policy
Advertising guide
Digital archive
Digital edition
Guardian Weekly
Buy Guardian and Observer photos
Subscribe
Today's paper
The Guardian
G2 features
Comment and debate
Editorials, letters and corrections
Obituaries
Other lives
Sport
Subscribe
Zeitgeist
Today's hot topics
guardian.co.uk
Community
Web
News
Sport
Comment
Culture
Business
Money
Life & style
Travel
Environment
TV
Video
Community
Blogs
Jobs
Community
Community standards
Talkboards
Community FAQs
User help FAQs
Inside guardian.co.uk
Zeitgeist
[PLACEHOLDER]


I designed, built and executed an investigation in the effects of varying rocket nozzle neck lengths on laminar flow.
I used Poisson distribution to predict soccer match results for Chelsea FC in the 2014-15 Barclays Premier League season.
Masoom Education is a Non-Profit Organization that assists night schools in India. I developed a website for them that is currently being implemented that will help them reach a larger audience.
I explored the Concorde, the first supersonic passenger airplane, and made aerodynamic improvements to it, virtual simulating the results.


building interactive cli tools
but... you know... 🌟 smarter 🤓
@mafintosh 🇩🇰
author of 650+ modules
write lots of cli apps
cli apps are neat
🧚🏻 lightweight
🤖 automatable
run them on other computers using ssh
node was made for server apps 🖨
but is actually great for cli 💻
#!/usr/bin/env node
console.log(
Number(process.argv[2]) +
Number(process.argv[3])
)
what about long running programs? 🏃♀
setInterval(function () {
console.log('time is ', new Date())
}, 1000)
2018-03-30T15:16:07.831Z
2018-03-30T15:16:08.844Z
2018-03-30T15:16:07.831Z
2018-03-30T15:16:08.844Z
2018-03-30T15:16:09.829Z
we're gonna need a bigger screen 🤔
would be cool to update the text in-place.
ANSI to the rescue ⛑
ANSI is magic chars you can print to make your terminal ... do stuff
'\033['
+ {ansi-code}
\033[5m\033[0m
setInterval(function () {
console.log('\033[2Jtime is ', new Date())
}, 1000)
npm install single-line-log
const log = require('single-line-log')
setInterval(function () {
log('time is ' + new Date())
}, 1000)
simple, easy, works
updating the screen is expensive 💸
leads to bad ux
breaks copy-paste
(demo)
solutions
make component based frameworks
ncurses etc
great, but lots of buy in
web frontend had the same journey
remember jquery ui?
lots of state, lots of coupling
today most webdev uses a virtual dom
react
render your entire application virtually
diff with the dom, make minimal updates
made things easy to write
easy to test
fast enough 🤷
back to cli
virtual dom is just a string
use ANSI to produce a diff with prev output
npm install ansi-diff
const diff = require('ansi-diff')()
let out = diff.update('hello world')
console.log(out) // 'hello'
out = diff.update('hello world')
console.log(out) // empty
out = diff.update('hello WORLD')
console.log(out) // {ansi-to-x5}+'WORLD'
produces a close to minimal diff
cheap to text diff
less flicker
great for ssh
copy-paste works
(demo)
components are just strings
(demo)
accepting interactive input can be tricky
have to use "raw mode 🍣" on stdin
then parse the raw input
npm install neat-input
const input = require('neat-input')()
input.on('enter',
line => console.log('line:', line)
)
input.on('update',
() => console.log('partial:', input.line())
)
combine ansi-diff and neat-input to make cli apps in no time
npm install diffy
const diffy = require('diffy')()
const trim = require('diffy/trim+newline')
setInterval(() => diffy.render(), 100)
diffy.render(function() {
return trim(`
hello ...
time is ${new Date()}
that is all
`)
})
// bundles neat-input
const input = require('diffy/input')()
(demo)
(more demos)
can diff tiny terminals
supports terminal resize
can diff colored output
thank you


Errors associated with the Menu Manager class
Sending menu-related RPCs returned an error from the remote system
SDLMenuManagerErrorRPCsFailed = -1
case rpcsFailed = -1
A pending menu update was superseded by a later update and did not run
SDLMenuManagerErrorPendingUpdateSuperseded = -2
case pendingUpdateSuperseded = -2
A pending or in-progress menu update was cancelled
SDLMenuManagerErrorOperationCancelled = -3
case operationCancelled = -3
A configuration update failed because the configuration is not supported
SDLMenuManagerErrorConfigurationUpdateLayoutNotSupported = -4
case configurationUpdateLayoutNotSupported = -4
A configuration update failed
SDLMenuManagerErrorConfigurationUpdateFailed = -5
case configurationUpdateFailed = -5
An open menu operation failed
SDLMenuManagerErrorOpenMenuFailed = -6
case openMenuFailed = -6


The DEEM workshop will be held on Sunday, June 20th, in conjunction with SIGMOD/PODS 2021. The workshop will be held online. DEEM brings together researchers and practitioners at the intersection of applied machine learning, data management and systems research, with the goal to discuss the arising data management issues in ML application scenarios.
The workshop solicits regular research papers describing preliminary and ongoing research results. In addition, the workshop encourages the submission of industrial experience reports of end-to-end ML deployments. Submissions can be short papers (4 pages) or long papers (up to 10 pages, plus unlimited references) following the ACM proceedings format (last update 11/2020).
Follow us on twitter @deem_workshop or contact us via email at info[at]deem-workshop[dot]org. We also provide archived websites of previous versions of the workshop: DEEM 2017, DEEM 2018, DEEM 2019, and DEEM 2020.
DEEM 2021 Proceedings: ACM DL Link
Abstract: Subjective data refers to data that contains opinions and experiences. Such data is ubiquitous in product reviews, tweets, and discussion forums on social media. We present an abstractive opinion summarization framework, which does not rely on gold-standard summaries for training. The opinion summarizer extracts opinion phrases from reviews and trains a Transformer model to reconstruct the original reviews from these extractions. Automatic evaluation on Yelp data shows that our summarizer outperforms competitive baselines. Human studies on two corpora verify that our opinion summarizer produces informative summaries and shows promising customization capabilities. We show how the idea of reconstructing summaries from extracted opinions also allows us to generate explanations for the generated summaries. This is joint work with Yoshihiko Suhara, Xiaolan Wang, and Stefanos Angelidis, Zhengjie Miao, and Yuliang Li
Applying Machine Learning (ML) in real-world scenarios is a challenging task. In recent years, the main focus of the database community has been on creating systems and abstractions for the efficient training of ML models on large datasets. However, model training is only one of many steps in an end-to-end ML application, and a number of orthogonal data management problems arise from the large-scale use of ML, which require the attention of the data management community.
For example, data preprocessing and feature extraction workloads may be complicated and require simultaneous execution of relational and linear algebraic operations. Next, model selection may involve searching many combinations of model architectures, features, and hyperparameters to find the best-performing model. After model training, the resulting model may have to be deployed and integrated into business workflows and require lifecycle management using metadata and lineage. As a further complication, the resulting system may have to take into account a heterogeneous audience, ranging from domain experts without programming skills to data engineers and statisticians who develop custom algorithms.
Additionally, the importance of incorporating ethics and legal compliance into machine-assisted decision-making is being broadly recognized. Critical opportunities for improving data quality and representativeness, controlling for bias, and allowing humans to oversee and impact computational processes are missed if we do not consider the lifecycle stages upstream from model training and deployment. DEEM welcomes research on providing system-level support to data scientists who wish to develop and deploy responsible machine learning methods.
DEEM aims to bring together researchers and practitioners at the intersection of applied machine learning, data management and systems research, with the goal to discuss the arising data management issues in ML application scenarios. The workshop solicits regular research papers describing preliminary and ongoing research results. In addition, the workshop encourages the submission of industrial experience reports of end-to-end ML deployments.
Submissions can be short papers (4 pages) or long papers (up to 10 pages, plus unlimited references). Authors are requested to prepare submissions following the ACM proceedings format. Please use the latest ACM paper format (last update 11/2020). DEEM is a single-blind workshop, authors must include their names and affiliations on the manuscript cover page.
Submission Website: https://cmt3.research.microsoft.com/DEEM2021
Inclusion and Diversity in Writing: http://2021.sigmod.org/calls_papers_inclusion_and_diversity.shtml


| 1 |
% |
influenza |
care |
COVID-19 |
factors |
95 |
critically |
ECMO |
ARDS |
group |
treatment |
children |
SARS |
MERS |
SARI |
| 2 |
patients |
ICU |
management |
wuhan |
risk |
CI |
critically ill |
oxygenation |
sepsis |
VAP |
antiviral |
CAP |
acute respiratory syndrome |
mers-cov |
scores |
| 3 |
hospital |
virus |
disease |
2019 |
AKI |
in-hospital mortality |
ill |
extracorporeal |
shock |
bronchiolitis |
dose |
PICU |
workers |
ED |
recovery |
| 4 |
days |
respiratory |
intensive |
sars-cov-2 |
risk factors |
in-hospital |
NIV |
membrane |
septic |
groups |
clearance |
RSV |
kong |
middle |
tpa |
| 5 |
years |
viral |
specific |
coronavirus |
kidney |
interval |
invasive |
prone |
septic shock |
ventilator-associated |
ribavirin |
pneumonia |
hong |
east |
TACS |
| 6 |
clinical |
H1N1 |
improve |
2020 |
regression |
confidence interval |
ventilation |
extracorporeal membrane oxygenation |
distress |
infants |
therapy |
pneumoniae |
acute |
saudi |
MATERIAL |
| 7 |
median |
2009 |
supportive |
disease |
serum |
confidence |
intubation |
mmhg |
dysfunction |
rate |
treated |
community-acquired pneumonia |
2003 |
middle east respiratory syndrome |
material |
| 8 |
age |
patients |
include |
cardiac |
independent |
% |
HFNC |
rescue |
AGI |
mechanically |
respiratory failure |
pathogens |
acute renal impairment |
arabia |
curve |
| 9 |
1 |
intensive |
chronic obstructive pulmonary disease |
china |
analysis |
= |
failure |
pao(2)/fio(2 |
lung |
ventilated |
RNA |
readmission |
hong kong |
saudi arabia |
supplementary |
| 10 |
- |
co-infection |
studies |
coronavirus disease 2019 |
multivariate |
odds |
noninvasive |
positioning |
pulmonary |
events |
cidofovir |
identification |
health-care |
mers-cov infection |
SUPPLEMENTARY |
| 11 |
data |
bacterial |
early |
severe |
levels |
odds ratio |
non-invasive |
tidal |
perfusion |
MDR |
cultures |
admissions |
health care workers |
hcws |
specificity |
| 12 |
results |
viruses |
remains |
patients |
increase |
ratio |
acute respiratory failure |
rescue therapy |
fluid |
ventilator-associated pneumonia |
delayed |
community-acquired |
health |
2015 |
score |
| 13 |
died |
intensive care unit |
patients |
hypertension |
95%CI |
MV |
invasive ventilation |
± |
inflammation |
IABP |
isolation |
hospitalisation |
NIPPV |
middle east respiratory syndrome coronavirus |
H7N9 |
| 14 |
outcomes |
admitted |
obstructive |
cardiac injury |
CRP |
adjusted |
noninvasive ventilation |
prone positioning |
acute respiratory distress syndrome |
mechanically ventilated |
oseltamivir |
aureus |
health-care workers |
outbreak |
online |
| 15 |
included |
pneumonia |
measures |
death |
age |
arrest |
IMV |
transport |
systemic |
recorded |
treated with |
ventilator‐associated |
syndrome |
statistically |
version |
| 16 |
5 |
infections |
high |
2019-ncov |
logistic |
< |
nasal |
position |
edema |
ventilator-associated events |
combination |
congenital |
NPPV |
revisits |
recovery delay |
| 17 |
range |
unit |
morbidity |
covid-19 pneumonia |
progression |
ffas |
high-flow |
hypoxemia |
biomarkers |
ALA |
patient |
SCAP |
non-invasive ventilation |
HH |
authorized |
| 18 |
onset |
infection |
review |
CML |
c-reactive |
aor |
oxygen |
support |
vascular |
control group |
viral rna |
APMV |
non‐pregnant |
expired |
tdl-vent |
| 19 |
admitted |
admission |
quality |
cough |
CRRT |
mortality |
IPA |
volume |
oxygenated |
relocation |
methylprednisolone |
streptococcus |
world |
A(H7N9 |
SVS |
| 20 |
total |
respiratory viruses |
research |
comorbidities |
count |
NVHAP |
cannula |
pertussis |
response |
FOB |
empiric |
neurologic disorders |
impairment |
72-hour |
calculated |
| 21 |
confirmed |
care |
potential |
jan |
cox |
length of stay |
respiratory |
HFOV |
hg |
preterm |
vitamin |
streptococcus pneumoniae |
P= |
emergency department |
delay |
| 22 |
14 |
severe |
respiratory |
feb |
LDH |
0.001 |
CS |
refractory |
injury |
length |
intravenous |
LOS |
airborne |
0.05 |
ELECTRONIC |
| 23 |
10 |
chain |
interventions |
older |
associated with |
cardiopulmonary |
ventilatory |
ventilator |
damage |
CXR |
administration |
NP |
contact |
visit |
dataset |
| 24 |
study |
reaction |
diagnosis |
cardiovascular disease |
prognostic |
spo2 |
respiratory support |
safe |
blood |
placebo |
recipients |
underlying |
ARF |
corona |
mers‐cov |
| 25 |
cases |
icu admission |
infectious |
fever |
higher |
RSI |
high-flow nasal cannula |
vs. |
host |
desaturation |
anti-pcp |
microbial |
pneumothorax |
corona virus |
PTSD |
| 26 |
15 |
pandemic |
staff |
cases |
mortality |
hazard |
support |
gas |
coagulation |
snps |
transplant |
non-neurologic |
renal |
138 |
LT |
| 27 |
illness |
detection |
cancer |
type |
development |
hospitals |
success |
lung |
PARDS |
breastfeeding |
vitamin c |
viral identification |
regional |
king |
validation |
| 28 |
25 |
similar |
COPD |
cardiovascular |
c-reactive protein |
associated with |
strict |
successfully |
diffuse |
IFV |
remdesivir |
ACT |
I/D |
department |
CT |
| 29 |
characteristics |
viral pneumonia |
treatment |
pneumonia |
predicted |
versus |
mask |
tidal volume |
saline |
control |
antiviral therapy |
aeruginosa |
susceptibility |
adult |
discharge |
| 30 |
outcome |
APACHE |
systems |
injury |
prognostic factors |
baseline |
controversial |
DU |
pancreatitis |
60-day |
failure |
prospective study |
ACE |
statistically significant |
users |
| 31 |
methods |
pregnant |
literature |
male |
study |
independently |
avoid |
pressure |
h1n1 influenza |
mechanical ventilation |
time |
persons |
barotrauma |
visits |
TDL |
| 32 |
period |
icus |
including |
interpretation |
protein |
corticosteroids |
pulmonary |
conventional |
zheng |
differ |
antibiotics |
resistant |
world health organization |
renal |
psychological |
| 33 |
occurred |
2016 |
unit |
electronic medical records |
acute kidney injury |
cardiopulmonary arrest |
components |
ARDS |
viral load |
group i |
TB |
staphylococcus |
0.006 |
korea |
TRPV1 |
| 34 |
20 |
adult |
acute |
non-survivors |
albumin |
LRI |
treatment failure |
ecmonet |
animals |
VAE |
presented |
anaerobic |
polymorphism |
demographic information |
AUC |
| 35 |
describe |
requiring |
requires |
methods |
dehydrogenase |
hazard ratio |
attempt |
km |
malaria |
group ii |
pulsed |
antibiotic |
intubation |
riyadh |
algorithm |
| 36 |
discharged |
HAP |
acute exacerbations |
coronavirus disease |
early |
macrolide therapy |
(h1n1)v |
activity |
syndrome |
assigned |
adv |
suspected |
respiratory |
ORA |
77 |
| 37 |
18 |
polymerase |
chapter |
antibody |
patients |
COVID−19 |
piperacillin |
minutes |
arterial |
HMPV |
high dose |
disorders |
non-invasive |
CFR |
0 |
| 38 |
= |
measles |
infection |
igg |
clinicians |
stratification |
piperacillin-tazobactam |
ratios |
multiple |
intermittent |
kidney transplant |
conditions |
march |
mers-cov. |
24 |
| 39 |
IQR |
tested |
past |
AMI |
lymphocyte |
.01 |
oedema |
PP |
acute |
difference |
PCP |
neurologic |
airflow |
P=0.001 |
VZV-CAP |
| 40 |
31 |
mechanical |
understanding |
non-severe |
hospitalized |
abstracted |
ETI |
ventilation |
yang-xu |
significantly |
broad-spectrum |
antibiotics |
seng |
abdulaziz |
stationary |
| 41 |
11 |
mechanical ventilation |
increasingly |
nt-probnp |
univariate |
CA-RVI |
SOFA |
pump |
horses |
stay |
hadv-55 |
prematurity |
tock |
insurance |
ROC |
| 42 |
21 |
mortality |
intensive care unit |
sars-cov-2 pneumonia |
level |
cardiac arrest |
patients |
end-expiratory |
fulminant |
cuff |
RP |
MPP |
tan |
interferon |
rrt‐pcr |
| 43 |
17 |
a(h1n1)pdm09 |
associated with |
characteristics |
severity |
por |
extremely |
cmh(2)o |
glutathione |
ADE |
resolution |
S. |
plasma creatinine |
largest |
HRQL |
| 44 |
rate |
A(H1N1 |
pulmonary |
common |
aminotransferase |
university-affiliated |
tazobactam |
prone position |
overload |
suction |
hemodialysis |
310 |
sars-coronavirus |
emergency |
assessment |
| 45 |
high |
respiratory virus |
patient |
diseases |
platelet |
mmol/l |
first-line therapy |
200 |
fluid therapy |
hmpv-associated |
viral |
asp |
tan tock seng hospital |
pediatric |
transition |
| 46 |
admission |
RVP |
scoring |
conclusions |
proportional |
non-transplant |
guangdong province |
interstitial |
axis |
pilot |
supportive treatment |
aged |
401 |
king abdulaziz medical city |
PAMV |
| 47 |
27 |
pregnant women |
recommended |
computed |
aspartate |
ca-rvs |
h1n1 virus infection |
severe |
acute pancreatitis |
usefulness |
IFN |
pathogen |
contracting |
health insurance coverage |
PRESERVE |
| 48 |
22 |
immunocompetent |
crucial |
lymphocytes |
death |
IHCA |
bronchoscopy |
paco(2 |
organ |
mechanical |
hadv |
type |
allele |
practices |
characteristic |
| 49 |
retrospectively |
acute |
lack |
lymphocytopenia |
serum creatinine |
feeding |
2nd |
training |
pediatric |
= |
hiv-negative |
incidence |
sars-coronavirus infection |
mers-designated |
survival group |
| 50 |
29 |
coinfection |
procedures |
clinical |
proteinuria |
G2 |
PIC |
paralysis |
activation |
ventilation |
benefits |
picus |
aerosol-generating procedures |
rate |
doi:10.1007/s00134 |


Apart from my education, I love to read about what's going around the world.
If you ask me what I would like to pursue after my Bachelors, the answer is going to be an MBA definitely.
Matriculation
CGPA 10
10+2/ Intermediate
Percentage 85.8
Bachelor of Technology
Branch Computer Science Engineering


CrimPapers
Articles published on 30 April 2020
On 30 April 2020, 5 new articles were published in 4 journals.
Impact of A Training Programme on Police Attitudes Towards Victims of Rape: A Randomised Controlled Trial
“Pick Up Anything That Moves”: A Qualitative Analysis of A Police Crackdown Against People Who Use Drugs in Tijuana, Mexico by Mario Morales, Claudia Rafful, Pieter Baker, Jaime Arredondo, Sunyou Kang, Maria L. Mittal, Teresita Rocha-Jiménez, Steffanie A. Strathdee and Leo Beletsky
Workforce Diversity in Police Hiring: the Influence of Organizational Characteristics by Jeffrey Nowacki, Joseph A. Schafer, Julie Hibdon
Special Issue Introduction For Terrorism, Gender and Women: Toward An Integrated Research Agenda by Alexandra Phelan
From Pawn to Knights: the Changing Role of Women’s Agency in Terrorism? by Mia Bloom, Ayse Lokmanoglu


Welcome to Social Chair
Gather with your friends — and other fascinating people. Get in-the-moment updates on the things that interest you. And watch events unfold, in real time, from every angle.
Gather with your friends — and other fascinating people. Get in-the-moment updates on the things that interest you. And watch events unfold, in real time, from every angle.


Black Friday 2019: Apple AirPods For $99 (Yes The 2nd Gen)
by Tegan JonesApple just released its brand new AirPods Pro, which means this Black Friday you can pick up the regular second gen AirPods (which are still excellent) at a bargain.
But you gotta be quick.
eBay is going to be offering the AirPods for just $99, but the sale won't kick off until 6pm AEDT.
The online retailer had the same deal going earlier twice already today and they sold out fast, so you're going to want to set a reminder for 6pm.
The 2nd gen AirPods has 5 hours of charge and was the first iteration of the earbuds to have Apple's fancy H1 chip.
As an added bonus, the AirPods come with a wireless charging case, which I can attest to being real good.
Get the deal here
And if you're after more black friday deals you can find all of our articles here.
We have all the best tech deals on eBay, Amazon, Microsoft, Harvey Norman and more.


Tree structures have the advantage that they are able to organize (and potentially sort) large quantities of information by featuring nodes that branch out from some central starting point, and do so in a formulaic way. In particular there are many types of trees, including the B and A-B and R-B; along with search patterns like A* and the Monte Carlo tree search.
B-trees are tree structures that self-balance / self-sort and are designed in such a way as to allow for searches, access, insertions and deletions in logarithmic time. Typically they are used for situations that need to read and write large blocks of data, like databases or filesystems.
A-B trees are structures that have all of their leaves at the same depth and all internal nodes (except for the root) have between "a" and "b", where 2 <= a <= (b+1) / 2. The root has (if it is not a leaf) has between 2 and b children.
A red-black tree is similar in concept to the B-tree in that it is a kind of self-balancing binary search tree. Most notably each node contains an extra bit that stores whether it is "red" or "black".
In a red-black tree, the purpose of the colour is to ensure that the tree remains balanced during insertion and deletions. This feature constrains how unbalanced a tree can become in the worse case scenario, and admittedly while the algorithm is not perfect, it will nonetheless yield a search or insertion or deletion operation in O(n log n) time.
The A* searching is a graph traversal and path search algorithm which is a best-first search that is formulated in terms of weighted graphs. Starting from a specific node of a graph, it aims to find a path to the given goal node having the smallest distance or shortest time.
When implementing A* searching, a feature to consider is that this algorithm works by maintaining a tree structure of paths originating at the start node and extending these paths one edge at a time untils its termination criterion is satisfied; e.g. a certain distance or value.
Monte Carlo tree search is a heuristic search algorithm for decisioning, often used as part of an AI implementation in video games. Most famously it was used by Google Deepmind for their AlphaGo software.
In particular the Monte Carlo tree search relies on the Monto Carlo method which when combined with a search tree algorithm, allows for a way to store past and previous decisions in order to yield recursive rollout and backtracking and adaptive sampling choices for the final decision made by the AI.


"The investigation by John and Daniel Bernoulli [of the coupled oscillator chain] may be said to form the beginning of theoretical physics as distinct from mechanics, in the sense that it is the first attempt to formulate the laws of motion of a system of particles rather than that of a single particle." Leon Brillouin
Oscillator Chain models a one-dimensional linear array of coupled harmonic oscillators with fixed ends. This model can be used to study the propagation of waves in a continuous medium and the vibrational modes of a crystalline lattice. The Ejs model shown here contains 31 coupled oscillators equally spaced within the interval [0, 2 π] with fixed ends. The m-th normal mode of this system can be observed by entering f(x) = sin(m*x/2) as the initial displacement where m is an integer.
Wave propagation can be studied by entering a localized pulse or by setting the initial displacement to zero and dragging oscillators to form a wave packet. An interesting and important feature of the Oscillator Chain model is that the speed of a sinusoidal wave along the oscillator array depends on its wavelength. This causes a wave packet to disperse (change shape) and imposes a maximum frequency of oscillation (cutoff frequency) as is observed in actual crystals.
The coupled oscillator (beaded string) model is discussed in intermediate mechanics textbooks.
There are many laboratory and computer experiments that build on the basic model.
The Oscillator Chain model was created by Wolfgang Christian using the Easy Java Simulations (EJS) modeling tool. You can examine and modify the physical model for this simulation if you have Ejs installed by right-clicking within the plot and selecting "Open Ejs Model" from the pop-up menu. Information about Ejs is available at: <http://www.um.es/fem/Ejs/> and in the OSP comPADRE collection <http://www.compadre.org/OSP/>.


{% load staticfiles %}
{{ upcoming_meetup.date|date:"l" }}, {{ upcoming_meetup.date|date:"d.m.Y" }}, godz. {{ upcoming_meetup.date|date:"H:i" }}
{% if upcoming_meetup.venue %}{{ upcoming_meetup.venue.name }}, {{ upcoming_meetup.venue.address }}
{% endif %}{% for speaker in talk.speakers.all %} {{ speaker }}{% if not forloop.last %}, {% endif %} {% endfor %}
agenda w przygotowaniu


Don't know where to begin ?
We have a set of carefully crafted tutorials to get you started, forget about everything just get started.
At NeoScript we have tutorials in various forms available.
Want to learn various programming languages C,C++,Java etc finding it difficult to setup in your system. You don't have to go through all the pain of installing just focus on learning for rest of the things NeoScript is here All you need is a browser. Log in and you are ready to code.
Like to compete in Competitions ... We are launching range of Hackathons with various difficulty level so as to have an incremental learning process. Judge your skills right after learning concepts participate in our hackathons to see where you stand and keep improving yourself.
We do conduct Workshops for skill development ranging on various topics. our workshops range from learning Web, Mobile Application Development, Internet of Things. Want to conduct workshop at your college write to us at Email
We love students and always would like to be in touch with the student community. Join our Ambassador program which brings enormous learning opportunities with exciting gifts. You will be exposed to the global student community of and get a chance to learn from your peers and build cool stuff. Want to be a part write us at Email
NeoScript Technologies Pvt. Ltd.
<EMAIL_ADDRESS>(+91)<PHONE_NUMBER>, (+91)<PHONE_NUMBER>
T-2, TIDE Center, Science Complex, University of Hyderabad, Hyderabad-500046


init
Syntax
init
Description
The init (initialization) keyword is used for two different purposes in Turing. The most common is for initializing arrays, records and unions. The less common is for recording parameter values in subprograms for later use in post conditions.
Example
var mensNames : array 1 .. 3 of string :=
init ( "Tom", "Dick", "Harry" )
put mensNames ( 2 ) % This outputs Dick
var names : array 1 .. 2, 1 .. 3 of string :=
init ( "Tom", "Dick", "Harry",
"Alice", "Barbara", "Cathy")
put names ( 2, 1 ) % This outputs Alice
Details
The order of initializing values for multi-dimensional arrays is based on varying the right subscripts (indexes) most rapidly. This is called row major order. Initialization of records and unions is analogous to initializing arrays. Values are listed in the order in which they appear in the type. See array, record, and union types.
Example
This procedure is supposed to set integer variable i to an integer approximation of its square root. The init clause records the initial value of i as j so it can be used in the post condition to make sure that the approximation is sufficiently accurate. The name j can be used only in the post condition and nowhere else in the procedure.
procedure intSqrt ( var i : int )
pre i >= 0
init j := i
post abs ( i - sqrt ( j ) ) <= 1
statements to approximate square root
end intSqrt
See also
pre and post assertions and procedure and process declarations.


These samples attempt to draw as many 32x32 images as possible at 60 frames a second using various techniques.
Before running these tests you should turn off as many other programs as you can
If you are comparing browsers
This sample uses the standard drawElements function call, ones for each image quad.
This sample puts all images quads in a large buffer. The positions of each image are updated in JavaScript and then sent to the GPU with a call to BufferData.
This is the same as "Lots O Images - BufferData" above except blending is turned off since blending is expensive for the GPU.


DR. DOLITTLE 2 A film review by Max Messier Copyright 2001 filmcritic.com
Sequels just never measure up to their predecessors. Every now and then it happens -- a la Star Trek II: The Wrath of Khan, The Empire Strikes Back, and The Rescuers Down Under -- but those are the exceptions.
The original Eddie Murphy comedy Dr. Dolitte was a lukewarm and tepid yet entertaining movie filled with cheap laughs, terrible acting, and a painful reminder of Murphy's slow decent into another slump. But alas, the studio gods spoke and a sequel became unavoidable when the original Dr. Dolittle (er, the original Eddie Murphy Dolittle, itself being a remake) grossed over $290 million dollars worldwide -- not including sales from the hip-hop soundtrack.
Well, Murphy has lost the nappy deadlocks of the first film and again takes on the role of the intrepid animal doctor/interpreter Dr. Dolittle in Dr. Dolittle 2. This time around, Dolittle has honed his communication skills and runs a joint animal and human medical office in beautiful San Francisco. Over the past few years, Dolittle has become the Sigmund Freud of the animal kingdom -- providing sexual advice to a turtle with erectile dysfunction, overseeing support groups for stray dogs, and guest-starring on Crocodile Hunter.
One night, a raccoon with a thick Brooklyn accent shows up at his door and requests that the Doc meet with The Beaver -- the head of some type of animal Mafia in the Marin County forests. The Beaver requests that the Doc stop a evil logging company -- controlled by Jeffery Jones and Kevin Pollack -- from clear-cutting the homes of all of the forest dwellers. The only way to save the forest lies in the loins of an endangered species of bear named Archie (voiced by Steve Zahn), whom the Doc has to retrain in how to live in the wild so he can mate with another bear named Ava (voiced by Lisa Kudrow). If Archie and Ava do the mystery dance and produce little Archies and Avas, the forest would then be deemed off-limits from the clutches of evil logging company. The only problem is that Archie is a circus bear who best knows how to dance to disco and has the demeanor of Woody Allen -- Wayne Newton in a bear suit. So its up to the Doc to teach Archie how to be the alpha male of the wild, save the forest from the overacting of Kevin Pollack, learn how to communicate with his own human family, and somehow make us believe that a talking monkey has a drinking problem.
Dr. Dolittle 2 could've been a contender. In a decade of film - Nutty Professor II, Bowfinger, Life, Holy Man, Metro, A Vampire in Brooklyn, Beverly Hills Cop III, and Boomerang -- Murphy has done little worth remembering. But in Dr. Dolittle 2, Murphy gives one of his better performances in recent years. He seems looser, more interested in the role, and gives fleeting glimpses of that energetic and sharp humor that made him so famous in the '80s. Still, he seems reserved and unsure about how to work in this brave new world of family films and wholesome entertainment.
The voice talent is where the gold lies. Steve Zahn's dry wit and apathy give Archie the Bear the comedic edge it needs to compliment the excellent training of the animal (coupled with his CGI manipulation). Norm Macdonald returns in his role of the wisecracking family dog Lucky and provides added humor. The various voice talents of Cedric the Entertainer, Michael Rappaport, Kudrow, and Molly Shannon are witty but don't draw attention away from the amazing animatronics of the talking animals.
But Dolittle 2 suffers from a serious identity crisis and, like the original, never really sells the humanization of its animal characters.
Even with its flaws, Dr. Dolittle 2 is a decent matinee movie for the kiddies. The film also provides enough humor for those grown-ups in the audience brave enough to sit through 90 plus minutes of endless product placements, Eddie Murphy playing Dean Martin to the Jerry Lewis antics of a talking bear, and the bear singing "I Will Survive." [For a very special treat try watching Max karaoke "I Will Survive." -Ed.]
Let's just call that a warning.

Visit filmcritic.com on the Web at http://www.filmcritic.com
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


In this project, I will create a step by step guide for the pythagorean theorem.
1) From the calculator menu, we will navigate to the "New option"
2) Click and navigate to "Add program editor" and create new
3) Name your program, select the type of program, and the library access.
We will name our program "abc" since that is the same variables as the pythagoream theorem.
In this instance, our type will be program since using the other option, function, will be limative by not allowing us to define global variables.
Library access simply means if you want the program to show in your catalog. For testing purposes, it should be set to private or none to avoid using a broken program.
Fully working programs should be set to public so you are able to search for it with all of the calculator's already built in functions.
4) You should have a screen that looks similar to the one below.
5) We need to delete global variables to ensure the variables we use aren't already being used. If we do not delete variables, we may run into issues later. Click your menu button then navigate to "Define variables" and select "Delete variable"
6) From here we delete six different variables. We need two instances of each variable. The first instance will be the original value provided and the second instance will be saving the mathmatical equations.
7) Now we need to actually input variables into the function. Go to menu, and navigate to "I/O," which stands for input/output, and select "Request string."
8) You will now have the type quotation marks to notify the user what you are requesting followed by a comma ',' to assign the input to a variable.
9) We will do the same for variable
b1
10) We are going to define two more variable to sqaure the intial values.
11) We use := as the equals sign since that is the calculator's syntax.
12) Now that we have a and b squared; we need to add them. Their sum will equal to an instance of C therefore we are saving it to C1.
13) The final answer of C should be the radical of the sum a and b squared. We have saved the instance of this variable in c1 so we take the radical, square root, or set it to the 1/2 power since they're all the same.
14) To display the final answer, we will go to menu and to i/o again. This time we will select "Disp" which means Display. Writing out "Disp c2" will provide our answer after we run the program. Unfortunetly, I forgot to take a screenshot.
15) To run our program, we need to save it by hiting ctrl+s on our calculator. Following, we will go back to menu, navigate to Check, and select "Check Syntax & store"
16) Bummer! We hit a syntax error.
17) After some troubleshooting and further research on
ti-nspire resource website, I was unable to find our erorr. In comparing the syntax they provide and ours, it looks perfect.
18) I was reluctant to give up. Another way to input variables was to simply put them when we run the program. I read this on the resource website while attempting to correct my error.
19) Doing tis means I can simply plug the variable directly into the equation using CAS (computer alegbra system) functionality. This was able to save without any errors.
20) So, how do we actually see if this works? Hit ctrl and doc to add a new page. Then select add calculator. Using
Mathbootcamp's examples, we can see if our calculations align.
21) The syntax to run our function is abc(a,b) and we will replace a with the number that represents a in the equation; the same will go for b.
22) Our first test is abc(6,8) which worked to my surprise!
23) Let's test again to ensure it wasn't a fluke. This time we are using abc(3.1,2.8) which also worked!
24) That's it! You've now made your first ti-nspire cx ii cas ti-basic program! Congratulations.


{% extends 'base.html'%} {% block styles%} {{ super() }} {% endblock %} {% block content %}
Pitch of The Day
— Stephen King.
 Instead I’ll forever and ever love and cherish you.

When they see other people improving their life and becoming successful, its a direct reflection to them of what they should be doing but are not.


Before Change
def KernelMatrix(X, k=InnerProduct):
n = X.size
Q = zeros((n,n))
for i in range(n):
for j in range(n):
// dumb, but how else to do outer products of arbitrary functions
// without going through ufunc C-api ?
Q[i,j] = k(X[i],X[j])
return Q
def SupportVectors(alpha, eps=0):
indicies of nonzero alphas (at tolerance eps)
After Change
def KernelMatrix(X, k=multiply):
"outer product of X with self, using k as elementwise product function"
X = asarray(X).ravel()
return k(X[:,None], X[None,:])
def SupportVectors(alpha, eps=0):


It’s ssttime to start investing in yourself
CodeLou.app is a simple, fast and interactive app, to learn any programming language. Our learning platform is available in Android, iOS and web with over 6 Million+ downloads worldwide.
Learn MoreCodeLou.app is a simple, fast and interactive app, to learn any programming language. Our learning platform is available in Android, iOS and web with over 6 Million+ downloads worldwide.
Learn MoreLearning to code has never been so much fun before! We have made the learning experience fun and interactive.
From building websites to analyzing data, the choice is yours. Not sure where to start? We’ll point you in the right direction.
No matter your experience level, you’ll be writing real, working code in minutes.
Coding skills have never been more in-demand. Learn everything you need to take your career to the next level.
Learn the technical skills you need for the job you want. As leaders in online education and learning to code, we’ve taught hundreds in the Louisville community.


Hivemind
The ultra-lightweight information sharing application for all your academic needs.
Submit
Register


-
Announcement
We've got oure ear to the ground. Here's what you need to know.

-
Getting Started
Start off on the right foot! Not the left one!
-
Billing
That feel when you look at your bank account.
-
F.A.Qs
All you can eat self-serve problem solving.
Other ways to find help.
-
Twitter
Have a quick question? Hit us up on Twitter!


HARMONY r6 by Mr.doob
Brush: df size, r resetColor: shift wheel, alt picker
Info - Source Code
Sketchy, Shaded, Chrome, Fur, LongFur and Web are all variations of the neighbour points connection concept.
If you like the tool, here are some buttons for you :)


Class RegistrationComponent
Object class, allowing __construct and __destruct in PHP4.
Also includes methods for logging and the special method RequestAction, to call other Controllers' Actions from anywhere.
- Object
- RegistrationComponent
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
array('memberActivities'=>$memberActivities,
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
Object(),
__construct(),
__openPersistent(),
_persist(),
_savePersistent(),
_set(),
cakeError(),
log(),
requestAction(),
toString()
|
public
mixed
|
$controller |
|
$_log
|


Disappearing Earth
Lost Children Archive
Phantoms: A Thriller
Midnight in Chernobyl
10 Minutes 38 Seconds
Changes Are
by Richard Russo
1.987 voters
Readers of all ages and walks of life have drawn inspiration and empowerment from Elizabeth Gilbert’s books for years.
Samantha William and 2 other friends like this
Dominicana
by Angie Cruz
1.987 voters
Readers of all ages and walks of life have drawn inspiration and empowerment from Elizabeth Gilbert’s books for years.
Kimberly Jones like this
The Travellers
by Regina Porter
1.987 voters
Readers of all ages and walks of life have drawn inspiration and empowerment from Elizabeth Gilbert’s books for years.
Adam and Kimberly like this
Afternoon Of A Faun
by James Lasdun
1.987 voters
Readers of all ages and walks of life have drawn inspiration and empowerment from Elizabeth Gilbert’s books for years.
Samantha William and 2 other friends like this
Flash Count Diary
by Darcey Steinke
1.987 voters
Readers of all ages and walks of life have drawn inspiration and empowerment from Elizabeth Gilbert’s books for years.
Angelina Stone and 2 other friends like this
Picnic Comma Lightning
by Lucy Parker
1.987 voters
Readers of all ages and walks of life have drawn inspiration and empowerment from Elizabeth Gilbert’s books for years.
George and Mike like this
Very Nica
by Lucy Parker
1.987 voters
Readers of all ages and walks of life have drawn inspiration and empowerment from Elizabeth Gilbert’s books for years.
Samantha William and 2 other friends like this
Stay And Fight
by Lucy Parker
1.987 voters
Readers of all ages and walks of life have drawn inspiration and empowerment from Elizabeth Gilbert’s books for years.
Samantha William and Jonathan like this


--- title: Contact call_to_action: Map background_image_path: large_header: false show_in_navigation: true navigation_order: 3 map: latitude: -45.8787605 longitude:<PHONE_NUMBER> zoom: 13 ---
Come see us in person, give us a call, or send us a message with your details and we'll be in contact shortly after. No obligations and your first meeting is free.
{{ site.data.company.contact_phone_number }}
{{ site.data.company.contact_email_address }}
{{ site.data.company.postal_address | replace: ',', '


- IDGenerator - Class in thobe.tools.utils
-
Thread-safe class for the creation of unique ids
- IDGenerator() - Constructor for class thobe.tools.utils.IDGenerator
-
- ILoggable - Class in thobe.tools.log
-
Interface for all classes who needs to log into a separate log-channel.
- ILoggable() - Constructor for class thobe.tools.log.ILoggable
-
- init(String) - Static method in class thobe.tools.log.Logging
-
Use this method to initialize logging per ini-file.
- init(String, int) - Static method in class thobe.tools.log.Logging
-
Use this method to initialize logging per ini-file.
- init(String, int, int, boolean) - Static method in class thobe.tools.log.Logging
-
Use this method to initialize logging per ini-file.
- init() - Static method in class thobe.tools.tests.log.Tst_TXTLogFormatter
-
- init() - Method in class thobe.tools.tests.Tst_MakeUniqueStrings
-
- initLog(String, String, File, Level, Level) - Static method in class thobe.tools.log.Log
-
Method to initiate the log.
- initLog(String, File, Level, Level) - Static method in class thobe.tools.log.Log
-
Method to initiate the log.
- initLog(String, Level) - Static method in class thobe.tools.log.Log
-
Method to initiate the log.
- isComplex() - Method in class thobe.tools.math.Complex
-
- isDirectoryWritable(File) - Static method in class thobe.tools.FileTools
-
- isDirectoryWritable(File) - Static method in class thobe.tools.utils.Utilities
-
Checks if the user has the needed permissions to be able to create/
modify files in the given directory by trying to create a
temp-file.
- isSuperClass(Class, Class) - Static method in class thobe.tools.generics.Generics
-
Returns true if the given subClass is in the extension-hierarchy of the
given superClass.


The Coolest Countback Returner That You Will Ever See!
Please enter a number between 0-100
Countdown from ...


Feedback Feedback request × Let me know what you think! How was my gallery? Your rating Good Ok Bad What could I improve?


Cape York. CSW -> XYZ Array -> GeoJSON Point Features -> THREE JS Point Cloud. (Just an exercise in testing GeoJSON).


---
layout: post
title: Film Storyboards
date: '2018-01-21T11:30:34+01:00'
categories:
- Shoutout
picture_url: https://film-Storyboards.tumblr.com/post/169965510360/filmStoryboards-on-facebook
---
Film Storyboards on Facebook
@FilmStoryboards has a Facebook page now… This is going to be a feed for sharing selected work, and promoting Storyboards and layout templates + repost interesting links about visualising, film and Illustration. Visit the @FilmStoryboards page on Facebook and spread the word. Thank you.


{{ experience.dates }}
{%- if experience.link -%} {% include a.html href=experience.link class="project-link" %}{{ experience.link }} {%- endif -%}{{ experience.job_title }}
{% for job in experience.jobs %}{{ job.title }}
{{ job.dates }}
{% endfor %}{%- if experience.twitter -%} {%- endif -%} {%- if experience.medium -%} {%- endif -%} {%- if experience.podcast -%} {%- endif -%} {%- if experience.telegram -%} {%- endif -%} {%- if experience.linkedin -%} {%- endif -%}
{{ experience.quote }}
{%- endif -%} {{ experience.description | strip | markdownify }}I've also done internships at Vat IT, Entelect and Saicom Voice Services as a software engineer while doing my Bachelor's in Electrical Engineering.


An exception raised by data types and validators indicating that the value for a particular node was not valid.
The constructor receives a mandatory node argument. This must be an instance of the colander.SchemaNode class, or at least something with the same interface.
The constructor also receives an optional msg keyword argument, defaulting to None. The msg argument is a freeform field indicating the error circumstance.
The constructor additionally may receive an optional value keyword, indicating the value related to the error.
An integer representing the position of this exception’s schema node relative to all other child nodes of this exception’s parent schema node. For example, if this exception is related to the third child node of its parent’s schema, pos might be the integer 3. pos may also be None, in which case this exception is the root exception.
A list of child exceptions. Each element in this list (if any) will also be an colander.Invalid exception, recursively, representing the error circumstances for a particular schema deserialization.
A str or unicode object, or a translation string instance representing a freeform error value set by a particular type during an unsuccessful deserialization. If this exception is only structural (only exists to be a parent to some inner child exception), this value will be None.
The schema node to which this exception relates.
An attribute not used internally by Colander, but which can be used by higher-level systems to attach arbitrary values to Colander exception nodes. For example, In the system named Deform, which uses Colander schemas to define HTML form renderings, the value is used when raising an exception from a widget as the value which should be redisplayed when an error is shown.
Add a child exception; exc must be an instance of colander.Invalid or a subclass.
pos is a value important for accurate error reporting. If it is provided, it must be an integer representing the position of exc relative to all other subexceptions of this exception node. For example, if the exception being added is about the third child of the exception which is self, pos might be passed as 3.
If pos is provided, it will be assigned to the pos attribute of the provided exc object.
Return a dictionary containing a basic (non-language-translated) error report for this exception
- class colander.All(*validators)[source]¶
Composite validator which succeeds if none of its subvalidators raises an colander.Invalid exception
- class colander.Range(min=None, max=None, min_err=None, max_err=None)[source]¶
Validator which succeeds if the value it is passed is greater or equal to min and less than or equal to max. If min is not specified, or is specified as None, no lower bound exists. If max is not specified, or is specified as None, no upper bound exists.
min_err is used to form the msg of the colander.Invalid error when reporting a validation failure caused by a value not meeting the minimum. If min_err is specified, it must be a string. The string may contain the replacement targets ${min} and ${val}, representing the minimum value and the provided value respectively. If it is not provided, it defaults to '${val} is less than minimum value ${min}'.
max_err is used to form the msg of the colander.Invalid error when reporting a validation failure caused by a value exceeding the maximum. If max_err is specified, it must be a string. The string may contain the replacement targets ${max} and ${val}, representing the maximum value and the provided value respectively. If it is not provided, it defaults to '${val} is greater than maximum value ${max}'.
- class colander.Length(min=None, max=None)[source]¶
Validator which succeeds if the value passed to it has a length between a minimum and maximum. The value is most often a string.
- class colander.OneOf(choices)[source]¶
Validator which succeeds if the value passed to it is one of a fixed set of values
- class colander.Function(function, message=u'Invalid value')[source]¶
Validator which accepts a function and an optional message; the function is called with the value during validation.
If the function returns anything falsy (None, False, the empty string, 0, an object with a __nonzero__ that returns False, etc) when called during validation, an colander.Invalid exception is raised (validation fails); its msg will be the value of the message argument passed to this class’ constructor.
If the function returns a stringlike object (a str or unicode object) that is not the empty string , a colander.Invalid exception is raised using the stringlike value returned from the function as the exeption message (validation fails).
If the function returns anything except a stringlike object object which is truthy (e.g. True, the integer 1, an object with a __nonzero__ that returns True, etc), an colander.Invalid exception is not raised (validation succeeds).
The default value for the message when not provided via the constructor is Invalid value.
- class colander.Regex(regex, msg=None)[source]¶
Regular expression validator.
Initialize it with the string regular expression regex that will be compiled and matched against value when validator is called. If msg is supplied, it will be the error message to be used; otherwise, defaults to ‘String does not match expected pattern’.
The regex argument may also be a pattern object (the result of re.compile) instead of a string.
When calling, if value matches the regular expression, validation succeeds; otherwise, colander.Invalid is raised with the msg error message.
- class colander.Email(msg=None)[source]¶
Email address validator. If msg is supplied, it will be the error message to be used when raising colander.Invalid; otherwise, defaults to ‘Invalid email address’.
- class colander.Mapping(unknown='ignore')[source]¶
A type which represents a mapping of names to nodes.
The subnodes of the colander.SchemaNode that wraps this type imply the named keys and values in the mapping.
The constructor of this type accepts one extra optional keyword argument that other types do not: unknown. An attribute of the same name can be set on a type instance to control the behavior after construction.
- unknown
unknown controls the behavior of this type when an unknown key is encountered in the cstruct passed to the deserialize method of this instance. All the potential values of unknown are strings. They are:
- ignore means that keys that are not present in the schema associated with this type will be ignored during deserialization.
- raise will cause a colander.Invalid exception to be raised when unknown keys are present in the cstruct during deserialization.
- preserve will preserve the ‘raw’ unknown keys and values in the appstruct returned by deserialization.
Default: ignore.
Special behavior is exhibited when a subvalue of a mapping is present in the schema but is missing from the mapping passed to either the serialize or deserialize method of this class. In this case, the colander.null value will be passed to the serialize or deserialize method of the schema node representing the subvalue of the mapping respectively. During serialization, this will result in the behavior described in serializing_null for the subnode. During deserialization, this will result in the behavior described in deserializing_null for the subnode.
If the colander.null value is passed to the serialize method of this class, a dictionary will be returned, where each of the values in the returned dictionary is the serialized representation of the null value for its type.
- class colander.Tuple[source]¶
A type which represents a fixed-length sequence of nodes.
The subnodes of the colander.SchemaNode that wraps this type imply the positional elements of the tuple in the order they are added.
This type is willing to serialize and deserialized iterables that, when converted to a tuple, have the same number of elements as the number of the associated node’s subnodes.
If the colander.null value is passed to the serialize method of this class, the colander.null value will be returned.
- class colander.Sequence(accept_scalar=False)[source]¶
A type which represents a variable-length sequence of nodes, all of which must be of the same type.
The type of the first subnode of the colander.SchemaNode that wraps this type is considered the sequence type.
The optional accept_scalar argument to this type’s constructor indicates what should happen if the value found during serialization or deserialization does not have an __iter__ method or is a mapping type.
If accept_scalar is True and the value does not have an __iter__ method or is a mapping type, the value will be turned into a single element list.
If accept_scalar is False and the value does not have an __iter__ method or is a mapping type, an colander.Invalid error will be raised during serialization and deserialization.
The default value of accept_scalar is False.
If the colander.null value is passed to the serialize method of this class, the colander.null value is returned.
- class colander.String(encoding=None)[source]¶
A type representing a Unicode string.
This type constructor accepts one argument:
- encoding
Represents the encoding which should be applied to value serialization and deserialization, for example utf-8. If encoding is passed as None, the serialize method of this type will not do any special encoding of the appstruct it is provided, nor will the deserialize method of this type do any special decoding of the cstruct it is provided; inputs and outputs will be assumed to be Unicode. encoding defaults to None.
If encoding is None:
- A Unicode input value to serialize is returned untouched.
- A non-Unicode input value to serialize is run through the unicode() function without an encoding parameter (unicode(value)) and the result is returned.
- A Unicode input value to deserialize is returned untouched.
- A non-Unicode input value to deserialize is run through the unicode() function without an encoding parameter (unicode(value)) and the result is returned.
If encoding is not None:
- A Unicode input value to serialize is run through the unicode function with the encoding parameter (unicode(value, encoding)) and the result (a str object) is returned.
- A non-Unicode input value to serialize is converted to a Unicode using the encoding (unicode(value, encoding)); subsequently the Unicode object is reeencoded to a str object using the encoding and returned.
- A Unicode input value to deserialize is returned untouched.
- A non-Unicode input value to deserialize is converted to a str object using str(value). The resulting str value is converted to Unicode using the encoding (unicode(value, encoding)) and the result is returned.
A corollary: If a string (as opposed to a unicode object) is provided as a value to either the serialize or deserialize method of this type, and the type also has an non-None encoding, the string must be encoded with the type’s encoding. If this is not true, an colander.Invalid error will result.
The subnodes of the colander.SchemaNode that wraps this type are ignored.
- class colander.Integer[source]¶
A type representing an integer.
If the colander.null value is passed to the serialize method of this class, the colander.null value will be returned.
The subnodes of the colander.SchemaNode that wraps this type are ignored.
- class colander.Float[source]¶
A type representing a float.
If the colander.null value is passed to the serialize method of this class, the colander.null value will be returned.
The subnodes of the colander.SchemaNode that wraps this type are ignored.
- class colander.Decimal[source]¶
A type representing a decimal floating point. Deserialization returns an instance of the Python decimal.Decimal type.
If the colander.null value is passed to the serialize method of this class, the colander.null value will be returned.
The subnodes of the colander.SchemaNode that wraps this type are ignored.
- class colander.Boolean[source]¶
A type representing a boolean object.
During deserialization, a value in the set (false, 0) will be considered False. Anything else is considered True. Case is ignored.
Serialization will produce true or false based on the value.
If the colander.null value is passed to the serialize method of this class, the colander.null value will be returned.
The subnodes of the colander.SchemaNode that wraps this type are ignored.
- class colander.GlobalObject(package)[source]¶
A type representing an importable Python object. This type serializes ‘global’ Python objects (objects which can be imported) to dotted Python names.
Two dotted name styles are supported during deserialization:
- pkg_resources-style dotted names where non-module attributes of a module are separated from the rest of the path using a ‘:’ e.g. package.module:attr.
- zope.dottedname-style dotted names where non-module attributes of a module are separated from the rest of the path using a ‘.’ e.g. package.module.attr.
These styles can be used interchangeably. If the serialization contains a : (colon), the pkg_resources resolution mechanism will be chosen, otherwise the zope.dottedname resolution mechanism will be chosen.
The constructor accepts a single argument named package which should be a Python module or package object; it is used when relative dotted names are supplied to the deserialize method. A serialization which has a . (dot) or : (colon) as its first character is treated as relative. E.g. if .minidom is supplied to deserialize, and the package argument to this type was passed the xml module object, the resulting import would be for xml.minidom. If a relative package name is supplied to deserialize, and no package was supplied to the constructor, an colander.Invalid error will be raised.
If the colander.null value is passed to the serialize method of this class, the colander.null value will be returned.
The subnodes of the colander.SchemaNode that wraps this type are ignored.
- class colander.DateTime(default_tzinfo=<object object at 0x3039a80>)[source]¶
A type representing a Python datetime.datetime object.
This type serializes python datetime.datetime objects to a ISO8601 string format. The format includes the date, the time, and the timezone of the datetime.
The constructor accepts an argument named default_tzinfo which should be a Python tzinfo object; by default it is None, meaning that the default tzinfo will be equivalent to UTC (Zulu time). The default_tzinfo tzinfo object is used to convert ‘naive’ datetimes to a timezone-aware representation during serialization.
You can adjust the error message reported by this class by changing its err_template attribute in a subclass on an instance of this class. By default, the err_template attribute is the string Invalid date. This string is used as the interpolation subject of a dictionary composed of val and err. val and err are the unvalidatable value and the exception caused trying to convert the value, respectively. These may be used in an overridden err_template as ${val} and ${err} respectively as necessary, e.g. _('${val} cannot be parsed as an iso8601 date: ${err}').
For convenience, this type is also willing to coerce datetime.date objects to a DateTime ISO string representation during serialization. It does so by using midnight of the day as the time, and uses the default_tzinfo to give the serialization a timezone.
Likewise, for convenience, during deserialization, this type will convert YYYY-MM-DD ISO8601 values to a datetime object. It does so by using midnight of the day as the time, and uses the default_tzinfo to give the serialization a timezone.
If the colander.null value is passed to the serialize method of this class, the colander.null value will be returned.
The subnodes of the colander.SchemaNode that wraps this type are ignored.
- class colander.Date[source]¶
A type representing a Python datetime.date object.
This type serializes python datetime.date objects to a ISO8601 string format. The format includes the date only.
The constructor accepts no arguments.
You can adjust the error message reported by this class by changing its err_template attribute in a subclass on an instance of this class. By default, the err_template attribute is the string Invalid date. This string is used as the interpolation subject of a dictionary composed of val and err. val and err are the unvalidatable value and the exception caused trying to convert the value, respectively. These may be used in an overridden err_template as ${val} and ${err} respectively as necessary, e.g. _('${val} cannot be parsed as an iso8601 date: ${err}').
For convenience, this type is also willing to coerce datetime.datetime objects to a date-only ISO string representation during serialization. It does so by stripping off any time information, converting the datetime.datetime into a date before serializing.
Likewise, for convenience, this type is also willing to coerce ISO representations that contain time info into a datetime.date object during deserialization. It does so by throwing away any time information related to the serialized value during deserialization.
If the colander.null value is passed to the serialize method of this class, the colander.null value will be returned.
The subnodes of the colander.SchemaNode that wraps this type are ignored.
- class colander.Time[source]¶
A type representing a Python datetime.time object.
Note
This type is new as of Colander 0.9.3.
This type serializes python datetime.time objects to a ISO8601 string format. The format includes the date only.
The constructor accepts no arguments.
You can adjust the error message reported by this class by changing its err_template attribute in a subclass on an instance of this class. By default, the err_template attribute is the string Invalid date. This string is used as the interpolation subject of a dictionary composed of val and err. val and err are the unvalidatable value and the exception caused trying to convert the value, respectively. These may be used in an overridden err_template as ${val} and ${err} respectively as necessary, e.g. _('${val} cannot be parsed as an iso8601 date: ${err}').
For convenience, this type is also willing to coerce datetime.datetime objects to a time-only ISO string representation during serialization. It does so by stripping off any date information, converting the datetime.datetime into a time before serializing.
Likewise, for convenience, this type is also willing to coerce ISO representations that contain time info into a datetime.time object during deserialization. It does so by throwing away any date information related to the serialized value during deserialization.
If the colander.null value is passed to the serialize method of this class, the colander.null value will be returned.
The subnodes of the colander.SchemaNode that wraps this type are ignored.


{% load static %}
Back to School Products
Representative ID number
Sign-up fee
Select this item to take advantage of an amazing promotional price for any of our memberships!It's our way of sayiong welcome.


""" Module for processing DLS correlation data into rheological properties"""
import numpy as np
import utils
from scipy import special
import fit_funcs
import pandas as pd
[docs]def find_g0(t, corr, func=fit_funcs.stretched_exp, t0=2.0,
tmaxs=np.arange(40., 130., 10), p0=None):
""" Estimate the intercept of the correlation function at t = 0
Parameters
----------
t : 1d-array
Vector of time-lags at which the correlation coefficient is computed
corr : 1d-array
Correlation coefficient (which spans possible from 0.0 to 1.0).
Note that this is equal to `g2 - 1`, where `g2` is the intensity
autocorrelation function.
func : callable function
Model to fit the correlation against. Must be of the form
`f(t, p1, p2, ..., pM)` where `t` is the independent variable and
`p1, p2, ..., pM` is a set of M parameters to fit.
t0: float, `optional`
Minimum time-lag to use in the fit of the correlation coefficient
for estimating the intercept.
tmaxs : 1-d array or list of floats, `optional`
Vector of possible maximum time-lags to use in the fitting interval
of the correlation coefficient. The optimal tmax will be selected
based on minimization of the cross-validation error of the fit.
p0 : 1-d array, `optional`
Initial guesses for the parameters to ``func`` for fitting
Returns
-------
g0 : float
Estimate of the intercept of ``corr`` at `t=0`
twindow_min : List of floats
Optimized interval in time over which the fit to ``corr``
was performed to obtain g0. This is a list
of the form [t0, tmax].
pmin : 1d-array
Optimal values for the fitting parameters to ``func`` used to
estimate ``g0``
"""
# Construct list of fitting windows
twindows = [[t0, tmax] for tmax in tmaxs]
# Find twindow for minimum CV error
[twindow_min, pmin, CV_min] = utils.minimize_cv_error(t, g2, twindows,
func, p0)
g0 = func(0.0, *pmin)
return [g0, twindow_min, pmin]
[docs]def calc_g1(t, corr, ergodic, g0=None, Ip=None, Ie=None, eps=None):
"""Calculate the intermediate scattering function from the
intensity autocorrelation
Parameters
----------
t : 1d-array
Vector of time-lags at which the correlation function is computed
corr : 1d-array
Correlation coefficient (which spans possible from 0.0 to 1.0).
Note that this is equal to `g2 - 1`, where `g2` is the intensity
autocorrelation function.
ergodic: boolean
If False, corrections are made for non-ergodic systems
based on ``Ip`` and ``Ie``
Ip : float
Scattering intensity at the position
where correlation function is collected.
(Only used if ``ergodic=False``)
Ie : 1d-array
Vector of scattering intensities at different positions in the cuvette
(Only used if ``ergodic=False``)
g0 : float, `optional`
Estimate of the intercept of ``g2 - 1`` at time 0. If not provided,
the intercept will be estimated automatically based on a stretched
exponential fit.
Returns
-------
g1 : 1d-array
The intermediate scattering function corresponding to
the time-lags ``t``
Notes
-----
The correlation function exported by the Zetasizer software is equal to
``g2 - 1``
"""
g2 = corr + 1.
# If no intercept is provided, estimate it using a stretched exponential
# function with default parameters
if g0 is None:
# Define guesses for the stretched exponential function fitting
a0 = 1.0e-2
beta0 = 1.0
p0 = [corr[1], a0, beta0]
# Fit the correlation and get the intercept
g0 = find_g0(t, corr, func=utils.stretched_exp, t0=2.0,
tmaxs=range(40., 130., 10.), p0=p0)
if ergodic:
g1 = np.sqrt((g2-1.)/g0)
else:
Ie_avg = np.average(Ie)
# calculate the ratio of ensemble to time averaged
# intensities
Y = Ie_avg/Ip
# calculate the g1 correlation function
if eps is None:
g1 = (Y-1.)/Y+np.sqrt(g2-g0)/Y
else:
g1 = (1.-(1.-eps)/Y +
(1-eps)*np.sqrt(1. +
(g2-g0-1.)/(1-eps)**2.)/Y)
return g1
[docs]def calc_q(n, theta, lam):
""" Calculate the scattering wave-vector.
Parameters
----------
n : float
Index of refraction of the material (1.333 for water)
theta : float
Scattering angle in radians
lam : float
wave-length of laser (units used here determine the
units of ``q``)
Returns
-------
q : float
Scattering wave-vector in inverse units of ``1/lam``
"""
q = 4.*np.pi*n*np.sin(theta/2.)/(lam)
return q
[docs]def msd_local_pwr_law(t, g1, q, bw=0.1, replace_neg=True):
""" Calculate the local power-law scaling of the MSD and the
smoothed MSD by locally-weighted logarithmic linear regression
Parameters
----------
t : 1d-array
Vector of time-lags
g1 : 1d-array
Vector containing the intermediate scattering function at time-lags
given by ``t``
q : float
Scattering vector in units of 1/nm
bw : float, `optional`
Bandwith smoothing parameter for locally-weighted regression.
Reasonable values are typically between 0.05 and 0.1
Returns
-------
msd_smooth: 1d-array
Vector of smoothed MSD values from the local regression
corresponding to the time lags in ``t`` (in units of nm^2).
alpha: 1d-array
Vector of local power-law scaling exponents of the MSD
corresponding to the time lags in ``t``.
"""
msd = 6*np.log(g1)/(q**2.)
# Remove data points with 0, negative, or infinite MSD
if replace_neg:
if any(msd < 0):
print('negative msd values enountered,'
'replacing with interpolation')
neg_inds = msd < 0
t_pos = t[msd > 0]
msd_pos = msd[msd > 0]
t_neg = t[neg_inds]
msd_interp = np.interp(t_neg, t_pos, msd_pos)
msd[neg_inds] = msd_interp
# Perform a locally-weighted logarithmic linear regression
[Theta, log_msd_smooth] = utils.loess(np.log(t), np.log(msd),
degree=1, alpha=bw)
msd_smooth = np.exp(log_msd_smooth)
# Define the local power law scaling exponent based
# on the logarithmic slopes
alpha = Theta[1, :]
return [msd_smooth, alpha]
[docs]def calc_msd_raw(t, g1, q, replace_neg=True):
""" Calculate the MSD without smoothing from the intermediate scattering
function.
Parameters
----------
t : 1d-array
Vector of time-lags
g1 : 1d-array
Vector containing the intermediate scattering function at time-lags
``t``
q : float
Scattering vector in units of 1/nm
replace_neg : boolean, `optional`
If ``True``, replace negative values of the MSD by linear
interpolation
Returns
-------
msd : 1d-array
Vector of mean-squared-displacements at time-lags ``t``
(in units of nm^2)
"""
msd = 6*np.log(g1)/(q**2.)
# Remove data points with 0, negative, or infinite MSD
if replace_neg:
if any(msd < 0):
print('negative msd values enountered,'
'replacing with interpolation')
neg_inds = msd < 0
t_pos = t[msd > 0]
msd_pos = msd[msd > 0]
t_neg = t[neg_inds]
msd_interp = np.interp(t_neg, t_pos, msd_pos)
msd[neg_inds] = msd_interp
return msd
[docs]def shear_modulus(t, msd, alpha, r, T):
""" Calculate the frequency-dependent complex shear modulus from the
local power-law scaling behavior of the mean-squared-displacement
Parameters
----------
t : 1d-array
Time-lags in units of microseconds
msd : 1d-array
Mean-squared displacements at the time-lags
``t`` in units of nm^2
alpha : 1d-array of local power-law scaling exponents
r : float
Radius of the probe particles in nanometers
T : float
Temperature in Kelvin
Returns
-------
omega : 1d-array
Vector of angular frequencies in units of rad/s
G1 : 1d-array
Storage modulus at angular frequencies ``omega`` in
units of Pa
G2 : 1d-array
Loss modulus at angular frequencies ``omega`` in
units of Pa
Notes
-----
This method produces more accurate results in the upper and
lower frequency extremes than a direct numerical Laplace
or Fourier transform.
"""
# Boltzman constant
kb = 1.38e-23
# magnitude of the modulus
G = (msd**-1.)*1./(np.pi*r*special.gamma(1.+alpha))
G = kb*T*(1.e27)*G
# Storage G1 and loss G2 moduli
G1 = G*np.cos(np.pi*alpha/2.)
G2 = G*np.sin(np.pi*alpha/2.)
# Calculate omega
omega = t**-1.
# Convert omega to 1/s
omega = omega*(1.e6)
return [omega, G1, G2]
[docs]def full_dlsur_analysis(t, corr, ergodic, r, T, q, Ip, Ie,
calc_g1_kws=None, pwr_law_kws=None):
""" Perform a full DLS microrheology analysis from
correlation and scattering intensity data to obtain particle
motion statistics and rheological properties
Parameters
----------
t : 1d-array
Vector of lag-times (in microseconds)
corr : 1d-array
Vector of values of the correlation coefficient, corresponding
to the time-lags ``t``.
ergodic : boolean
If ``ergodic==False`` then corrections are applied to the
calculation of `g1`, based on ``Ip`` and ``Ie``
r : float
Particle radius in nanometers
T : float
Temperature in Kelvin
q : float
Scattering vector in 1/nm
Ip : float, `optional`
Scattering intensity at the meausurement position where ``corr``
is collected
Ie : 1d-array
Vector of scattering intensities at different measurement positions
in the cuvette
calc_g1_kws : dictionary, `optional`
Dictionary of keyword arguments to pass to
``analysis.tools.calc_g1()`` for computing the
intermediate scattering function
pwr_law_kws : dictionary, `optional`
Dictionary of keyword arguments to pass to
``analysis_tools.msd_local_pwr_law()`` for local
power-law analysis of the msd
Returns
-------
dlsmicro_df : pandas DataFrame
Dataframe containing table of results from DLS microrheology
analysis with the following columns:
dlsmicro_df columns
~~~~~~~~~~~~~~~~~~~
't' : time-lags in microseconds
"""
# Find the intermediate scattering function
g1 = calc_g1(t, corr, ergodic, Ip=Ip, Ie=Ie, **calc_g1_kws)
# Calculate the power-law smoothing of the msd
[msd_smooth, alpha] = msd_local_pwr_law(t, g1, q,
**pwr_law_kws)
# Calculate the shear modulus from the power-law smoothing
[omega, G1, G2] = shear_modulus(t, msd_smooth, alpha, r, T)
dlsmicro_dict = {'t': t, 'msd_smooth': msd_smooth,
'alpha': alpha, 'omega': omega,
'G1': G1, 'G2': G2}
dlsmicro_df = pd.DataFrame(dlsmicro_dict)
return dlsmicro_df


Today we live in a world hanging on to the seat of its pants as we hurdle faster and faster through the most intense period of technological change experienced since the Industrial revolution and soon to be ever.
As a result our current social and political systems are breaking down. Trust in our political leaders, the election process, and the media has hit an all-time low. Local governments have struggled to deliver the services most needed by their communities. Civic engagement and voter turn out numbers have slid lower and lower.
Until now.
Now is the time we come together to bring our democracy into the 21st century.
Now with the ever decreasing costs of computing, the rise of decentralized applications, and the growing mass adoption of information technology, we can build tools to restore faith in our democracy, streamline our local government services, and mobilize informed groups of voters to make their voices heard.
This is our mission: To build a community of dreamers and doers, working together to build the skills and tools needed for an Open Source Democracy.
We are huge fans of open source technologies and the communities built around them. We believe that a true democracy is open sourced in that:
We value Transparency. We value Community. We value Collaboration. We value Ideas.