Associate goes X ray flares with active regions
Created: 2011-02-18 15:51:13
Last updated: 2011-02-18 15:53:31
This workflow is querying the HFC ActiveRegions list and HEC goes_xray_flare list. It requires a time periode and a search radius arround the centre of an Active Region as inputs It produces two outputs: HFCout is a modified VOTable where a field is added with the number of associated hessi flares. combined_output is a 2 dimensional list with an VOTable for each Active region and one with an VOTable for all associated flares for that Active Region.
Preview
Run
Run this Workflow in the Taverna Workbench...
Workflow Components
Authors (1)
Titles (1)
Associate hessi flares with active regions |
Descriptions (1)
This workflow is querying the HFC ActiveRegions list and HEC hessi_flare list.
It requires a time periode and a search radius arround the centre of an Active Region as inputs
It produces two outputs: HFCout is a modified VOTable where a field is added with the number of associated hessi flares. combined_output is a 2 dimensional list with an VOTable for each Active region and one with an VOTable for all associated flares for that Active Region. |
Dependencies (0)
Inputs (3)
Name |
Description |
STARTTIME |
search interval start dateTime
|
ENDTIME |
search interval end dateTime
2004-01-13T00:00:00
|
search_radius |
Radius around the centre of the Active Region
Radius around the centre of the Active Region in arcsec
|
Processors (29)
Name |
Type |
Description |
Query_query |
xmlsplitter |
|
SC_ARC_X |
stringconstant |
ValueSC_ARC_X |
SC_ARC_Y |
stringconstant |
ValueSC_ARC_Y |
parseVOTable |
beanshell |
Scriptimport java.io.StringReader;
import java.util.Hashtable;
import org.w3c.dom.*;
import org.xml.sax.InputSource;
import org.apache.xerces.parsers.DOMParser;
private void getPositions(){
NodeList nodesVO = docVO.getElementsByTagName("FIELD");
for(int i=0; i< nodesVO.getLength(); i++){
Element voFieldNode = nodesVO.item(i);
String name = voFieldNode.getAttribute("name");
for(int j = 0; j< collumn.size(); j++){
if(name.trim().equals(collumn.get(j).trim())){
positions.put(collumn.get(j), i);
debug = debug.concat("\npos " + i+ "\n");
}
}
}
}
private void findValues(){
String[] tr = voTable.split("");
debug= debug.concat("length tr " + tr.length + "\n");
for(int i = 1; i< tr.length; i++)
{
String[] td = tr[i].split("");
debug= debug.concat("length td " + td.length + "\n");
for(int j =0; j< collumn.size();j++){
String value = td[positions.get(collumn.get(j))+1];
valueLists.get(j).add(value.substring(0,value.lastIndexOf("<")));
}
}
}
Hashtable positions= new Hashtable();
List valueLists = new ArrayList();
for(int i=0;i |
AR_DATE |
stringconstant |
ValueAR_DATE |
InputDataHEC |
beanshell |
Scriptimport java.text.SimpleDateFormat;
private void calculateX(){
int pos=-1;
for(int i=0; i-1 && pos2>-1){
break;
}
}
if(pos==-1){
return;
}
if(pos==-1){
return;
}
List date=hfc.get(pos);
List dateP=hfc.get(pos2);
long dateAdd;
long def=2880000L; //48 minutes (half the time to the assumed next image) in milliseconds
for(int i=0; i |
HEC |
wsdl |
Wsdlhttp://140.105.77.30:8080/helio-hec-r3/HelioTavernaService?wsdlWsdl OperationQuery |
Query_query_2 |
xmlsplitter |
|
goes_xray_flare |
stringconstant |
Valuegoes_xray_flare |
ConstructWhere |
beanshell |
Scriptwhereclause=table+"."+date_start_name+",/"+date_end+";"+table+"."+date_end_name+","+date_start+"/;"+
table+"."+x_name+","+coord_x1+"/"+coord_x2+";"+ table+"."+y_name+","+coord_y1+"/"+coord_y2; |
latitude |
stringconstant |
Valuelatitude |
y_name_value |
stringconstant |
Valuelongitude |
date_end_name_value |
stringconstant |
Valuetime_end |
HFC |
wsdl |
Wsdlhttp://helio-fc1.obspm.fr:8080/helio-hfc/HelioTavernaService?wsdlWsdl OperationQuery |
date_start_name_value |
stringconstant |
Valuetime_start |
DeleteEmptyResults |
beanshell |
ScriptString[] parts = HECVOTable.split("");
if(parts.length <=1) {
HECEvent=-1;
//HECEvent=null;
} else {
HECEvent = HECVOTable;
}
makeLists |
beanshell |
Scriptlistlist = new ArrayList();
for(i=0; i |
makeLists_2 |
beanshell |
Scriptlistlist = new ArrayList();
for(i=0; i |
makeLists_3 |
beanshell |
Scriptlistlist = new ArrayList();
for(i=0; i |
FROM_value |
stringconstant |
ValueACTIVEREGIONS |
FROM_value_2 |
stringconstant |
ValueACTIVEREGIONS |
FROM_value_3 |
stringconstant |
ValueACTIVEREGIONS |
FROM_value_4 |
stringconstant |
ValueACTIVEREGIONS |
ManipulateHFC |
beanshell |
ScriptString addField = "\n\n"+
"Number of flares in the goes x ray flare list of HEC hessi_flare\n"+
"";
String infoField ="\n\n";
HFCout=HFCVOTable.substring(0,HFCVOTable.lastIndexOf("")+8)+
addField+HFCVOTable.substring(HFCVOTable.lastIndexOf("")+8);
HFCout=HFCout.substring(0,HFCout.lastIndexOf("")+7)+
infoField+HFCout.substring(HFCout.lastIndexOf("")+7);
int pos=0;
int pos2=-1;
String hfc=new String("");
int count =0;
while((pos2=HFCout.indexOf(" | ",pos+1))!=-1) {
String[] part= HECVOTable.get(count).split("");
hfc=hfc+HFCout.substring(pos,pos2)+" "+(part.length-1)+" | \n";
pos=pos2;
count++;
}
hfc=hfc+HFCout.substring(HFCout.lastIndexOf(" "));
HFCout=hfc.replaceAll("(°)","Deg");
|
combine_hfc_hec |
beanshell |
ScriptString reduceHFC(int number){
String infoField ="\n\n";
String reduced= new String("");
hfc=hfc.substring(0,hfc.lastIndexOf("")+7)+
infoField+hfc.substring(hfc.lastIndexOf("")+7);
reduced=reduced+hfc.substring(0,hfc.indexOf("")+12);
String[] tr = hfc.split("");
reduced=reduced+" ";
reduced=reduced+tr[number+1].substring(0,tr[number+1].indexOf(" ")+6);
reduced=reduced+hfc.substring(hfc.indexOf(""));
return reduced;
}
combined = new ArrayList();
for(int i=0;i |
Convert_arcsec |
workflow |
|
Convert_arcsec2 |
workflow |
|
Calculate_Sun_data_from_date__time_factor_of_input_is_ignored__2 |
workflow |
|
AR_DATE_T |
stringconstant |
ValueAR_DATE_T |
|
Beanshells (12)
Name |
Description |
Inputs |
Outputs |
parseVOTable |
|
voTable
collumn
|
valueLists
debug
collumn
|
InputDataHEC |
|
arc
hfc
hfc_header
|
date_start
date_stop
coord_x1
coord_y1
coord_x2
coord_y2
|
ConstructWhere |
|
coord_x1
coord_x2
coord_y1
coord_y2
x_name
y_name
date_start
date_end
date_start_name
date_end_name
table
|
whereclause
|
DeleteEmptyResults |
|
HECVOTable
|
HECEvent
|
makeLists |
|
list
|
listlist
|
makeLists_2 |
|
list
|
listlist
|
makeLists_3 |
|
list
|
listlist
|
ManipulateHFC |
|
HECVOTable
HFCVOTable
|
HFCout
|
combine_hfc_hec |
|
hec
hfc
|
combined
|
sun_data |
|
dateTime
|
b0
sun_radius
position_angle
|
ARC2LON |
|
xString
yString
b0String
sunrString
|
lon
lat
|
ARC2LON |
|
xString
yString
b0String
sunrString
|
lon
lat
|
Outputs (2)
Name |
Description |
HFCout |
VOTable - hfc results with an added collumn for the number of associated hessi flares
|
combined_output |
List of Lists of VOTables; first VOTable contains the HFC record for each Active Region for which flares could be associated. second VOTable contains the HEC records for all associated hessi flares
|
Datalinks (48)
Source |
Sink |
makeLists:listlist |
Query_query:STARTTIME |
makeLists_2:listlist |
Query_query:ENDTIME |
makeLists_3:listlist |
Query_query:FROM |
HFC:response |
parseVOTable:voTable |
search_radius |
InputDataHEC:arc |
parseVOTable:valueLists |
InputDataHEC:hfc |
parseVOTable:collumn |
InputDataHEC:hfc_header |
Query_query_2:output |
HEC:query |
goes_xray_flare:value |
Query_query_2:FROM |
ConstructWhere:whereclause |
Query_query_2:WHERE |
latitude:value |
ConstructWhere:x_name |
y_name_value:value |
ConstructWhere:y_name |
InputDataHEC:date_start |
ConstructWhere:date_start |
InputDataHEC:date_stop |
ConstructWhere:date_end |
date_end_name_value:value |
ConstructWhere:date_end_name |
date_start_name_value:value |
ConstructWhere:date_start_name |
goes_xray_flare:value |
ConstructWhere:table |
Convert_arcsec2:ARC2LON_lat |
ConstructWhere:coord_x2 |
Convert_arcsec2:ARC2LON_long |
ConstructWhere:coord_y2 |
Convert_arcsec:ARC2LON_lat |
ConstructWhere:coord_x1 |
Convert_arcsec:ARC2LON_long |
ConstructWhere:coord_y1 |
Query_query:output |
HFC:query |
HEC:response |
DeleteEmptyResults:HECVOTable |
STARTTIME |
makeLists:list |
ENDTIME |
makeLists_2:list |
HEC:response |
ManipulateHFC:HECVOTable |
HFC:response |
ManipulateHFC:HFCVOTable |
DeleteEmptyResults:HECEvent |
combine_hfc_hec:hec |
HFC:response |
combine_hfc_hec:hfc |
InputDataHEC:coord_x1 |
Convert_arcsec:x |
InputDataHEC:coord_y1 |
Convert_arcsec:y |
Calculate_Sun_data_from_date__time_factor_of_input_is_ignored__2:sun_radius |
Convert_arcsec:sunr |
Calculate_Sun_data_from_date__time_factor_of_input_is_ignored__2:b0 |
Convert_arcsec:b0 |
InputDataHEC:coord_x2 |
Convert_arcsec2:x |
InputDataHEC:coord_y2 |
Convert_arcsec2:y |
Calculate_Sun_data_from_date__time_factor_of_input_is_ignored__2:sun_radius |
Convert_arcsec2:sunr |
Calculate_Sun_data_from_date__time_factor_of_input_is_ignored__2:b0 |
Convert_arcsec2:b0 |
InputDataHEC:date_start |
Calculate_Sun_data_from_date__time_factor_of_input_is_ignored__2:sun_data_dateTime |
SC_ARC_X:value |
parseVOTable:collumn |
SC_ARC_Y:value |
parseVOTable:collumn |
AR_DATE:value |
parseVOTable:collumn |
AR_DATE_T:value |
parseVOTable:collumn |
FROM_value:value |
makeLists_3:list |
FROM_value_2:value |
makeLists_3:list |
FROM_value_3:value |
makeLists_3:list |
FROM_value_4:value |
makeLists_3:list |
ManipulateHFC:HFCout |
HFCout |
combine_hfc_hec:combined |
combined_output |
Uploader
License
All versions of this Workflow are
licensed under:
Version 1
(of 1)
Credits (1)
(People/Groups)
Attributions (0)
(Workflows/Files)
None
Shared with Groups (1)
Featured In Packs (0)
None
Log in to add to one of your Packs
Attributed By (1)
(Workflows/Files)
Favourited By (0)
No one
Statistics
Other workflows that use similar services
(3)
Only the first 2 workflows that use similar services are shown. View all workflows that use these services.
Associate flares with active regions
(1)
This workflow is querying the HFC ActiveRegions list and HEC flare lists (names retrieved from the ontlogoy) It requires a time periode and a search radius arround the centre of an Active Region as inputs It produces two outputs: HFCout is a modified VOTable where a field per flare list is added with the number of associated flares. combined_output is a 2 dimensional list with an VOTable for each Active region and each one with an VOTable for all associated flares for that Active Region.
Created: 2011-02-22
| Last updated: 2011-08-24
Credits:
Anja Le Blanc
Attributions:
Associate goes X ray flares with active regions
Associate hessi flares with active regions
Comments (0)
No comments yet
Log in to make a comment