SSJ API Documentation
Stochastic Simulation in Java
Loading...
Searching...
No Matches
ProjectionDependentWeights.java
1package umontreal.ssj.latnetbuilder.weights;
2
3import java.io.FileWriter;
4import java.io.IOException;
5import java.util.ArrayList;
6import java.util.List;
7
8import umontreal.ssj.mcqmctools.anova.CoordinateSet;
9import umontreal.ssj.mcqmctools.anova.CoordinateSetLong;
10
21
22public class ProjectionDependentWeights extends Weights<CoordinateSet> {
23
24 public OrderDependentWeights orderDependentWeights;
25 protected String fileDir = "";
26 protected String fileName = "";
27
33 public void setFileDir(String dir) {
34 fileDir = dir;
35 }
36
42 public String getFileDir() {
43 return fileDir;
44 }
45
51 public void setFileName(String name) {
52 fileName = name;
53 }
54
60 public String getFileName() {
61 return fileName;
62 }
63
68 orderDependentWeights = new OrderDependentWeights();
69 }
70
78 orderDependentWeights.add(weight);
79 }
80
88 public void addOrderDependentWeight(int order, double weight) {
89 orderDependentWeights.add(order, weight);
90 }
91
100 orderDependentWeights = new OrderDependentWeights(ordWeights);
101 }
102
110 public void write() throws IOException {
111 FileWriter file = new FileWriter(fileDir + fileName);
112 StringBuffer sb = new StringBuffer("");
113
114 for (SingletonWeight<CoordinateSet> w : weights)
115 sb.append(w.getIndex().toStringNoBraces() + ":\t" + w.getWeight() + "\n");
116
117 for (SingletonWeightComparable<Integer> w : orderDependentWeights.getComparableWeights())
118 sb.append("order " + w.getIndex() + ":\t" + w.getWeight() + "\n");
119 sb.append("default:\t" + defaultWeight);
120 file.write(sb.toString());
121 file.close();
122 }
123
129 @Override
130 public String toString() {
131 StringBuffer sb = new StringBuffer("");
132 sb.append("Order dependent weights [default = " + getDefaultWeight() + "]\n");
133
134 for (SingletonWeight<CoordinateSet> w : weights)
135 sb.append(String.format("%20s: %1.8g%n", w.getIndex().toString(), w.getWeight()));
136
137 for (SingletonWeightComparable<Integer> w : orderDependentWeights.getComparableWeights())
138 sb.append(String.format("%20s: %1.8g%n", "order " + w.getIndex(), w.getWeight()));
139
140 return sb.toString();
141 }
142
143 public String toLatNetBuilder() {
144 String str = "file:" + fileDir + fileName;
145 return str;
146 };
147
148}
String getFileDir()
Returns the directory to which an output-file can be generated.
void setFileDir(String dir)
Sets the directory to which an output-file can be generated.
void setOrderDependentWeights(ArrayList< SingletonWeightComparable< Integer > > ordWeights)
Assigns an entire list of comparable 'SingleTonWeights' as order dependent weights to orderDependentW...
void addOrderDependentWeight(int order, double weight)
Adds an order dependent weight to orderDependentWeights.
String toString()
Creates a formatted output of the projection dependent weights.
String getFileName()
Returns the name of the file to which an output can be generated.
void addOrderDependentWeight(SingletonWeightComparable< Integer > weight)
Adds an order dependent weight to orderDependentWeights.
void addOrderDependentWeight()
Instantiates the parameter orderDependentWeights.
void setFileName(String name)
Sets the name of the file to which an output can be generated.
void write()
Writes a file with name fileName to the directory fileDir containing information on the weights.
Implements a single instance of a weight for search-algorithms for quasi-Monte Carlo point sets as,...