Connected components of the Riemann surface - action

Let $s:\mathbb D^3 \to s(\mathbb D^3)$ be the symmetrization map whose $i$ component is the elementary symmetric polynomials of order $i$ in $3$ variables. My question is:
Is there any rigorous way to find out the connected components of the Riemann surface $s^{-1}\circ s(Z)$ where $Z$ is the set of all regular points of the proper holomorphic map $s$ in $\mathbb D^3?$
I want to understand the structure of the connected components so that we could understand the role of the permutation group $S_3$ in the proceedings.

Related

How to write milp equation for this problem?

Consider the classic network flow problem where the constraint is that the outflow from a vertex is equal to the sum of the inflows to it. Consider having a more specific constraint where the flow can be split between edges.
I have two questions:
How can I use a decision variable to identify that node j is receiving items from multiple edges?
How to create another equation to determine the cost (2 unit of time per item) of joining x number of items from different edges in the sink node?
This is a tricky modeling question. Let's go by parts.
Consider having a more specific constraint where the flow can be split between edges
I here assume that you have a classic flow constraint modeled as a real variable set y_ij. Therefore, the flow can be split between two or more arcs.
How can I use a decision variable to identify that node j is receiving items from multiple edges?
You need to create an additional binary variable z_ij to represent your flow. You must also create the following constraint:
Next, you will need another additional integer variable set, let's say p_i and an additional constraint
Then, p_i will store the number of ingoing arcs in a node j which are used to send flow. Since you will try to minimize the cost of joining arcs (I think), you need to use the <=.
How to create another equation to determine the cost(2 unit of time per item) of joining x number of items from different edges in the sink node?
For this, you can use the value of p_i and multiply by the predefined cost of joining the flow.

undirected graph: generalized connected components

I need to split an undirected graph (with unit node weight everywhere, but that might not be relevant) into (A) connected components (separated by 0 edges), but also components connected by (B) only 1, only 2 (and so on) edges.
I've been using boost::graph::connected_components for (A) and I am considering how to tackle (B). My initial idea is to use results from (A) and then, for each connected component, recursively isolate 1-connected components by using Stoer-Wagner min=cut (boost::graph::stoer_wagner_min_cut) as long as there is a cut with unit cost (1 edge).
It might be that there is a specific name for this task (which I don't know) or that BGL or some other library already provides aan algorithm for solving this.
Thanks for pointers/suggestions.

Building delivery list based on distance and point in polygons in LAMP App

Building a LAMP services application that will have 10000's of Vendors providing delivery to Customers, and upon the Customer entering their address, we need to generate a delivery list of Vendors which can provide service to that location. Each Vendor will have a delivery boundary that will be defined by one of these three criteria:
A. List of Zip Codes
B. Distance of delivery point from Vendor in miles (X) (point to point)
C. Defined polygon drawn (most likely) in GME and imported as KML (point in polygon)
A is straightforward, but after extensive research we are unsure of what would be the most efficient and scalable way to approach B and C. Should we use MySQL to store the data and calculate results using code/classes/library, or should we setup a spatial DB like PostGIS to handle all geo storage and calculation, and what about API solutions for some or all, etc.?
Here is our current line of thinking in broad strokes:
Store polygon data (as KML?)
Convert Vendor address to verified lat/long coordinates
Convert B and C boundaries to zip code array to generate subset of likely matches
Convert Customer address to verified lat/long coordinates
The algorithm would then have 3 parts to return a master delivery list:
Part (a):
Query all A Vendors who deliver to Customer's delivery zip code
Part (b):
Filter out all B Vendors that don't have the Customer's zip in likely match array
Query that subset of B Vendors where the distance between coordinates is less than specified
Part (c):
Filter out all C Vendors that don't have the Customer's zip in likely match array
Query that subset of C Vendors where Customer's coordinate is within the polygon
Seeking advice on best practice and what tool/technology/APIs to use, for each step starting with address verification, long/lat of the verified addresses, auto-generate zip array based on spatial data of B and C, calculating point-to-point, creating polygon, storing/converting polygon data, using KML or what?, and calculating point-in-ploygon. Pointers to posts/research/resources very welcome!

highlight buildings based on value and show in browser

I want to build a website with a map based on openstreetmap that colors buildings based on a their potential average annual yield of solar power. I have the energy data for individual houses.
My question is now, can I assign each house (identified by street name and number) a value and the house can then be colored based on this value in the browser?
I have little to no experience with openstreetmap and would be happy about hints into the right direction.
So you need a OSM dataset and filter it for building=* ways to get the building outlines (e.g. with osmosis). Then you do create a second run to filter for addr:= tags of nodes and merge them with the building outlines from step 1. Be aware of conflicts and that one building can have multiple addresses. So now you have a dataset with normalized addresses and need to create a lookup structure like hashmap to get a mapping for your solar data: addr:street x addr:housenumber -> building id
(very raw idea on how to do it)
IMHO the mixing of external datasources to the copyleft open database license makes that you need to relicense your dataset also under ODbL.
Also keep in mind that not every address is currently at OSM and the existing ones can be wrong!

How to visualize generated RNA secondary structure

I'm working on a tool to visualize RNA secondary structure, for this purpose I have implemented Nussinov's algorithm which generates the RNA secondary structure as list with the corresponding indices, the code can be found here [0]
[0] http://dpaste.com/596262/
But I really stuck with understanding how I should visualize it (as a planar graph), the code above gives me a sequential list of the secondary structure, so can someone please suggest me as to how I can visualize the structure.An example of such tool can be found here [1]
[1] http://rna.tbi.univie.ac.at/cgi-bin/RNAfold.cgi
and I know there are better algorithms but for now I would just want to visualize with this and once I understand visualization, I will go for a better algorithm.
Visualizing the secondary structure of RNA (or any graph, for that matter) algorithmically is a difficult problem. You need to take care that there are as few overlaps as possible while maintaining consistent link lengths. As the other answers have pointed out, there are a number of existing implementations that you can already use. I'll just throw in another one that's quite easy to use and requires no downloads:
forna - nibiru.tbi.univie.ac.at/forna
Here you just need to enter a dotbracket string:
>molecule_name
CGCUUCAUAUAAUCCUAAUGAUAUGGUUUGGGAGUUUCUACCAAGAGCCUUAAACUCUUGAUUAUGAAGUG
((((((((((..((((((.........))))))......).((((((.......))))))..)))))))))
This will give you a visualization that looks something like this:
This is computed using a combination of the ViennaRNA RNAplot program and d3's force-directed graph algorithm.
You could do this with jmol . Jmol allows you to add arbitrary bonds / atoms to a coordinate space using its java or I believe its javascript api also.
In general, of course, PDB file formats would be used for such data.
RNAviz is old but still commonly used. JalView apparently was supposed to get RNA secondary structure rendering thru a GSoC project last year, but I'm not sure what the status in the program is.