Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
- package erlang1;
- import java.util.Vector;
- /**
- *
- * @author Caroline
- */
- public class ErlangNetwork {
- private float offeredTraffic;
- private int servers;
- private float[] occupiedProbability;
- ErlangNetwork()
- {
- this.offeredTraffic = 0;
- this.servers = 0;
- }
- ErlangNetwork(int arrivalRate, int serviceRate, int servers)
- {
- this.offeredTraffic = (float)arrivalRate/serviceRate;
- this.servers = servers;
- occupiedProbability = new float[servers+1];
- calcOccupiedProbability();
- }
- ErlangNetwork(float offeredTraffic, int servers)
- {
- this.offeredTraffic = offeredTraffic;
- this.servers = servers;
- occupiedProbability = new float[servers+1];
- calcOccupiedProbability();
- }
- private void calcOccupiedProbability()
- {
- float temp = 0;
- for(int i = 0; i < this.servers; i++)
- {
- temp += (java.lang.Math.pow(offeredTraffic,i)/factorial(i));
- }
- for(int i = 0;i<=servers;i++)
- {
- occupiedProbability[i] = (float) (java.lang.Math.pow(offeredTraffic,i)/factorial(i))/temp;
- }
- }
- //Function to get the factorial of n.
- private int factorial(int n)
- {
- int factVal = 1;
- for (int i=1; i<=n; i++)
- {
- factVal = factVal * i;
- }
- return factVal;
- }
- //Function to get the occupied probability for a certain state.
- float getOccupiedProbability(int state)
- {
- return occupiedProbability[state];
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement