Hearthrock is an open source C# Hearthstone™ bot project. Do not use this project on any real product.
Key technologies: C#, Unity3D, Mono and MonoCecil.
Pure C# codes, easy to understand, cross platform. C# is also the language which used in developing HearthStone™.
Can modify server without restart game.
100% unit test coverage.
Full documented in codes, include explainations for both Hearthrock codes and HearthSstone™ codes.
Use original client interfaces only, use public interfaces as much as possible. No network hijacking, no unsafe modification.
Decoupled AI interface.


Switch to Visual
Here are all the recent tweets from this user, along with Polarity and Magnitude values.
ID
Tweet
Mentions
Score


Wanna have a bite of a delicious Hotdog?
Come to Coffee Trees!
Only best ingridients.
Check out the menu!


Book Information |
||
| ISBN | ||
| Title | ||
| Author | ||
| Topics |
Selected Topics: |
|
| Thumbnail URL | ||
Offer Information |
||
| Interested In the following topics |
Selected Genres: |
|
| Expiration Date | ||


In this course we want to welcome you upon the path of traditional herbal practices for healing and well-being. It is titled “Applied Herbalism” because the aim is not simply academic knowledge but instead, this course is designed to guide you from someone who has little to no knowledge of herbs and herbalism to becoming a certified Herbalist, able to apply your knowledge in your life.
By working through the lessons in each of these modules you will acquire the knowledge, skills and confidence needed to be a Certified Applied Herbalist, joining a historic tradition of health care practitioners.
This course is can be taken on its own or as a continuation from the applied herbalism course. The aim of this course is to give the student the tools they need to have confident mastery in the Herbalist tradition. Similar to the applied herbalism course, this program takes it a step further bringing in a greater range of understanding and application of herbs, herbalism and how to help others become well.
By working through the lessons and completing each assignment you will acquire the knowledge, skills and confidence needed to be a certified Master Herbalist, progressing the historic tradition of herbal health care practitioners.
In a world plagued by negativity and violence we want to impart the knowledge and skills necessary to protect one’s self and their loved ones. This program explores an understanding of what “self” it is you seek to defend, the steps towards accomplishing this and what to do when you are no longer left with a choice.
This program will examine one’s identity, the nine gateways to defend in order to live in a state of security and various ways to "eliminate the threat".
Despite the flooding of the market in recent years of life coaches, this is still a valuable and profitable skill set to acquire. Our teacher is not only certified in several coaching modalities but is also a certified master coach. In this course he brings together the best techniques used in the field to help people achieve their fullest potentials.
This program is meant to be short so as to deliver the knowledge and skills quickly and clearly so it can be applied immediately. Whether you want to use this information for yourself, use it to help your friends and family or to start your own service, this course will give you the basic tools necessary without the added fluff. Those who complete this program will achieve certification as a life coach.
You deserve this knowledge. It is your right as a human. It took man thousands of years to accumulate this information but we now have easy access to to swift understanding and application. This course is designed to give the student a clear understanding of their energy body as well as different modalities to clear, cleanse, and restore balance to it.
Many courses teach one or two aspects of chakra clearing, in this program we will explain clearly the Chakras and seven methods (including, mantras, mudras, intoning, and meditation) to clear them. At the end of this course the student will be certified as a chakra energy healer, joining a long tradition of "light workers".


frex v0.1.5 Frex.Request
Handles the building of requests for sending to the Freshbooks API.
Summary
Functions
Builds an XML request from a given method and XML list
Paginates through a list to get all data in one big list
Checks the current page data to see if more pages need to be loaded
Functions
Builds an XML request from a given method and XML list.
Examples
Frex.Request.build("expenses.get", {:expense_id, %{}, 433})
# => "<?xml version="1.0" encoding="UTF-8" ?>
<request method="expenses.get">
<expense_id>433</expense_id>
</request>"
Paginates through a list to get all data in one big list.
list_fun
is a function that is passed two params:
* `creds` -- credentials for the API
* `args` -- arguments for the request (e.g. list filter map)
Returns a list.


var fetcher = new Instafetch('XXXXXXX.XXXXXXX.XXXXXXXXXXXXXXXXXXXXX'); // Get instance of fetch with the Access Token
fetcher.fetch({ // Fetch results
user: 259220806, // User ID
tag: '9gag', // Tag name
limit: 88, // How many to fetch
callback: displayInstaBlocks, // pass in your callback...
params: '9gagBlock' // ...with a parameter
});
In this example, I am getting 88 pieces of media from the user '9gag', and filtering it by the '9gag' tag.
Images are displayed using a function found in example.js
, you can also see the raw data by checking the console (usually by pressing F12). In the console, you will see two entries - the first one is the object containing all your results, the second is the parameter you passed into your callback function.
This example uses my Access Token ('XXXXXXX.XXXXXXX.XXXXXXXXXXXXXXXXXXXXX'), which you should change to yours when using it. If nothing is returned, it means my quota of 5000 per hour is used up, or that it's banned. In that case, please use your own Client ID.


In arithmetic contexts, use <
instead of -lt
Similarly, >
instead of -gt
, <=
instead of -le
, >=
instead of -ge
, ==
instead of -eq
, !=
instead of -ne
.
if (( 2 -lt 3 ))
then
echo "True"
fi
if (( 2 < 3 ))
then
echo "True"
fi
The comparators -lt
, -ge
, -eq
and friends are flags for the test
command aka [
. You are instead using it in an arithmetic context, such as (( .. ))
or $(( .. ))
, where you should be using <
, >=
, ==
etc instead.
In arithmetic contexts, -lt
is simply interpreted as "subtract the value of $lt
", which is clearly not the intention.
If you do want to subtract $lt
you can add a space to make this clear to ShellCheck: echo $((3 - lt))


You can use the JNDI to perform naming operations, including
read operations and operations
for updating the namespace.
The following operations are described in this lesson:
Configuration
Before performing any operation on a naming or directory service,
you need to acquire an
initial context--the
starting point into the namespace.
This is because all methods on naming and directory services
are performed relative to some context.
To get an initial context, you must follow these steps.
- Select the service provider of the
corresponding service you want to access.
- Specify any configuration
that the initial context needs.
- Call the
InitialContext constructor.
Step1: Select the Service Provider for the Initial Context
You can specify the service provider to use for the initial context
by creating a set of
environment properties (a
Hashtable)
and adding the name of the service provider class to it.
Environment properties are described in detail in the
JNDI Tutorial
If you are using the LDAP service provider from Sun Microsystems,
then your code would look like the following.
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sun.jndi.ldap.LdapCtxFactory");
To specify the file system service provider from Sun Microsystems,
you would write code that looks like the following.
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sun.jndi.fscontext.RefFSContextFactory");
You can also use
system properties
to specify the service provider to use.
Check out the
JNDI Tutorial for details.
Step2: Supply the Information Needed by the Initial Context
Clients of different directories might need various information
for contacting the directory.
For example, you might need to specify on which machine the server is running
and what information is needed to identify the user to the directory.
Such information is passed to the service provider via
environment properties.
The JNDI specifies some generic environment properties that service
providers can use.
Your service provider documentation will give details on the
information required for these properties.
The LDAP provider requires that the program specify the location of the LDAP
server, as well as user identity information.
To provide this information,
you would write code that looks as follows.
env.put(Context.PROVIDER_URL, "ldap://ldap.wiz.com:389");
env.put(Context.SECURITY_PRINCIPAL, "joeuser");
env.put(Context.SECURITY_CREDENTIALS, "joepassword");
This tutorial uses the LDAP service provider from
Sun Microsystems.
The examples assume that a server has been set up
on the local machine at port 389 with the root-distinguished name of
"o=JNDITutorial" and that no authentication is required for
updating the directory. They include the following code for
setting up the environment.
env.put(Context.PROVIDER_URL, "ldap://localhost:389/o=JNDITutorial");
If you are using a directory that is set up differently,
then you will need to set up these environment properties accordingly.
You will need to replace
"localhost" with the name of that machine.
You can run these examples against any
public directory servers or your own server running on a different machine.
You will need to replace
"localhost" with the name of that machine
and replace
o=JNDITutorial with the naming context that is
available.
Step3: Creating the Initial Context
You are now ready to create the initial context.
To do that, you pass to the
InitialContext constructor the environment properties that you created previously:
Context ctx = new InitialContext(env);
Now that you have a reference to a
Context object,
you can begin to access the naming service.
To perform directory operations, you need to use an
InitialDirContext. To do that, use one of its
constructors:
DirContext ctx = new InitialDirContext(env);
This statement returns a reference to a
DirContext object for performing directory operations.


Your membership directly helps to improve Mycroft's technology and user experience.
Please enter your payment information below. Your credit card information is sent to the payment service and not stored on Mycroft's servers.


Ciri Gym Coach Chatbot v0.1
Possible inputs:
Greeting: Say hello to Ciri!
Workout Planner: Input a body part and then choose your desired exercises (check below for available body parts).
Calories counter: Input calories and then the desired food item to know how many calories does 100g of it hold.
Workout Tracker: Input the month and the day that you were at the gym and then the number of hours the workout lasted.
........
Different body inputs:
Core
Back
Shoulder
Tricep
Bicep
Glute
Calf
Quad
Chest
Lat
Trap
Leg
Forearm


Welcome to Open Seismic!¶
Open Seismic is an open source sandbox environment for developers in oil & gas to perform deep learning inference on 3D/2D seismic seismic data. Open Seismic performs deep learning inference for seismic data with optimizations by OpenVINO™ Toolkit . Open Seismic is containerized to run anywhere and includes publicly available reference models for common tasks: Fault Detection , Salt Identification , Facies Classification.
Installation¶
Prerequisites¶
Before building the docker image or installing locally, we need to download some datasets.
You need to install gdown
to use the automated downloading script.
$ pip3 install gdown==3.12.2
To download the required data to the proper directory, run setup_dependencies.sh
:
$ ./setup_dependencies.sh
Lastly, set up a Python virtual environment and install required dependencies using requirements.txt
:
$ python3 -m venv open_seismic
$ source open_seismic/bin/activate
(open_seismic)$ pip install -r ./requirements.txt
Docker¶
The following command builds the docker image. This is the recommended way of installing Open Seismic and will be the default way that this README interacts with Open Seismic.
$ docker build . -t open_seismic
Note: If you have a proxy, build the docker container using the command below:
$ docker build --build-arg http_proxy=http://my-proxy:port --build-arg https_proxy=http://my-proxy:port . -t open_seismic
If you want to stop a container by name, run:
$ docker stop <container_name>
You can find the <container_name>
using the command:
$ docker ps
Next Steps¶
If you would like to learn more about Open Seismic, please go to our documentation website. If you would like a more interactive learning experience, please go to the examples/
directory and follow the instructions in the notebooks. If you would like to learn more about models that exist within Open Seismic, please go to models/demos/
and look in each folder dedicated to demo’ing a model.
In the examples/
directory, you will find four notebooks:
Example1.ipynb
: This notebook will teach you about converting models to OpenVINO IR.Example2.ipynb
: This notebook will go over how to define custom preprocessing, postprocessing, and model inference handling scripts.Example3.ipynb
: This notebook will walkthrough how to use Open Seismic by using an example JSON config file.Example4.ipynb
: This notebook allows users to rapidly get started with using Open Seismic by editing a couple of variables in the notebook.
In the models/demos/
directory, you will find three demo notebooks. Each notebook goes over how to utilize the given models in Open Seismic.
Local¶
Users can also choose to locally install Open Seismic outside of a Docker container. This option is not recommended.
Install Intel’s Distribution of OpenVINO. The required version of OpenVINO is 2021.2 or greater. Documentation for installation can be found here.
Execute the following commands in a terminal window: .. code-block:
$ python3 -m venv open_seismic $ source open_seismic/bin/activate (open_seismic)$ pip install -r ./requirements.txt
Inference¶
General Purpose Example (Handling model conversion, optimization, and inference):
$ docker run –v /path/to/vol/:/core/vol/ –v /path/to/runs/:/core/runs/ -v /path/to/models/:/core/python/models/ open_seismic /bin/bash ./run.sh "–c /path/to/config.json"
Note above that the file paths in the script options must be from root of the docker container: “/”. Recommended file structure is introduced in the documentation.
For more information, please reference the details sections below. For a more hands-on approach, use our example notebooks located at examples/
to get familiar with Intel Infer Seismic. If you would like a more hands-on experience with using Open Seismic’s models, go to models/
and navigate to the directory associated with your model of choice.
Visualization¶
An example of how to use our visualizer is featured below:
$ ./core/executables/visualize.sh --input fseg_output --output visualization --model_type fault --slice_no 100
Output visualized images will be saved to path/to/runs/latest_data_folder/visualization
.
Note: Since visualize.sh
works with the last inference, please make sure its type is the same as the visualization type. You also must install the Python dependencies in requirements.txt
.
Citations¶
If you use this toolbox or benchmark in your research, please cite the following papers:
@article{wu2019faultSeg,
author = {Xinming Wu and Luming Liang and Yunzhi Shi and Sergey Fomel},
title = {Fault{S}eg3{D}: using synthetic datasets to train an end-to-end convolutional neural network for 3{D} seismic fault segmentation},
journal = {GEOPHYSICS},
volume = {84},
number = {3},
pages = {IM35-IM45},
year = {2019},
}
@article{doi:10.1190/tle37070529.1,
author = { Anders U. Waldeland and Are Charles Jensen and Leiv-J. Gelius and Anne H. Schistad Solberg },
title = {Convolutional neural networks for automated seismic interpretation},
journal = {The Leading Edge},
volume = {37},
number = {7},
pages = {529-537},
year = {2018},
}
@article{alaudah2019machine,
title={A Machine Learning Benchmark for Facies Classification},
author={Yazeed Alaudah and Patrycja Michalowicz and Motaz Alfarraj and Ghassan AlRegib},
year={2019},
eprint={1901.07659},
archivePrefix={arXiv},
primaryClass={eess.IV}
}


--- layout: post title: script to generate BASH scripts date: 2014-10-22 05:32:07.000000000 +02:00 type: post parent_id: '0' published: true password: '' status: publish categories: - Linux tags: - pygame - python meta: _edit_last: '49460244' publicize_facebook_url: https://facebook.com/10203695151754271 geo_public: '0' _wpas_done_3508581: '1' _publicize_done_external: a:1:{s:8:"facebook";a:1:{i:1081800551;b:1;}} _wpas_skip_3508581: '1' author: login: mpho112 email<EMAIL_ADDRESS>display_name: Mpho first_name: '' last_name: '' ---
I create scripts on a day to day basis, and I eventually got bored of manually creating scripts from initial phase everytime, hence this master of scripts.
[sourcecode language="bash" wraplines="false" collapse="false"]
#!/bin/bash
# BASH script to generate BASH scripts
# Created by Mpho Mphego
echo "What do you want to call your BASH script?"
read RESPONSE
echo "#!/bin/bash" | tee ~/tmp/$RESPONSE.sh
echo "# Filename:$RESPONSE.sh" | tee -a ~/tmp/$RESPONSE.sh
echo "# The purpose of this script is to ..." | tee -a ~/tmp/$RESPONSE.sh
echo "# Script written by Mpho Mphego Marion Island SANSA Engineer 2014-2015" | tee -a ~/tmp/$RESPONSE.sh
sudo chmod +x ~/tmp/$RESPONSE.sh
sudo ln -s ~/tmp/$RESPONSE.sh ~/bin/$RESPONSE.sh
sudo chmod +x ~/bin/$RESPONSE.sh
gedit ~/tmp/$RESPONSE.sh
[/sourcecode]


Big data systems lab notes
Phase 1: Project selection
All original material on this page created by Marios Fragkoulis is licensed under the
Creative Commons Attribution-Noncommercial-No Derivative Works 2.5 License
.
Last change:


Spring tries to resolve the object graph based on type, name, etc. Basic Autowiring does not use Annotations.


13 Path Analysis
13.1 PGLS regression
Let’s have a closer look at using PGLS regression in statistical analyses. We’ll be using the same data and tree from the previous chapter.
If we have a look into the data file provided, we notice a number of continuous variables describing primates. Let’s say we’re interested in what makes some primates live such long lives. The natural thing to do, is run a PGLS regression with longevity as the outcome.
[1] "Order" "Family" "Binomial" "AdultBodyMass_g"
[5] "GestationLen_d" "HomeRange_km2" "MaxLongevity_m" "SocialGroupSize"
First, we need a comparative data object combining our data and tree.
library(caper)
primates<-comparative.data(phy = primate.tree, data = primate.data,
names.col = Binomial, vcv = TRUE,
na.omit = FALSE, warn.dropped = FALSE)
Now we can assemble and run our model. We want to predict longevity. Many things might influence longevity so how about something like this.
\[ \text{Longevity = Body Mass + Gestation + Home Range + Group Size}\]
Pretty much all of those will need to be log transformed in our model. We can do this ahead of time to make the code easier.
primates$data$log.mass <- log10(primates$data$AdultBodyMass_g)
primates$data$log.gestation <- log10(primates$data$GestationLen_d)
primates$data$log.range <- log10(primates$data$HomeRange_km2)
primates$data$log.group <- log10(primates$data$SocialGroupSize)
primates$data$log.lifespan <- log10(primates$data$MaxLongevity_m)
Now we can run the model just as we did in the previous chapter.
m1 <- pgls(log.lifespan ~ log.mass + log.gestation + log.range + log.group,
data = primates, lambda = "ML")
summary(m1)
Call:
pgls(formula = log.lifespan ~ log.mass + log.gestation + log.range +
log.group, data = primates, lambda = "ML")
Residuals:
Min 1Q Median 3Q Max
-0.045758 -0.011997 0.001693 0.008869 0.042009
Branch length transformations:
kappa [Fix] : 1.000
lambda [ ML] : 0.683
lower bound : 0.000, p = 0.030195
upper bound : 1.000, p = 1.9055e-12
95.0% CI : (0.168, 0.889)
delta [Fix] : 1.000
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.119950 0.404224 5.2445 1.307e-06 ***
log.mass 0.126652 0.045236 2.7998 0.006443 **
log.gestation -0.037853 0.212621 -0.1780 0.859162
log.range 0.027879 0.023855 1.1687 0.246091
log.group 0.028718 0.038070 0.7544 0.452910
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.01793 on 78 degrees of freedom
Multiple R-squared: 0.2713, Adjusted R-squared: 0.234
F-statistic: 7.262 on 4 and 78 DF, p-value: 5.036e-05
We have a \(\lambda\) of 0.683. This is not the phylogenetic signal of lifespan or any other variable in the model. Rather, it is the phylogenetic signal of the residuals of the model. As you can see, there clearly is a signal here and it’s different from 0 (p = 0.03) and 1 (p < 0.001). However, as you can see from the lambda profile below, the CIs are very wide.
Not to worry! On we go. The coefficients table in the results output is what we really want to look at here. We can see that the overall fit of the model is significant (R2 = 0.23, p < 0.001) but a little underwhelming. The only significant predictor of longevity in our model is body mass (\(\beta\) = 0.13, se = 0.05, p = 0.006). Our other variables do not significantly predict lifespan.
However, we’re not done yet! This is where we can employ deletion testing. It is pretty clear that gestation is the most useless component of our model (\(\beta\) = -0.04, se = 0.21, p = 0.86). An effect size around 0 with a large standard error and p-value is something we don’t need in our lives. So we can re-run the model dropping this variable.
IMPORTANT: ONLY DROP ONE VARIABLE AT A TIME!
m2 <- pgls(log.lifespan ~ log.mass + log.range + log.group,
data = primates, lambda = "ML")
summary(m2)
Call:
pgls(formula = log.lifespan ~ log.mass + log.range + log.group,
data = primates, lambda = "ML")
Residuals:
Min 1Q Median 3Q Max
-0.052816 -0.013804 -0.000923 0.007778 0.037524
Branch length transformations:
kappa [Fix] : 1.000
lambda [ ML] : 0.681
lower bound : 0.000, p = 0.018281
upper bound : 1.000, p = 1.9111e-12
95.0% CI : (0.178, 0.889)
delta [Fix] : 1.000
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.052722 0.142450 14.4101 < 2.2e-16 ***
log.mass 0.122130 0.037140 3.2884 0.001506 **
log.range 0.028703 0.023321 1.2308 0.222061
log.group 0.027939 0.037602 0.7430 0.459670
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.0178 on 79 degrees of freedom
Multiple R-squared: 0.2716, Adjusted R-squared: 0.2439
F-statistic: 9.817 on 3 and 79 DF, p-value: 1.412e-05
Our new output presents a similar picture. Body mass is significantly predicting longevity. This time we might want to look at dropping group size (\(\beta\) = 0.03, se = 0.04, p = 0.46).
Call:
pgls(formula = log.lifespan ~ log.mass + log.range, data = primates,
lambda = "ML")
Residuals:
Min 1Q Median 3Q Max
-0.038916 -0.012031 0.000161 0.010589 0.040507
Branch length transformations:
kappa [Fix] : 1.000
lambda [ ML] : 0.669
lower bound : 0.000, p = 0.020906
upper bound : 1.000, p = 2.0745e-12
95.0% CI : (0.143, 0.886)
delta [Fix] : 1.000
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.077904 0.137147 15.1510 < 2.2e-16 ***
log.mass 0.120965 0.036786 3.2883 0.001499 **
log.range 0.035873 0.021436 1.6735 0.098141 .
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.01758 on 80 degrees of freedom
Multiple R-squared: 0.271, Adjusted R-squared: 0.2528
F-statistic: 14.87 on 2 and 80 DF, p-value: 3.224e-06
Now we’re getting somewhere. We have reduced our maximal model to something a little more descriptive. We can keep going with this until we have eliminated all non-significant variables. However, at each stage, we should make sure that dropping variables doesn’t reduce our model fit! At each stage so far, the model fit has got better (see the bottom line of each output). What would happen if you also dropped range?
Also keep in mind that the model we’ve built here doesn’t use any interaction terms. These can be included just as in any other model and treated in the same way!
13.2 Variance Inflation
In analyses like the one above, it is not uncommon to run into problems. When constructing a regression model, it is important to make sure your predictor variables don’t correlate.
As we can see here, this is clearly not the case. Exactly how much of a problem this can be is uncertain. Strong correlations are hugely problematic but weak ones are probably not that big a deal.
Imagine if we had two strongly correlated predictor variables in a model. How would we determine which one was causing the variation in our outcome? The more strongly correlated these predictors are, the more difficult it becomes to use them both to predict an outcome. This is called variance inflation (or multicollinearity).
The function vif in the package car (Fox and Weisberg 2019) calculates the variance inflation factor of a model. Here we can see that every variable in our model has a VIF greater than 1, indicating we do have some multicollinearity. However, there is no critical value beyond which variance inflation becomes a problem. As a general rule of thumb, a value that exceeds 5 is considered enough of a problem that you shouldn’t trust your results.
m1.1 <- lm(primates$data$log.lifespan ~ primates$data$log.mass +
primates$data$log.gestation + primates$data$log.range +
primates$data$log.group)
library(car)
vif(m1.1)
primates$data$log.mass primates$data$log.gestation
3.724550 2.109221
primates$data$log.range primates$data$log.group
3.433493 2.045929
So it may be that we don’t have a problem here and we’re probably ok to proceed. Note however that I had to calculate VIF for the uncorrected model (without phylogenetic correction) so the true values for the pgls may differ slightly.
13.3 Path Analysis
In comparative analyses, multicollinearity is to be expected. Many traits of a given animal are influenced by other traits. To solve this problem, we have path analysis (von Hardenberg and Gonzalez-Voyer 2013, Gonzalez-Voyer and Von Hardenberg 2014).
In path analysis, we take a number of variables and define a causal model. This model consists of vertices (our variables) and arrows which define the relationships between the variables. This is an example of such a model.
Models like this one can be complex with many arrows showing a complex network of relationships. This is fairly typical of biological systems! If you study it closely, you’ll be able to see that it describes the interactions between variables. For example, body size directly influences lifespan, home range, activity, BMR and diet. The relationships described by these arrows represent a causal hypothesis.
Confirmatory path analysis was developed to test causal hypotheses that can be represented by Directed Acyclic Graphs (DAGs) (Shipley 2000). DAG is the term given to the graphical representation of the variables and the hypothesised relationships between them. We can test if a DAG is a reasonable hypothesis using a principle called distance-sepearation or d-sep for short (Shipley 2000).
D-sep tests conditional independencies in your DAG. If two vertices are not connected by an arrow, then the model implies that these variables are not causally linked.
This example DAG contains a number of independencies. BM and DD are unconnected and therefore should be independent if this model is reasonable. We can actually build a model to test that indepedency as follows:
\[ \text{DD = BM + NL}\]
Note that NL must be included as a predictor of DD as it is in the model. If BM and DD are truly independent, then this model would return no statistically significant relationship between them.
This is not the only independency to test for. LS and RS, DD and LS, NL and LS, and BM and RS are all also independent under the DAG and so need to be tested in the same way. The probabilities of all these tests are combined using Fisher’s C test (Shipley 2016).
To calculate C, we add the natural logs of all the p-values describing the supposed independencies using the formula below where k is the number of indepedence tests.
\[ C = -2 \sum_{i=1}^k \text{ln(p}_i) \]
Using this approach for numerous models, we can begin to compare competeing hypotheses and select the most appropriate model. To do so, we can calculate the C-statistic Information Criterion with a modification for small sample sizes (CICc) with the following formula where n is the sample size, q is the number of parameters and C is the C-statistic.
\[ \text{CICc} = C + 2q \times \frac{n}{(n - q - 1)}\]
CICc is an information theory based approach. Essentially, the smaller the value of CICc the better the fit of the model to the data. There’s no hard limit for distinguishing between two models but the general rule of thumb is that a difference in CICc of more than 2 mean that one model is a better fit than the other. Within 2 and we can’t reliably distinguish between the models.
So far, I’ve taken you through confirmatory path analysis but I haven’t mentioned phylogentic control at all. Path analysis without phylogenetic control is performed using generalised linear models (glms)
Let’s see how this works with an example.
13.3.1 Example
For this demonstration I’m loading in some new data (von Hardenberg and Gonzalez-Voyer 2013, Gonzalez-Voyer and Von Hardenberg 2014). The data contains information on five continuous variables for 100 species from a group of mammals called the Rhinogradentia (Stumpke 1957).
rhino.dat <- read.csv("rhino.csv")
rownames(rhino.dat) <- rhino.dat$SP
rhino.tree <- read.tree("rhino.tree")
Path analysis is something I used to do manually, model by model. However, as is usual in comparative studies, someone has written a package called phylopath that does it all quite simply (van der Bijl 2018). We’ll also need ggforce to help with plotting later on (Pedersen 2019).
The first step is to define the models using the function define_model_set. Take your time over this! Typos will be very important. In this instance, let’s reproduce the example DAG from above. The formulae are passed in the same style as any formula in R.
We can plot the model using the function plot_model_set. The extra arguments here clean up the plot a little. box_x and box_y create a box around the vertices to force the arrows not to overlap with the text. text_size and edge_width set the font size and arrow size respectively.
The layout isn’t exactly the same as the previous diagram but we can manipulate that with the argument manual_layout if we wish. We need to create a dataframe with x and y coordinates for the final plots. We can also set the arrows to be straight by setting curvature to be 0.
pos <- data.frame(names = c("RS", "DD", "NL", "BM", "LS"),
x = c(1,1.5,1.5,.5,.5),
y = c(0,.5,1,1,.5))
plot_model_set(m, text_size = 10, box_x = 18, box_y = 16,
edge_width = 2, manual_layout = pos, curvature = 0)
For the full analysis, let’s define a number of possible models and try and see which best describes the data. We start with define_model_set and pass lists of formulae to each model which here I have named numerically 1 to 9. We’ve also passed some formulae to the .common option as these formulae are present in every model. This saves a fair bit of repetition.
m <- define_model_set(
one = c(RS ~ DD),
two = c(DD ~ NL, RS ~ LS + DD),
three = c(RS ~ NL),
four = c(RS ~ BM + NL),
five = c(RS ~ BM + NL + DD),
six = c(NL ~ RS, RS ~ BM),
seven = c(NL ~ RS, RS ~ LS + BM),
eight = c(NL ~ RS),
nine = c(NL ~ RS, RS ~ LS),
.common = c(LS ~ BM, NL ~ BM, DD ~ NL)
)
Because this is a complex step, ALWAYS check your Directed Acyclic Graphs (DAGs) describing your models look as you expect them to.
plot_model_set(m, text_size = 6, box_x = 12, box_y = 10,
edge_width = 1.25, manual_layout = pos, curvature = 0)
If we are doing this by hand, now we need to identify d-separation statements and test conditional independencies. Phylopath does it all for us. To interpret the final results, you really need to understand what happens in this step so take it slow and revisit the explanations above. You can also refer to the methods papers which explain things very well (von Hardenberg and Gonzalez-Voyer 2013, Gonzalez-Voyer and Von Hardenberg 2014).
If we call up the results, we get some basic information. Here our results contain the models and the PGLS analyses used to evaluate each model.
A phylogenetic path analysis, on the variables:
Continuous: BM NL DD RS LS
Binary:
Evaluated for these models: one two three four five six seven eight nine
Containing 46 phylogenetic regressions, of which 22 unique
The summary of the results object gives us the table for model comparisons. For each model we have all the key stats. We can see that the top six models are not rejected based on d-separation (p > 0.05). Pay particular attention to the CICc (C-statistic Information Criterion) and \(\Delta\)CICc. You’ll notice that the table is helpfully sorted for us by \(\Delta\)CICc.
model k q C p CICc delta_CICc l w
eight eight 6 9 6.11 9.10e-01 26.1 0.00 1.00e+00 3.44e-01
four four 5 10 4.78 9.05e-01 27.3 1.14 5.66e-01 1.95e-01
six six 5 10 4.97 8.93e-01 27.4 1.33 5.14e-01 1.77e-01
nine nine 5 10 5.73 8.37e-01 28.2 2.09 3.52e-01 1.21e-01
five five 4 11 3.46 9.03e-01 28.5 2.34 3.10e-01 1.07e-01
seven seven 4 11 4.70 7.89e-01 29.7 3.59 1.66e-01 5.72e-02
three three 6 9 27.17 7.30e-03 47.2 21.06 2.68e-05 9.20e-06
one one 6 9 62.01 9.70e-09 82.0 55.89 7.29e-13 2.51e-13
two two 5 10 60.97 2.38e-09 83.4 57.33 3.56e-13 1.23e-13
We can plot the summary of results and we are presented with a very useful plot, showing us the degree of support for each model. In this case, the top 3 (models eight, six and four) are within 2 CICc of each other and therefore have roughly equal statistical support.
For now, let’s just plot the best model.
The numbers and width of each arrow represent the path coefficents (effect sizes). The blue colour represents a positive relationship. A negative relationship would be red. Remember here that we have a few models with roughly equivalent support. We can average these models if this happens. The cut_off argument tells us where to place the limit of support. By default this is 2 CICc and so the function average will only average the models that fall within 2 CICc of the best supported model.
13.4 Conclusion
So that’s a path analysis. I’ve skirted over some details here because this particular method is complex and the package used here strips out a lot of the manual effort needed to do a path analysis. This is a good thing. It cuts down the computing time and means you don’t have to write as much code. However, it does mean you can run the analysis without really understanding it. This could be a problem when you need to write it up or present it so be sure you know what’s happening.
For getting to the end, here’s a slightly confused looking monkey.
Bibliography
Fox, J. and Weisberg, S. (2019) An R Companion to Applied Regression [online] Third. Thousand Oaks CA: Sage. available from <https://socialsciences.mcmaster.ca/jfox/Books/Companion/>
Gonzalez-Voyer, A. and Von Hardenberg, A. (2014) ‘An Introduction to Phylogenetic Path Analysis’. in Modern Phylogenetic Comparative Methods and Their Application in Evolutionary Biology. Springer, 201–229
Pedersen, T.L. (2019) Ggforce: Accelerating ’Ggplot2’ [online] available from <https://CRAN.R-project.org/package=ggforce>
Shipley, B. (2016) Cause and Correlation in Biology: A User’s Guide to Path Analysis, Structural Equations and Causal Inference with R. Cambridge University Press
Shipley, B. (2000) ‘A New Inferential Test for Path Models Based on Directed Acyclic Graphs’. Structural Equation Modeling 7 (2), 206–218
Stumpke, H. (1957) The Snouters: Form and Life of the Rhinogrades. Stuttgart: Gustav Fischer Verlag
van der Bijl, W. (2018) ‘Phylopath: Easy Phylogenetic Path Analysis in R.’ PeerJ 6, e4718
von Hardenberg, A. and Gonzalez-Voyer, A. (2013) ‘Disentangling Evolutionary Cause-Effect Relationships with Phylogenetic Confirmatory Path Analysis’. Evolution 67 - 2, 378–387


Assistant
Synopsis
Demonstration project showing the use of AVS in a variety of application areas.
Description
The Assistant project is a demonstration application that shows how AVS/Express
may be used in a number of different application areas. The application areas
available are:
- Standard 2D/3D Visualisation
- Finite Element Modelling
- Environmental Factor Visualisation
- Medical Visualisation
- Computational Fluid Dynamics
- Commercial Visualisation
Each of these areas has a set of sample data available and the user can choose
from a number of ways of visualising each piece of data. The options available
are appropriate for each application area. The user can also choose to read in
their own data. All the standard properties are available for editing. These
include setting the camera, scene and object rendering properties.
Installation
Due to the way the Assistant project works the directory it is located in has
to be specified. This is done by editing the a_start.v file. Open
this file using a standard text editior such as MSDOS Edit, vi or emacs and
find the line:
$setenv ASSIST_HOME c:/assist
Alter this line so that it points to the location of Assistant directory
on your system. For example if the Assistant project was installed by
fred on a Unix system in his home directory then the Assistant
directory might be /usr/people/fred/assist. Therefore he would
edit the a_start.v to read:
$setenv ASSIST_HOME /usr/people/fred/assist
Starting the Assistant
To start the Assistant load the application file a_start.v
using any of the standard methods. The easiest way to do this is to
choose the menu option File->Load Application... and browse
for the a_start.v file from there. The application can also
be loaded from the AVS startup dialog box or from the command line.
Using the Assistant
The Assistant will start with the main menu shown below:
Each of six pictures selects a different application area. A text
description of each can be seen by resting the mouse pointer over each
picture. Selecting one of the options brings a sub-menu similar to that
shown below:
It also brings up a larger window. This is the scene viewer and will
display the results of your visualisations. The sub-menu window can be
broken up into two sections, a toolbar at the top of the window and a
number of option panels. Clicking on a picture in an option panel enables
the visualisation that it represents. The visualisation selected will appear
in the scene viewer and parameters will appear in the right-hand panel. These
parameters can be edited in place or the button below the picture can be used
to enlarge the parameters panel. Click the RETURN button to return
to the sub-menu. These options are shown in the picture below:
The toolbar options are shown below. The two rightmost buttons perform
the same functions as in AVS/Express and can be used to reset any
rotations of the scene that you may have made.
Technical Details
The demonstration application is entirely written in V code. It creates
and destorys user interface components as required by dynamically
instancing and deinstancing objects. This technique has many uses when
developing applications with AVS/Express and it can be learnt by
studying out the Assistant project works. It particular the dynamic
creation and destruction of objects can be seen if the Network Editor is
examined.
Authors
Dr. Johannes Widyanatta
Advanced Visual Systems GmbH
Modifications
Andrew Dodd


Turning CO2 carbon dioxideinto oxygen and carbonC02 -> C + O2
Have to strip out the Carbonfree the Oxygen into air.
Ultraviolet light breaks the CO2 molecules.
Pure form of carbon is graphiteextracted from CO2 molecules.
High energy electrolyzers are needed
Any Car's Combustion Engine provides heat as energy source.
This Muffler Spits Oxygen, and collects carbon powder residue!
Just clean-up the filter and collect pure graphite powder.
When outside temp is below zero, cold air is pushed in through a trap.Energy is saved when compressor is inactive!
You pilot a flying drone,as if you were a duck.
Joining a group of ducks in a migration flight gives full bonus!
Ploymisation add flex to PET plastic.The birth to a new material:
The new electrical wires insulator!
Stays soft at extreme temperatures (-10K to +10K degrees)
PET-O-PLASTICSupports 10x faster electricity
I am The Apeman!
any combustion engine.
is a steam power source.
activates a push-wheel mecanism
increasing 60-70% energy efficiency.
Music therapy involves using a person’s responses and connections to music to encourage positive changes in mood and overall well-being.
Music can be used in daily life for relaxation, to gain energy when feeling drained, for catharsis when dealing with emotional stress.
End of Chapter.
Apeman


Lesson Plan Title: Client Side Filtering
Concept / Topic To Teach:
It is always a good practice to send to the client
only information which they are supposed to have access to.
In this lesson, too much information is being sent to the
client, creating a serious access control problem.
General Goal(s):
For this exercise, your mission is exploit the extraneous
information being returned by the server to discover information
to which you should not have access.
This Lab consists of two Stages. In the first Stage you have to
get sensitive information . In the second one you have to fix the problem.
Use Firebug to solve this stage. If you are using IE you can try it with IEWatch.
First use any person from the list and see what you get. After doing this you can search for a specific person in Firebug. Make sure you find the hidden table with the information, including the salary and so on. In the same table you will find Neville.Now write the salary into the text edit box and submit your answer!
Stage 2
In this stage you have to modify the clientSideFiltering.jsp which you will find under
the WebContent in the lessons/Ajax folder. The Problem is that
the server sends all information to the client. As you could see
even if it is hidden it is easy to find the sensitive date. In this
stage you will add a filter to the XPath queries. In this file you will find
following construct:
StringBuffer sb = new StringBuffer();
sb.append("/Employees/Employee/UserID | ");
sb.append("/Employees/Employee/FirstName | ");
sb.append("/Employees/Employee/LastName | ");
sb.append("/Employees/Employee/SSN | ");
sb.append("/Employees/Employee/Salary ");
String expression = sb.toString();
This string will be used for the XPath query. You have to guarantee that a manger only can see employees which are working for him. To archive this you can use filters in XPath. Following code will exactly do this:
StringBuffer sb = new StringBuffer();
sb.append("/Employees/Employee[Managers/Manager/text() = " + userid + "]/UserID | ");
sb.append("/Employees/Employee[Managers/Manager/text() = " + userid + "]/FirstName | ");
sb.append("/Employees/Employee[Managers/Manager/text() = " + userid + "]/LastName | ");
sb.append("/Employees/Employee[Managers/Manager/text() = " + userid + "]/SSN | ");
sb.append("/Employees/Employee[Managers/Manager/text() = " + userid + "]/Salary ");
String expression = sb.toString();
Now only information is sent to your client you are authorized for. You can click on the button.


- ub - Variable in class eu.smartdatalake.simsearch.engine.processor.ranking.AggregateResult
-
- udfClause - Variable in class eu.smartdatalake.simsearch.engine.processor.insitu.SimSearchJdbcQuery
-
- UnityNormal<V> - Class in eu.smartdatalake.simsearch.manager.ingested.numerical
-
Unity-based normalization (a.k.a.
- UnityNormal(double, double, double) - Constructor for class eu.smartdatalake.simsearch.manager.ingested.numerical.UnityNormal
-
Constructor
- unmount(String) - Method in class eu.smartdatalake.simsearch.service.SimSearchController
-
Unmounts all data sources associated with the given API key, and destroys the corresponding instance of SimSearch.
- updateBounds(AggregateResult, int) - Method in class eu.smartdatalake.simsearch.engine.processor.ranking.PartialRandomAccessRanking
-
Updates bounds regarding the score of a query result by randomly accessing any attribute values available in the partial lookups.
- updateRankedList(String) - Method in class eu.smartdatalake.simsearch.engine.processor.ranking.NoRandomAccessRanking
-
Inserts or updates the ranked aggregated results based on a result from a queue.
- updateRankedList(String) - Method in class eu.smartdatalake.simsearch.engine.processor.ranking.PartialRandomAccessRanking
-
Inserts or updates the ranked aggregated results based on a result from a queue.
- updateRankedList(String, int) - Method in class eu.smartdatalake.simsearch.engine.processor.ranking.SingletonRanking
-
Inserts or updates the ranked aggregated results based on a result from the i-th queue
- updateRankedList(String) - Method in class eu.smartdatalake.simsearch.engine.processor.ranking.ThresholdRanking
-
Inserts or updates the ranked aggregated results based on a result from a queue.
- updateScoreRandomAccess(AggregateResult, int) - Method in class eu.smartdatalake.simsearch.engine.processor.ranking.ThresholdRanking
-
Calculates the total aggregated score of a query result by randomly accessing its attribute values.
- updateUpperBounds(int) - Method in class eu.smartdatalake.simsearch.engine.processor.ranking.NoRandomAccessRanking
-
Updates upper bounds of ranked aggregated results at current iteration
- uri - Variable in class eu.smartdatalake.simsearch.engine.processor.insitu.ElasticSearchRestQuery
-
- uri - Variable in class eu.smartdatalake.simsearch.manager.insitu.HttpRestConnector
-
- url - Variable in class eu.smartdatalake.simsearch.request.MountSource
-
- username - Variable in class eu.smartdatalake.simsearch.manager.insitu.HttpRestConnector
-
- username - Variable in class eu.smartdatalake.simsearch.request.MountSource
-
- Util - Class in eu.smartdatalake.simsearch.pivoting.rtree.internal
-
- Util() - Constructor for class eu.smartdatalake.simsearch.pivoting.rtree.internal.Util
-


This software is distributed under the BSD license for all users. Everyone who uses this software is invited to join the xia2bb mailing list. Finally, if you use this software in solving a structure which is published, please acknowledge it! Thanks!
This software depends upon CCP4 and will also make use of Labelit and XDS - users are reminded that it is their responsibility to have properly obtained licenses for this software.
Copyright (c) 2006, Graeme Winter, CCLRC
Copyright (c) 2009, Graeme Winter, Diamond Light Source
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.


{% extends 'base.html' %} {% block content %}
Adding a patch that changes code? Make sure it includes unit tests! See the complete acceptance criteria. Thanks!


Introduction
The requirement of satellite infrastructure for the North.
Orbits
Details of orbits used currently and possible options.
SEAL SAT
Description of the SEAL SAT orbit proposal.
Appendix
TLEs for the SEAL SAT proposal.
Links
Useful links.
Links
Links
TLE Dataset Definition
Spacecraft Orbits
Wikipedia: Molniya Orbit
Cosmographia Solar System Simulator (Used for satellite orbit calculation)
Previous Page
Next Page


RT @davystevenson: 'If you are having a hard time writing tests for your API, your customers will have a hard time using it as well' - @drb…
3/7/2014, 4:25:23 PM
Favs: 0
Retweets: 0
link--- layout: tweet ---
RT @davystevenson: 'If you are having a hard time writing tests for your API, your customers will have a hard time using it as well' - @drb…
3/7/2014, 4:25:23 PM
Favs: 0
Retweets: 0
link


Kinesis
Amazon Kinesis Streams enables you to build custom applications that process or analyze streaming data for specialized needs.
Amazon Kinesis Streams can continuously capture and store terabytes of data per hour from hundreds of thousands of sources such as website clickstreams,
financial transactions, social media feeds, IT logs, and location-tracking events.
Kinesis Streams captures a time-ordered sequence of events, and stores this information in a log for up to 7 days.
Gordon allow you to integrate your lambdas with kinesis using their streams service.
Every time on event gets published into the kinesis stream, one of our lambdas is executed.
Note
As always, is not gordon’s business to create the source stream
. You should create them in advance. You can read Why in the FAQ
Anatomy of the integration
kinesis:
{ INTEGRATION_NAME }:
lambda: { LAMBDA_NAME }
stream: { ARN }
batch_size: { INT }
starting_position: { STARTING_POSITION }
Properties
Integration Name
| Name |
Key of the kinesis map. |
| Required |
Yes |
| Valid types |
string |
| Max length |
30 |
| Description |
Name for your kinesis integration. Try to keep it as short and descriptive as possible. |
Lambda
| Name |
lambda |
| Required |
Yes |
| Valid types |
lambda-name |
| Description |
Name of the lambda you want to notify |
Stream
| Name |
stream |
| Required |
Yes |
| Valid types |
arn |
| Description |
Arn of the kinesis stream you want to connect your lambda with. |
Batch size
| Name |
batch_size |
| Required |
No |
| Default |
100 |
| Valid types |
integer |
| Min |
1 |
| Max |
10000 |
| Description |
Number of events you want your lambda to receive at once |
Starting position
| Name |
starting_position |
| Required |
Yes |
| Valid Values |
TRIM_HORIZON , LATEST |
| Description |
Number of events you want your lambda to receive at once |
- TRIM_HORIZON: Start reading at the last (untrimmed) stream record, which is the oldest record in the shard.
- LATEST: Start reading just after the most recent stream record in the shard, so that you always read the most recent data in the shard.
Full Example
kinesis:
my_kinesis_integration:
lambda: app.kinesisconsumer
stream: arn:aws:kinesis:eu-west-1:123456789:stream/kinesisexample
batch_size: 100
starting_position: LATEST


About
This website is part of the course websoft Course page: DA377B
In this course we will learn the basics of webprogramming
a representiv image for the course, at your own liking.
This website is part of the course websoft Course page: DA377B
In this course we will learn the basics of webprogramming
a representiv image for the course, at your own liking.


--- layout: page title: "Aerial Footage" description: "" active: gallery header-img: "img/gallery-bg.jpg" album-title: "DJI Phantom 3 Standard" images: - image_path: /gallery/archive/aerial/002.jpg caption: IMAGE 1 copyright: © cleristodantas - image_path: /gallery/archive/aerial/003.jpg caption: IMAGE 2 copyright: © cleristodantas - image_path: /gallery/archive/aerial/004.jpg caption: IMAGE 3 copyright: © cleristodantas - image_path: /gallery/archive/aerial/005.jpg caption: IMAGE 4 copyright: © cleristodantas - image_path: /gallery/archive/aerial/006.jpg caption: IMAGE 5 copyright: © cleristodantas - image_path: /gallery/archive/aerial/007.jpg caption: IMAGE 6 copyright: © cleristodantas - image_path: /gallery/archive/aerial/008.jpg caption: IMAGE 7 copyright: © cleristodantas - image_path: /gallery/archive/aerial/009.jpg caption: IMAGE 8 copyright: © cleristodantas - image_path: /gallery/archive/aerial/010.jpg caption: IMAGE 9 copyright: © cleristodantas - image_path: /gallery/archive/aerial/011.jpg caption: IMAGE 10 copyright: © cleristodantas - image_path: /gallery/archive/aerial/013.jpg caption: IMAGE 11 copyright: © cleristodantas - image_path: /gallery/archive/aerial/014.jpg caption: IMAGE 12 copyright: © cleristodantas - image_path: /gallery/archive/aerial/015.jpg caption: IMAGE 13 copyright: © cleristodantas - image_path: /gallery/archive/aerial/016.jpg caption: IMAGE 14 copyright: © cleristodantas - image_path: /gallery/archive/aerial/017.jpg caption: IMAGE 15 copyright: © cleristodantas - image_path: /gallery/archive/aerial/018.jpg caption: IMAGE 16 copyright: © cleristodantas - image_path: /gallery/archive/aerial/019.jpg caption: IMAGE 17 copyright: © cleristodantas - image_path: /gallery/archive/aerial/020.jpg caption: IMAGE 18 copyright: © cleristodantas - image_path: /gallery/archive/aerial/021.jpg caption: IMAGE 19 copyright: © cleristodantas - image_path: /gallery/archive/aerial/022.jpg caption: IMAGE 20 copyright: © cleristodantas - image_path: /gallery/archive/aerial/023.jpg caption: IMAGE 21 copyright: © cleristodantas - image_path: /gallery/archive/aerial/024.jpg caption: IMAGE 22 copyright: © cleristodantas - image_path: /gallery/archive/aerial/025.jpg caption: IMAGE 23 copyright: © cleristodantas - image_path: /gallery/archive/aerial/026.jpg caption: IMAGE 24 copyright: © cleristodantas - image_path: /gallery/archive/aerial/027.jpg caption: IMAGE 25 copyright: © cleristodantas - image_path: /gallery/archive/aerial/028.jpg caption: IMAGE 26 copyright: © cleristodantas - image_path: /gallery/archive/aerial/029.jpg caption: IMAGE 27 copyright: © cleristodantas - image_path: /gallery/archive/aerial/030.jpg caption: IMAGE 28 copyright: © cleristodantas - image_path: /gallery/archive/aerial/031.jpg caption: IMAGE 29 copyright: © cleristodantas - image_path: /gallery/archive/aerial/032.jpg caption: IMAGE 30 copyright: © cleristodantas ---


Productive and efficient execution process, making sure your project will always be delivered quickly and on time
Great service with simple communication for a personal and easy customer experience
All applications are developed in the most up-to date technologies and working environments
Professional, efficient, and reliable process with fully responsive designs for every device
Software engineer experienced with gathering requirements, application architecture, prototyping, application development, enhancement and integration, and debug processing.
Developed software silicon tests, automation, and infrastructure tools for networking systems on chip products.
Developed a PM process and tracking tools to manage Valero OS lifecycle.
Developed software based data management tools, and executed manual and automation software testing.
Bachelor of Science, Computer and Electrical Engineering, Summa Cum Laude Honor
Software Engineer
Assistant/Couch Potato


A
Account
Account controller Account_model
Account model $
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
Admin
Admin controller $
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
GI_Model ::assign () — Method in class GI_Model
Assign database return to object $
Hook_model — Property in class Hook_model
$
Opportunity_model — Property in class Opportunity_model
$
Supporter_model — Property in class Supporter_model
$
User_model — Property in class User_model
$
User_model — Property in class User_model
B
$
Campaign_model — Property in class Campaign_model
$
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
C
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
Admin ::clear_hook () — Method in class Admin
Campaign_model
Campaign model $
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
Campaigns
Campaigns Controller
Donate ::checkout () — Method in class Donate
Checkout handler presents the user with the checkout form
Donate ::complete () — Method in class Donate
Complete donation.
Donate ::contact () — Method in class Donate
Contact is an Ajax callback only. It exists to record if a user wishes
to be contacted by the org or not. Accepts the donation HASH as the 2nd
URL segment and 'contact' as a BOOLEAN as a POST parameter. $
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
$
Link_model — Property in class Link_model
$
Link_model — Property in class Link_model
$
Opportunity_model — Property in class Opportunity_model
$
Opportunity_model — Property in class Opportunity_model
$
Opportunity_model — Property in class Opportunity_model
$
Opportunity_model — Property in class Opportunity_model
$
Opportunity_model — Property in class Opportunity_model
$
Supporter_model — Property in class Supporter_model
$
Supporter_model — Property in class Supporter_model
$
Supporter_model — Property in class Supporter_model
$
Task_model — Property in class Task_model
Task_model ::createTask () — Method in class Task_model
$
Transaction_model — Property in class Transaction_model
$
User_model — Property in class User_model
$
User_model — Property in class User_model
$
User_model — Property in class User_model
$
User_model — Property in class User_model
D
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
Campaigns ::donation () — Method in class Campaigns
View single donation
Campaigns ::donation_edit () — Method in class Campaigns
Create/edit single donation
Campaigns ::donation_refund () — Method in class Campaigns
Refund handler
Campaigns ::donations () — Method in class Campaigns
View recent donations. The final URL segment is used as the offset to
paginate results. Dashboard
Dashboard controller Diagnostics
Diagnostics controller Donate
Donate controller Donation_model
Donation model $
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
GI_Model ::delete_entry () — Method in class GI_Model
Delete handler
Opportunities ::donations () — Method in class Opportunities
Donation view method
Opportunities ::donation () — Method in class Opportunities
View donation handler
Opportunities ::donation_edit () — Method in class Opportunities
Edit donation handler
Opportunities ::donation_refund () — Method in class Opportunities
Refund handler $
Opportunity_model — Property in class Opportunity_model
$
Supporter_model — Property in class Supporter_model
$
Transaction_model — Property in class Transaction_model
E
Account ::edit_currency () — Method in class Account
Account ::edit_org () — Method in class Account
Edit organization settings.
Account ::edit_user () — Method in class Account
Edit user settings/
Account ::edit_token () — Method in class Account
Allows user to regenerate API tokens $
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
Campaigns ::edit_basic () — Method in class Campaigns
Edit basic campaign settings
Campaigns ::edit_design () — Method in class Campaigns
Edit campaign design settings
Campaigns ::edit_receipt () — Method in class Campaigns
Edit campaign receipt settings
Campaigns ::edit_fields () — Method in class Campaigns
Edit campaign custom fields
Campaigns ::edit_campaign_fields () — Method in class Campaigns
Edit campaign create fields
Campaigns ::edit () — Method in class Campaigns
Main edit view
Campaigns ::export () — Method in class Campaigns
Exports donation log to CSV $
Donation_model — Property in class Donation_model
$
Hook_model — Property in class Hook_model
Opportunities ::edit () — Method in class Opportunities
Edit or create new opportunity
Opportunities ::export () — Method in class Opportunities
Export handler $
Supporter_model — Property in class Supporter_model
Supporters ::edit () — Method in class Supporters
Edit supporter $
Task_model — Property in class Task_model
$
User_model — Property in class User_model
F
$
Account_model — Property in class Account_model
$
Donation_model — Property in class Donation_model
GI_Model ::flatten () — Method in class GI_Model
Flatten model collection into a key->value array
GI_Model ::find () — Method in class GI_Model
Execute select query, return array of model objects. Automatically
discovers table name, but can be overridden.
Main ::forgot () — Method in class Main
Forgot password handler.
Main ::forgot_verify () — Method in class Main
Handles the verification of the password change requests. Accepts
the change requests HASH as the second URL segment.
Opportunity_model ::find () — Method in class Opportunity_model
Execute select query, return array of model objects. Automatically
discovers table name, but can be overridden. $
Supporter_model — Property in class Supporter_model
$
Task_model — Property in class Task_model
Transaction_model ::for_donation () — Method in class Transaction_model
$
User_model — Property in class User_model
G
GI_Model
GI_model base
GI_Model ::get_public_properties () — Method in class GI_Model
Return array of public properties for model
GI_Model ::get_entry () — Method in class GI_Model
Fetch entry, automatically fetches based on table and ID
Opportunities ::go_export () — Method in class Opportunities
Exports opportunities list to CSV
Opportunity_model ::get_entry () — Method in class Opportunity_model
Fetch entry, automatically fetches based on table and ID H
Admin ::hook () — Method in class Admin
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
Hook_model
Hook model $
Hook_model — Property in class Hook_model
$
Task_model — Property in class Task_model
I
Account ::index () — Method in class Account
Main action $
Account_model — Property in class Account_model
Admin ::index () — Method in class Admin
Main action $
Campaign_model — Property in class Campaign_model
Campaigns ::index () — Method in class Campaigns
Dashboard ::index () — Method in class Dashboard
Index handler. Loads 'dashboard/index' view with:
Dashboard ::inactive () — Method in class Dashboard
View only inactive campaigns
Diagnostics ::index () — Method in class Diagnostics
Index handler. Loads 'diagnostics/index' view with:
Donate ::index () — Method in class Donate
Index action $
Donation_model — Property in class Donation_model
$
Hook_model — Property in class Hook_model
$
Link_model — Property in class Link_model
Main ::index () — Method in class Main
Index handler. If the user is currently logged in, will redirect
to the dashboard.
Migrate ::index () — Method in class Migrate
Opportunities ::index () — Method in class Opportunities
Index action handler
Opportunities ::inactive () — Method in class Opportunities
View only inactive opportunities $
Opportunity_model — Property in class Opportunity_model
$
Supporter_model — Property in class Supporter_model
Supporters ::index () — Method in class Supporters
Index handler. Loads 'supporters/index' view with: $
Task_model — Property in class Task_model
$
Task_model — Property in class Task_model
$
Task_model — Property in class Task_model
$
Transaction_model — Property in class Transaction_model
$
User_model — Property in class User_model
L
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
$
Donation_model — Property in class Donation_model
$
Hook_model — Property in class Hook_model
Link_model
Link model
Main ::login () — Method in class Main
Login URL callback. Accepts via POST:
* email String
* password String
Main ::logout () — Method in class Main
Logout URL callback. Redirects back to site root $
Supporter_model — Property in class Supporter_model
$
User_model — Property in class User_model
$
User_model — Property in class User_model
$
User_model — Property in class User_model
$
User_model — Property in class User_model
M
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
$
Campaign_model — Property in class Campaign_model
Main
Main controller Migrate
N
Campaigns ::new_campaign () — Method in class Campaigns
Create new campaign
GI_Model ::normalize () — Method in class GI_Model
Normalize a string by removing anything by alnums, '.' and '_'
Main ::new_account () — Method in class Main
Create a new accounts. Accepts via POST:
Opportunities ::new_opportunity () — Method in class Opportunities
New opportunity handler. Uses the existing edit view
but handles logic specific to creating new opportunities
Supporters ::new_supporter () — Method in class Supporters
$
Task_model — Property in class Task_model
O
$
Donation_model — Property in class Donation_model
Opportunities
Opportunities controller Opportunity_model
Opportunity model P
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
$
Campaign_model — Property in class Campaign_model
Donate ::process () — Method in class Donate
Donation process handler. This is a URL callback that processes
the donation, sends the request to the Stripe API and records
the result.
Opportunities ::promote () — Method in class Opportunities
Promote view action $
Supporter_model — Property in class Supporter_model
$
User_model — Property in class User_model
$
User_model — Property in class User_model
$
User_model — Property in class User_model
$
User_model — Property in class User_model
R
$
Account_model — Property in class Account_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Donation_model — Property in class Donation_model
$
Donation_model — Property in class Donation_model
$
Transaction_model — Property in class Transaction_model
S
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
Account_model ::set_file () — Method in class Account_model
Set new, uploaded file
Account_model ::save_entry () — Method in class Account_model
Overrides parent class saveentry method by automatically generating
* permalink
* updated at
* created_at $
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Donation_model — Property in class Donation_model
Donation_model ::select_complete () — Method in class Donation_model
Select complete fetches extra necessary fields that cannot be set
by model and bulds correct join syntax
Donation_model ::save_entry () — Method in class Donation_model
Overrides parent save_entry method, sets
GI_Model ::save_entry () — Method in class GI_Model
Save handler. Will attempt to insert or update, depending
on model values. Allows for fluent interface $
Hook_model — Property in class Hook_model
$
Link_model — Property in class Link_model
$
Link_model — Property in class Link_model
Opportunities ::supporters () — Method in class Opportunities
Supporters view method
Opportunities ::supporters_remove () — Method in class Opportunities
$
Opportunity_model — Property in class Opportunity_model
Supporter_model
Supporter model $
Supporter_model — Property in class Supporter_model
$
Supporter_model — Property in class Supporter_model
$
Supporter_model — Property in class Supporter_model
Supporter_model ::save_entry () — Method in class Supporter_model
Overrides parent class saveentry method by automatically generating
* updated at
* created_at Supporters
Supporters controller $
Transaction_model — Property in class Transaction_model
Transaction_model ::save_entry () — Method in class Transaction_model
Overrides parent class saveentry method by automatically generating
* permalink
* updated at
* created_at $
User_model — Property in class User_model
$
User_model — Property in class User_model
User_model ::save_entry () — Method in class User_model
Overrides parent save_entry by setting T
$
Account_model — Property in class Account_model
$
Account_model — Property in class Account_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Campaign_model — Property in class Campaign_model
$
Opportunity_model — Property in class Opportunity_model
$
Opportunity_model — Property in class Opportunity_model
$
Opportunity_model — Property in class Opportunity_model
$
Supporter_model — Property in class Supporter_model
Task_model
Task model Transaction_model
Transaction model $
Transaction_model — Property in class Transaction_model
$
Transaction_model — Property in class Transaction_model
U
$
Account_model — Property in class Account_model
Admin ::update_hook () — Method in class Admin
$
Campaign_model — Property in class Campaign_model
$
Donation_model — Property in class Donation_model
$
Hook_model — Property in class Hook_model
$
Hook_model — Property in class Hook_model
$
Link_model — Property in class Link_model
$
Opportunity_model — Property in class Opportunity_model
$
Supporter_model — Property in class Supporter_model
$
Transaction_model — Property in class Transaction_model
User_model
User model V
Campaigns ::view () — Method in class Campaigns
View single campaign
Opportunities ::view () — Method in class Opportunities
View single opportunity
Supporters ::view () — Method in class Supporters
View single supporter W
$
Link_model — Property in class Link_model
Y
$
Campaign_model — Property in class Campaign_model
$
Opportunity_model — Property in class Opportunity_model
_
Account ::__construct () — Method in class Account
Account_model ::__construct () — Method in class Account_model
Account_model ::__image_url () — Method in class Account_model
image_url computed property
Account_model ::__thumb_url () — Method in class Account_model
thumb_url computed property
Admin ::__construct () — Method in class Admin
Campaign_model ::__construct () — Method in class Campaign_model
Campaign_model ::__campaign () — Method in class Campaign_model
Campaign computed property, always returns FALSE
Campaign_model ::__campaign_fields () — Method in class Campaign_model
Custom campaign fields computed property
Campaign_model ::__custom_fields () — Method in class Campaign_model
Custom fields computed property
Campaign_model ::__donation_levels () — Method in class Campaign_model
Campaign levels computed property
Campaign_model ::__image_url () — Method in class Campaign_model
Image url computed property
Campaign_model ::__thumb_url () — Method in class Campaign_model
Thumbnail url computed property
Campaigns ::__construct () — Method in class Campaigns
Dashboard ::__construct () — Method in class Dashboard
Diagnostics ::__construct () — Method in class Diagnostics
Donate ::__construct () — Method in class Donate
Donation_model ::__construct () — Method in class Donation_model
Donation_model ::__supporter () — Method in class Donation_model
Donation_model ::__campaign () — Method in class Donation_model
Campaign computed property. Returns parent campaign
Donation_model ::__opportunity () — Method in class Donation_model
Opportunity computed property, returns parent opportunity, if exists
Donation_model ::__custom_responses () — Method in class Donation_model
Custom responses computed property
GI_Model ::__construct () — Method in class GI_Model
GI_Model ::__call () — Method in class GI_Model
GI_Model ::__get () — Method in class GI_Model
Link_model ::__construct () — Method in class Link_model
Main ::__construct () — Method in class Main
Migrate ::__construct () — Method in class Migrate
Opportunities ::__construct () — Method in class Opportunities
Opportunity_model ::__construct () — Method in class Opportunity_model
Opportunity_model ::__campaign () — Method in class Opportunity_model
Parent campaign computed property
Opportunity_model ::__custom_fields () — Method in class Opportunity_model
Custom fields computed property, returns parent campaign fields
Opportunity_model ::__donation_levels () — Method in class Opportunity_model
Campaign levels computed property, returns parent campaign levels
Opportunity_model ::__header_font () — Method in class Opportunity_model
header font computed property, returns parent campaign header font
Opportunity_model ::__campaign_color () — Method in class Opportunity_model
campaign_color computed property, returns parent campaign accent
Opportunity_model ::__enable_donation_levels () — Method in class Opportunity_model
has campaign levels computed property, returns parent campaign info
Opportunity_model ::__minimum_donation_amount () — Method in class Opportunity_model
min donation amount computed property, returns parent campaign info
Opportunity_model ::__image_url () — Method in class Opportunity_model
Image url computed property
Opportunity_model ::__thumb_url () — Method in class Opportunity_model
Thumbnail computed property
Supporter_model ::__construct () — Method in class Supporter_model
Supporter_model ::__donations () — Method in class Supporter_model
Supporters ::__construct () — Method in class Supporters
Transaction_model ::__construct () — Method in class Transaction_model
User_model ::__construct () — Method in class User_model


[1]
crisp image, widescreen, can watch movies on it; wobbly, limited adjustments
[2]
Great price; great quality.; I don't have any cons.


The Gadget Hello World application is a sample application intended to be used for learning purposes. The code runs as a service provided via the Google Apps Marketplace (collectively, the Service). If you do not agree to all the terms and conditions of this agreement, then you may not access or use the Service.
The Services is provided “as is.” The author hereby disclaims all warranties of any kind, express or implied, including, without limitation, the warranties of merchantability, fitness for a particular purpose and non-infringement. The author does not make any warranty that the Service will be error free or that access thereto will be continuous or uninterrupted. You understand that you download from, or otherwise obtain content or services through, the Service at your own discretion and risk.
In no event will the author be liable with respect to any subject matter of this Agreement under any contract, negligence, strict liability or other legal or equitable theory for: (i) any special, incidental or consequential damages; (ii) the cost of procurement for substitute products or services; or (iii) for interruption of use or loss or corruption of data. The foregoing shall not apply to the extent prohibited by applicable law.
You agree to indemnify and hold harmless the author from and against any and all claims and expenses, including attorneys’ fees, arising out of your use of the Service, including but not limited to your violation of this Agreement.
Thank you to WordPress.com for providing their Terms of Service as a template.
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.


| Your Email |<EMAIL_ADDRESS>|
| IM Email |<EMAIL_ADDRESS>|
| Trainer Email |<EMAIL_ADDRESS>|
| Customer Email |<EMAIL_ADDRESS>|
| Org Name | dcwd |
| Platform Type | Training |
| Partner Email | |
| Office | Paris/Eu |
| Training Location | Dublin |
| Admin training | Yes |
| No. Studios | 6 |
| No. Users per Studio | 1 |
| Creation Date | Wed Feb 19 2020 00:00:00 GMT+0100 (Central European Standard Time) |
| Expiration Date | Tue Feb 25 2020 00:00:00 GMT+0100 (Central European Standard Time) |
| API | Yes |
| SSH | Yes |
| Hadoop | Yes |
| Auto Deploy | Yes |


No rewards
None of your accounts is a Representative
Eligible for rewards.
Run a node with your account and start to vote, check the doc to run a node:
https://docs.qlcchain.online/tutorial/node/install.html#start-go-qlc-node
If your node is already running, please wait atleast 120 POV blocks.
Not Eligible for rewards
Get Balance over 3 M to become eligible for rewards
No rewards
None of your accounts is a Representative
You have currently no Rewards
The Rewards of the recent 1440 POV blocks are reserved.
Please wait
Processing your reward...
Reward block processed
Reward block hash
{{ rep.repRewards.rewardProcessHash }}


The qbin guidelines
Rate Limiting
Our current limits per IP address are: 10 documents per 30 minutes, and 25MB per 24 hours.
Forbidden Content
You must not submit any of the following:
- Any content related to Spam/Scam of any kind:
- If you link to qbin from any email, the person must have agreed to receive emails from you.
- If you link to qbin from any other site, you must fully comply with their guidelines regarding spam.
- You must not link to qbin from any type of advertisement.
- Any content that is violates the law in your country, or the German law.
- Any content created by someone else if he doesn't allow you to redistribute it.
- Any content that is offensive in any way.
- Any pornographic content, or links to it.
- Any content that is contains personal data. This includes addresses, banking information, password lists, password hashes, email lists, and related information.
Content that violates those terms will be removed. We are not liable for any user-submitted content, but will give out IP addresses to the authorities if requested.
Privacy Policy
We will only store the following data about you:
- Your IP address when submitting a document
- What browser you're using (User Agent) when submitting a document
- Contents and metadata (expiration, syntax, upload date/time) of documents you submit


iOrchestra Scan Uploader
{% if not success %}
Use this page to upload scans.json files to the backend. Files are automatically processed
{% else %}
Scans Uploaded!
{% endif %}
{% csrf_token %} {{form}}


--- title: NOAuth layout: post ---
There are different approaches for getting to the user's credentials, I will present the easiest here and I will concentrate on iOS:
We register a custom NSURLProtocol for 'keylogger://' URLs. It is a dummy implementation which just makes sure that those URLs aren't processed further by the framework.
In the webView:didFinishLoad: method, inject some JavaScript into the loaded page. The JavaScript will attach a listener to every input element on the page and that listener will call a 'keylogger://' URL crafted by us which contains the character the user entered.
In the shouldStartLoadWithRequest: method, we capture all of the 'keylogger://' requests and log the characters. Then we stop loading, because those URLs are just used to communicate between JS and Objective-C.


{% extends "base.html" %} {% block body %}
Thank you for registering. You should receive a confirmation email shortly.
Please note, as a security measure, we will need to approve your account before you can use this service. This should not take long.
If your account has already been approved, you may log in here. {% endblock %}


{%extends 'base.html'%} {%block content%}
Make a statement without saying a word.
Hint:Search on the Category of photos you would like.
(Food,Travel,Entertainment,Sports,Animals,Nature)
Posted: {{image.posted_date}}
Image Title :{{image.title}}
Image Description: {{image.description}}
Image Category: {{image.category}}
Image Location: {{image.location}}
Posted On: {{image.posted_date}}


Home
How it Works
Pricing
Contact Us
Blog
Contact us &
Make Social Media EASY
to build your brand and grow sales!
Make an appointment by completing the information below.
Send


The NETADDR sample is a utility that can enumerate shared resources for a give address. It demonstrates use of Vista "Net Address Verifier" control.
| Security Note |
|---|
|
This sample code is provided to illustrate a concept and should not be used in applications or Web sites, as it may not illustrate the safest coding practices. |
Building and Running the Sample
To build and run the NETADDR sample
-
Open the solution Localize.sln.
-
On the Build menu, click Build.
-
On the Debug menu, click Start Debugging or Start Without Debugging.
Keywords
The NETADDR sample demonstrates the following keywords:
CNetAddressCtrl; CNetAddressCtrl::SetCueBanner; CNetAddressCtrl::DisplayErrorTip; CNetAddressCtrl::SetAllowType; CNetAddressCtrl::GetAddress
| Note |
|---|
|
Some samples, such as this one, have not been modified to reflect the changes in the Visual C++ wizards, libraries, and compiler, but still demonstrate how to complete your desired task. |


ENGR3003 Assignment 1 Feedback: yuxliang
Implementation
- No compilation warning/errors, runtime errors [0.5 mark]: 0.5
- Proper use of exception handling [0.5 marks]: 0.5
- No magic numbers or runtime timeout [0.5 marks]: 0.5
- No memory leaks [0.5 marks]: 0.5
- No invalid read, write or conditional jumps [1 mark]: 1
- Well commented code [2 mark]: 1
Task 1
- Efficiently compute the correct solution [1 marks]: 1
- Output the correct results and timings [1 mark]: 1
Task 2
- Efficiently track number of points in each cell and compute the average [1 marks]: 1
- Efficiently compute the score correctly for each cell [1 mark]: 1
- Use of relevant comparison function for sorting [1 mark]: 1
- Output the sorted results and timings [2 marks]: 2
Task 3
- Pull out the correct data points i.e. y = 0.0 [1 mark]: 1
- Sorting the data and insertion into linked list and BST [2 marks]: 2
- Searching through the data structures for each case [2 marks]: 2
- Output the correct results and timings [3 mark]: 3
Task 4
- Insertion of data into relevant data structure [1 mark]: 1
- Correct computing of vorticity for all points in the domain [2 mark]: 2
- Evaluating absolute omega for thresholding [1 mark]: 1
- Output the correct result [1 mark]: 1
Total marks:
24
Overall comments from marker:
Excellent work! Commenting could use some work though. Well done on getting omege using 1D arrays too.
Assignment Marker: Chitrarth Lav
If you have any questions regarding your mark, please contact Chitrarth Lav


iframe with Data URL (rendered within the process)
sandboxed iframe with Data URL (rendered within the process)
sandboxed iframe with srcdoc (rendered within the process)
sandboxed iframe with a Blob URL created from a Data URL (rendered in an out-of-process iframe)
sandboxed iframe with a Blob URL created from a srcdoc (rendered in an out-of-process iframe)


{{#trophy}}
{{#scored}}Scored! Elders are happy!{{/scored}} {{^scored}}Not scored! Do not make Elders angry!{{/scored}}
Edit
Back to other trophies


It's still a crazy time for me, but hopefully we can finish the comment section today.
It doesn't take too long to throw together what we spent the last two days doing. Main problem right now: we have a list of JSON objects. We want to translate this to a series of <div>s. Angular has something called ng-repeat. Let's figure this out.
Immediately after setting up the ng-repeat section, we hit an issue: python's dictionary-to-JSON-to-string doesn't conform with Javascript's expected format. Specifically, python's dictionary keys have single-quotes. Javascript's evidently don't, judging by the SyntaxError: Unexpected token ' in JSON at position 2
I'm getting. Random hunch, before we look into custom serializers--what if we replaced the single quotes with double quotes?
Incredibly, that worked. The comment section is working!
A few comments later, and I broke it with data. I entered a comment with a single-quote in it, which didn't get escaped, and so got converted to a double-quote. My first inclination for fixing this is to do some escaping to the strings as they're fetched from the database. But just escaping them will still have them converted into double-quotes.
I was being silly. I should have just trusted Python. json.dumps(dictionary) handles all of this single-quotes and escaping nonsense. The comment section now works, although of course there is more to be done. First that comes to mind, I went to all the excessive work of including a logical delete column, but it's completely not respected--I'll need to modify the service to not include the comment text if the comment is deleted (this has to happen server-side, because if the text is sent to the client, the client has the text that should be deleted), and include some conditional logic in Angular to handle what to display for a deleted comment. Or just have the service return a "Comment was deleted" as the string. Whatever.
I'll add the necessary logic to the template file (the first new stuff in a long while). One last note: I need to fix the server timestamp. Python's using GMT/UTC instead of the PST I know and love. I guess that's actually better-I can convert UTC to the user's time-zone on the client-side, while the server holds a "truth". The only issue is, my python start script pulls the wrong date (I always start working in the last eight hours of the day). I'll just update the script and call it a night.
Couldn't help my self. I didn't even fix the python date, I updated my two Gunicorn start scripts to save the PID they run on and kill any existing Gunicorn processes on startup. Makes deploying these services easier. Neato!
Comment:


By Nancy Molina, Rebekah Monson, and Eliot Rodriguez
#541drones | Tech Trends, University of Miami Interactve Media
OpenROV: Open-source kit robot
Sensor Sub: Miami-based water-testing drone
NASA CubeSats initiative
Thanks to José Hernandez! Find him online at josehelps.com.


""" Implementation of area compressibilty modulus
The are compressibilty modulus is an elastic property that can be computed from the total area (in the lateral
dimension) and its fluctuations. The quantity is given by
K_A = kT<A>[ <(A - <A>)^2>]^-1,
where A is the area per lipid, k is Boltzmann's constant
and T is the temperature (in Kelvin).
See references:
Coarse Grained Model for Semiquantitative Lipid Simulations
Siewert J. Marrink, Alex H. de Vries, and Alan E. Mark
J. Phys. Chem. B, 2004, 108 (2), pp 750-760
DOI: 10.1021/jp036508g
Molecular Dynamics Simulations of Cardiolipin Bilayers
Martin Dahlberg and Arnold Maliniak
J. Phys. Chem. B, 2008, 112 (37), pp 11655-11663
DOI: 10.1021/jp803414g
"""
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
# we are going to use the MDAnalysis to read in topo and traj
# numpy
import numpy as np
# import my running stats class
from pybilt.common.running_stats import *
import scipy.constants as scicon
[docs]def area_compressibility_modulus(mda_trajectory, temperature, normal='z',
first=0, last=-1, interval=1):
# set the indices for indexing the lateral dimensions
lateral_index = [0, 1]
if normal == 'z':
pass
elif normal == 'x':
lateral_index = [1, 2]
elif normal == 'y':
lateral_index = [0, 2]
#per_leaflet = nlipids / 2
# get the lateral area at each frame
area_run = RunningStats()
times = []
K_a = []
for frame in mda_trajectory[first:last:interval]:
area_run.push(frame.dimensions[lateral_index].prod())
# compute the modulus
Ka = (scicon.k * temperature * area_run.mean())/area_run.variance()
#conversion factor for Joules/Angstrom^2 to milliNewtons/meter
Ka*=10.0**23
times.append(frame.time)
K_a.append(Ka)
# approximate area per lipid
times = np.array(times)
K_a = np.array(K_a)
K_a_run = gen_running_average(K_a)
time_series = np.zeros((len(K_a_run), 2))
time_series[:, 0] = times[:]
time_series[:, 1] = K_a[:]
return time_series[1:]


Installation¶
Note
🚨 This package is still undergoing development. 🚨
It is not recommended use Parallel installation, because it’s somewhat complicated and prepared for the future version for parallel reading of data. Now use Quick installation or Source installation, you can also run
MCMTpy
in parallel. Please note that the test is performed on macOS Big Sur (11.2.1), so it could be slightly different for other OS.
Dependencies¶
The package MCMTpy
runs on Unix-like systems including Mac and Linux. Package need
Python 3.6 or greater, but python 3.9 is not supported for pyfk
. It depends on the
following Python modules:
numpy>=1.14
tqdm>=4.19.4
matplotlib<=3.1.1
mpi4py
obspy
pyfk
pyasdf
json5
For parallel:
For data preprocessing and visualization:
We recommend to use anaconda as your python environment, and use conda and pip to install those librarys.
Quick installation¶
Firstly, make sure Anaconda has been installed, then:
$ conda create -n MCMTpy python=3.8 numpy=1.16 matplotlib=3.1.1 mpi4py obspy pyasdf json5 tqdm
$ conda activate MCMTpy
$ pip install pyfk
$ pip install MCMTpy
Some errors may occurred of that pyfk not support the new version of cysignals
, please:
$ conda uninstall cysignals
$ pip install cysignals==1.10.2
$ pip install pyfk
Successful installation will generate an executable program MCMTpy
under the anaconda environment path:
/Users/user/opt/anaconda3/bin. And run following code to check the installation:
$ MCMTpy --help
Source installation¶
$ git clone https://github.com/OUCyf/MCMTpy.git
$ cd MCMTpy
$ python setup.py install
Parallel installation (for future version)¶
1. Install pyfk¶
Firstly, make sure Anaconda has been installed, then:
$ conda create -n MCMTpy python=3.8 numpy=1.16 obspy
$ conda activate MCMTpy
$ pip install pyfk
Some errors may occurred of that pyfk not support the new version of cysignals
, please:
$ conda uninstall cysignals
$ pip install cysignals==1.10.2
$ pip install pyfk
🚨 Make sure the new environment does not include the following packages that we will install below: 🚨
2. Install the HDF5 parallel version¶
First, make sure openmpi or other MPI program has been installed, preferably source code installed. You can use which mpicc to get the installation’s path.
Activate the MCMTpy environment, and uninstall the
mpi4py
package in this environment (if it have). Then usepip
install thempi4py
package notconda
.
$ conda uninstall mpi4py
$ pip install mpi4py
Note
When you use pip
install mpi4py
, it will use the mpicc in your system. But if you use conda
to do the installation, it resolves the dependent environment itself and install conda’s mpicc in your
environment which will cause problems for subsequent installations due to the not source code compilation
of MPI. After installing mpi4py
, you can use which mpicc to check whether it is a system
mpicc or a conda mpicc.
Then you need to install the parallel version of HDF5. Download the source package, compile and install the parallel version to your path. Your system may already have HDF5 installed. Software such as GMT relies on the HDF5 package, so use h5cc-showconfig to see more information about installation, note that h5cc is usually not shown in parallel. We do not want to uninstall the existing version of HDF5 on our system. This does not conflict with our subsequent installation of the parallel version of HDF5, as long as we specify the installation path of the parallel version.
$ chmod 777 ./configure # enable read/write access
$ ./configure --enable-parallel --enable-shared --prefix=/your/path/of/hdf5_dir/
$ make
$ make check
$ make install
After the installation, the executable program will be generated in ./bin path of your hdf5_dir directory. h5pcc will be generated due to the parallel installation, similar to the h5cc will be generated by the non-parallel installation. Check the installation version information:
$ h5pcc -showconfig
3. Install the h5py parallel version¶
Before installing
h5py
, you need to uninstall bothhdf5
andh5py
in your environment, and then download h5py <https://github.com/h5py/h5py> and compile the source code. You need to specify the path of HDF5 and CC.
$ export CC=/path/to/mpicc # do not use conda's mpicc
$ echo %CC
$ export HDF5_MPI="ON"
$ export HDF5_DIR="/your/path/of/hdf5_dir/"
$ pip install .
Check the installation version information (download the demo2.py on h5py):
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from mpi4py import MPI
import h5py
rank = MPI.COMM_WORLD.rank # The process ID (integer 0-3 for 4-process run)
f = h5py.File('parallel_test.hdf5', 'w', driver='mpio', comm=MPI.COMM_WORLD)
dset = f.create_dataset('test', (4,), dtype='i')
dset[rank] = rank
f.close()
Run the program:
$ mpiexec -n 4 python demo2.py
Looking at the file with h5dump
:
$ h5dump parallel_test.hdf5
HDF5 "parallel_test.hdf5" {
GROUP "/" {
DATASET "test" {
DATATYPE H5T_STD_I32LE
DATASPACE SIMPLE { ( 4 ) / ( 4 ) }
DATA {
(0): 0, 1, 2, 3
}
}
}
}
1. Install pyasdf parallel version¶
After the above steps are completed sucessful, you can directly use
pip
to installpyasdf
$ pip install pyasdf
$ python -c "import pyasdf; pyasdf.print_sys_info()" # (check for a parallel version)
5. Install MCMTpy parallel version¶
Finally, you can install the parallel version of MCMTpy.
$ pip install MCMTpy # or python setup.py install
$ pip uninstall MCMTpy # uninstall
Reference Installation Blog¶
https://drtiresome.com/2016/08/23/build-and-install-mpi-parallel-hdf5-and-h5py-from-source-on-linux/
https://gist.github.com/kentwait/280aa20e9d8f2c8737b2bec4a49b7c92
https://noise-python.readthedocs.io/en/latest/installation.html
https://forum.hdfgroup.org/t/installing-hdf5-ready-version-of-open-mpi/4998


structure coesite-IV data silica SiO coesite-V Supplementary phases pressure Fig. (Supplementary reflections crystal silicon glass = .%, .(), structures atoms collected observed parameters using {border-style Phys. px;} #ffffff;} Data coesite-III peaks phase coesite diffraction silicate .() LINK Rev. X-ray different number structural (Fig. cell high-pressure octahedra polyhedra pressures refined Sci. final high refinement GPa calculated difference experimental polymorphs results single-crystal [], based higher lower tetrahedra unit used GPa, Science Table XRD compression mantle simulations thermal transition volumes GPa, ./PhysRevB.. Earth’s Fourier Lett. MgSiO Nature coesite-II completeness corresponding crystalline crystals enthalpy intense lattice oxygen px; refine resulting theoretical {font-family Earth Mater. No. agreement allowed approximation. basalt deep density diamond e·Å font-size independent initio isotropic local molecular performed silicates single total (.–. .%. Bader Crystal GOF = . GPa I)]. I > σ( University Values charge conditions coordination double; experimentally functions grid.. group interval liquids material melts merged method new normal omitted overlap penta-coordinated possible properties ratio remains rule selected software. stable suggest triclinic unique volume (see (space -type ./PhysRevLett.. CrysAlisPro High-pressure However, Materials National PDF PDFs Pauling’s Research Structure Tables analysis atoms. border-color border-width calculations coesite-I coesite-V, coesite-V. common complex compressed considered convergence dense determined d = . Å, experiments features good hexa-coordinated images implemented indices int = .%. known map, measured model molten order pair-distribution phases, present seifertite set small solid; state transformation {font-style {font-weight (Si)O ./nature ./pnas. Acad. Advanced Am. Birch–Murnaghan Commons Creative DAC Department E.B., Kresse L.D. Photon Planet. Proc. Si–O Stixrude Swedish article atomic bold built close coesite-IV, contain courier; detector, did does dynamic dynamics em; equation framework highly http://orcid.org/--- identical indicate large liquid obtained points ppm, pressure. previously program pt;} range reflection reflections, relative represent resulted significantly software solution stishovite/CaCl studied support transitions Černok × ×


`
Access the YOUR SERVER NAME HERE library with over X Movies & X TV Shows available instantly.
Want to watch a Movie or TV Show but it's not currently on YOUR SERVER NAME HERE? Request it here!
See what has been recently added to YOUR SERVER NAME HERE without having to log in.


|
Bullet Collision Detection & Physics Library
|
#include <btGjkEpa3.h>
Classes | |
| struct | sFace |
| struct | sHorizon |
| struct | sList |
Public Member Functions | |
| EPA () | |
| void | Initialize () |
| eEpaStatus | Evaluate (GJK< btConvexTemplate > &gjk, const btVector3 &guess) |
| bool | getedgedist (sFace *face, typename GJK< btConvexTemplate >::sSV *a, typename GJK< btConvexTemplate >::sSV *b, btScalar &dist) |
| sFace * | newface (typename GJK< btConvexTemplate >::sSV *a, typename GJK< btConvexTemplate >::sSV *b, typename GJK< btConvexTemplate >::sSV *c, bool forced) |
| sFace * | findbest () |
| bool | expand (U pass, typename GJK< btConvexTemplate >::sSV *w, sFace *f, U e, sHorizon &horizon) |
Static Public Member Functions | |
| static void | bind (sFace *fa, U ea, sFace *fb, U eb) |
| static void | append (sList &list, sFace *face) |
| static void | remove (sList &list, sFace *face) |
Public Attributes | |
| eEpaStatus | m_status |
| GJK< btConvexTemplate >::sSimplex | m_result |
| btVector3 | m_normal |
| btScalar | m_depth |
| GJK< btConvexTemplate >::sSV | m_sv_store [EPA_MAX_VERTICES] |
| sFace | m_fc_store [EPA_MAX_FACES] |
| U | m_nextsv |
| sList | m_hull |
| sList | m_stock |
Definition at line 544 of file btGjkEpa3.h.
Definition at line 583 of file btGjkEpa3.h.
|
inlinestatic |
Definition at line 595 of file btGjkEpa3.h.
|
inlinestatic |
Definition at line 588 of file btGjkEpa3.h.
|
inline |
Definition at line 622 of file btGjkEpa3.h.
|
inline |
Definition at line 838 of file btGjkEpa3.h.
Definition at line 823 of file btGjkEpa3.h.
|
inline |
Definition at line 743 of file btGjkEpa3.h.
|
inline |
Definition at line 611 of file btGjkEpa3.h.
|
inline |
Definition at line 779 of file btGjkEpa3.h.
|
inlinestatic |
Definition at line 603 of file btGjkEpa3.h.
Definition at line 576 of file btGjkEpa3.h.
| sFace EPA< btConvexTemplate >::m_fc_store[EPA_MAX_FACES] |
Definition at line 578 of file btGjkEpa3.h.
Definition at line 580 of file btGjkEpa3.h.
Definition at line 579 of file btGjkEpa3.h.
Definition at line 575 of file btGjkEpa3.h.
| GJK<btConvexTemplate>::sSimplex EPA< btConvexTemplate >::m_result |
Definition at line 574 of file btGjkEpa3.h.
| eEpaStatus EPA< btConvexTemplate >::m_status |
Definition at line 573 of file btGjkEpa3.h.
Definition at line 581 of file btGjkEpa3.h.
| GJK<btConvexTemplate>::sSV EPA< btConvexTemplate >::m_sv_store[EPA_MAX_VERTICES] |
Definition at line 577 of file btGjkEpa3.h.


My current project is a work in progress. It is a total rewrite of my midterm capstone web app. It's called Runner 2.0 and is a physical therapy admission to discharge flow management application. I'll have an ititial version of it live by Thursday January 8, 2015. If code tests get you excited, I've almost hit 100 and only have a registration page!
In the mean time, you can check out the code as it's checked in to GitHub:
I'm easy to find