/// <summary> /// Carrega em memória os valores da "Matriz energética" /// </summary> public static void LoadEnergeticMatrix(Param param) { int N = GCPS.chain.r.Count; //número de residuos GCPS.energeticMatrix = new double[N, N]; //Matriz M quadrada (NxN) for (int i = 0; i < (N - 1); i++) { for (int j = i + 1; j < N; j++) { if (i == j) { GCPS.energeticMatrix[i, j] = 0; } else { double r = 0; if (GCPS.modelType == 0) { //0-Randon //Sorteio randomico Randomic.Random(); r = (Randomic.randu * 2) - 1; //R´=(R*2)-1 } else if (GCPS.modelType == 1) { //1-H (Hidrofobico) r = -1; } else if (GCPS.modelType == 2) { //2-P (Polar) r = 1; } else //if (GCPS.modelType == 2) { //3-HP;4-estero-quimico,5-GO //O AJUSTE SOMENTE É VALIDO PARA MODELO HP //Onde: H=-, P=+ //Sendo: Eij(H,H) = -1, Eij(H,P)=0, Eij(P,P)= +1 if (param.model[i].value == -1 && param.model[j].value == -1) { r = -1; } else if (param.model[i].value == 1 && param.model[j].value == 1) { r = 1; } } GCPS.energeticMatrix[i, j] = r; GCPS.energeticMatrix[j, i] = r; } } } }
/// <summary> /// Prepara aplicação para gerar uma nova ISEM /// </summary> public static void ClearAppToGenNewIsem() { GCPS.chain.r.Clear(); Randomic.Random(); GCPS.initialIsem = AppConfigClient.Param.dataToProcess.isem < 0 ? (AppConfigClient.Param.dataToProcess.isem * -1) : AppConfigClient.Param.dataToProcess.isem; GCPS.chain.isem = GCPS.initialIsem; GCPS.chain.chainTypes = null; }
/// <summary> /// Sorteia o Monomero o qual ocorreá a tentiva de movimento /// </summary> /// <returns>Retorna a posição do Monomero</returns> public static void SortMoviment() { Randomic.Random(); int selectNode = (int)(Randomic.randu * GCPS.chain.r.Count); GCPS.chain.selectNode = GCPS.tempChain.selectNode = selectNode; }
public void TwoDifferentNumbersWhenSettingAndResetingSeed() { Randomic.SetSeed(1234); int number1 = Randomic.Basic.Int(); Randomic.ResetSeed(); int number2 = Randomic.Basic.Int(); Assert.AreNotEqual(number1, number2); }
/// <summary> /// use this method just for generating a new UID. /// </summary> /// <param name="_username_"></param> /// <param name="_socket_"></param> /// <returns></returns> public static async Task <UID> GenerateUID(StrongString _username_, IPlayerSocket _socket_) { int myIndex = Randomic.GetRandom(MIN_SERVER_INDEX, MAX_SERVER_INDEX); var _s = ThereIsServer.ServersInfo.ServerManager.Get_UID_Generation_Server(myIndex); StrongString _target = ServerManager.Generation_Location_Name; UID uid; ulong _value; for (var i = 0; ; i++) { var existing = await ThereIsServer.Actions.GetAllContentsByRef(_s, _target); if (existing.IsDeadCallBack || ThereIsServer.ServerSettings.HasConnectionClosed) { NoInternetConnectionSandBox.PrepareConnectionClosedSandBox(); return(null); } _value = existing.Decode().ToUInt64(); _value++; var _req = new DataBaseUpdateRequest(UID_MESSAGE, _value.ToString(UID_FORMAT), existing.Sha.GetStrong()); var _result = await ThereIsServer.Actions.UpdateDataOnce(_s, _target, _req); if (_result.IsDeadCallBack) { continue; } if (ThereIsServer.ServerSettings.HasConnectionClosed || i >= MAX_TRY) { return(null); } break; } //---------------------- uid = new UID(myIndex, _value, _socket_, _username_); _s = ThereIsServer.ServersInfo.ServerManager.Get_UID_Server(uid); _target = uid.GetValue() + UID_Lcation_Name; var _creation = new DataBaseCreation(UID_MESSAGE, QString.Parse(uid.GetForServer())); await ThereIsServer.Actions.CreateData(_s, _target, _creation); //---------------------- _s = ThereIsServer.ServersInfo.ServerManager.Get_UID_Server(_username_); _target = _username_ + USERNAME_TO_UID; _creation = new DataBaseCreation(UID_MESSAGE, QString.Parse(uid.GetValue())); await ThereIsServer.Actions.CreateData(_s, _target, _creation); //---------------------- return(uid); }
public void Complement() { // PtBr Randomic.SetLanguage(Language.PtBr); string ptBr = Randomic.Address.Complement(); Assert.AreEqual("Fundos 249", ptBr); // EnUs Randomic.SetLanguage(Language.EnUs); string enUs = Randomic.Address.Complement(); Assert.AreEqual("Apt. 249", enUs); }
public void Name() { // PtBr Randomic.SetLanguage(Language.PtBr); string ptBr = Randomic.Address.Name(); Assert.AreEqual("Denise Galileo", ptBr); // EnUs Randomic.SetLanguage(Language.EnUs); string enUs = Randomic.Address.Name(); Assert.AreEqual("Creagen Galileo", enUs); }
public void FullAddress() { // PtBr Randomic.SetLanguage(Language.PtBr); var ptBr = Randomic.Address.FullAddress(); Assert.AreEqual("Bosque Denise Galileo, 24867 - Jardim Assunção, Cuiabá - ES, 32587540", ptBr); // EnUs Randomic.SetLanguage(Language.EnUs); var enUs = Randomic.Address.FullAddress(); Assert.AreEqual("24867 Creagen Galileo Street, Des Moines, IL, 32587", enUs); }
public void ZipCode() { // PtBr Randomic.SetLanguage(Language.PtBr); var ptBr = Randomic.Address.ZipCode(); Assert.AreEqual("32587540", ptBr); // EnUs Randomic.SetLanguage(Language.EnUs); var enUs = Randomic.Address.ZipCode(); Assert.AreEqual("32587", enUs); }
public void Country() { // PtBr Randomic.SetLanguage(Language.PtBr); string ptBr = Randomic.Address.Country(); Assert.AreEqual("Dinamarca", ptBr); // EnUs Randomic.SetLanguage(Language.EnUs); string enUs = Randomic.Address.Country(); Assert.AreEqual("Dominica", enUs); }
public void City() { // PtBr Randomic.SetLanguage(Language.PtBr); string ptBr = Randomic.Address.City(); Assert.AreEqual("Cuiabá", ptBr); // EnUs Randomic.SetLanguage(Language.EnUs); string enUs = Randomic.Address.City(); Assert.AreEqual("Des Moines", enUs); }
public void Neighborhood() { // PtBr Randomic.SetLanguage(Language.PtBr); string ptBr = Randomic.Address.Neighborhood(); Assert.AreEqual("Jardim Assunção", ptBr); // EnUs (not available) Randomic.SetLanguage(Language.EnUs); string enUs = Randomic.Address.Neighborhood(); Assert.AreEqual("", enUs); }
public void Prefix() { // PtBr Randomic.SetLanguage(Language.PtBr); string prefixPtBr = Randomic.People.Prefix(); Assert.AreEqual("Sr.", prefixPtBr); // EnUs Randomic.SetLanguage(Language.EnUs); string prefixEnUs = Randomic.People.Prefix(); Assert.AreEqual("Mrs.", prefixEnUs); }
public void FullName() { // PtBr Randomic.SetLanguage(Language.PtBr); string namePtBr = Randomic.People.FullName(); Assert.AreEqual($"{PT_BR_FIRST_NAME} {PT_BR_LAST_NAME}", namePtBr); // EnUs Randomic.SetLanguage(Language.EnUs); string nameEnUs = Randomic.People.FullName(); Assert.AreEqual($"{EN_US_FIRST_NAME} {EN_US_LAST_NAME}", nameEnUs); }
public void LastName() { // PtBr Randomic.SetLanguage(Language.PtBr); string namePtBr = Randomic.People.LastName(); Assert.AreEqual(PT_BR_LAST_NAME, namePtBr); // EnUs Randomic.SetLanguage(Language.EnUs); string nameEnUs = Randomic.People.LastName(); Assert.AreEqual(EN_US_LAST_NAME, nameEnUs); }
public void Email() { // PtBr Randomic.SetLanguage(Language.PtBr); string emailPtBr = Randomic.Internet.Email(); Assert.AreEqual("*****@*****.**", emailPtBr); // EnUs Randomic.SetLanguage(Language.EnUs); string emailEnUs = Randomic.Internet.Email(); Assert.AreEqual("*****@*****.**", emailEnUs); }
public void Planet() { // PtBr Randomic.SetLanguage(Language.PtBr); string planetPtBr = Randomic.Words.Planet(); Assert.AreEqual("Vênus", planetPtBr); // EnUs Randomic.SetLanguage(Language.EnUs); string planetEnUs = Randomic.Words.Planet(); Assert.AreEqual("Venus", planetEnUs); }
private StrongString GenerateNew() { LoginS_Index = Randomic.GetRandom(MIN_T, MAX_0); PlayerInfoS_Index = Randomic.GetRandom(MIN_T, MAX_1); MeS_Index = Randomic.GetRandom(MIN_T, MAX_2); PlayerS_Index = Randomic.GetRandom(MIN_T, MAX_3); TroopS_Index = Randomic.GetRandom(MIN_T, MAX_4); MagicalTroopS_Index = Randomic.GetRandom(MIN_T, MAX_5); ResourcesS_Index = Randomic.GetRandom(MIN_T, MAX_6); PlayerHeroesS_Index = Randomic.GetRandom(MIN_T, MAX_7); SecuredMeS_Index = Randomic.GetRandom(MIN_T, MAX_8); PlayerItemsS_Index = Randomic.GetRandom(MIN_T, MAX_9); return(SumSalvation()); }
public void Noun() { // PtBr Randomic.SetLanguage(Language.PtBr); string wordPtBr = Randomic.Words.Noun(); Assert.AreEqual("Conselho", wordPtBr); // EnUs Randomic.SetLanguage(Language.EnUs); string wordEnUs = Randomic.Words.Noun(); Assert.AreEqual("Control", wordEnUs); }
/// <summary> /// Generate a new random Hero with /// the Element. /// </summary> /// <param name="element"></param> /// <returns></returns> public static Hero GenerateHero(PlayerElement element) { Hero myHero = new Hero(); int Range1 = Convert.ToInt32( myHero.MyRes.GetString(element.ToString() + RangeStringInRes + 1)); int Range2 = Convert.ToInt32( myHero.MyRes.GetString(element.ToString() + RangeStringInRes + 2)); int nowInt = Randomic.GetRandom(Range1, Range2); myHero.SetHeroFromBlank(nowInt.ToString()); myHero.ServerIndex = Randomic.GetRandom(ServerManager.MIN_T, ServerManager.MAX_HEROES_INFO_SERVERS); return(myHero); // not completed yet. }
public static CardInfo[] GenerateDeck() { var res = new CardInfo[40]; int index = 0; foreach (var i in CardInfo.Numbers) { res[index] = new CardInfo(Suit.Bastos, i); res[index + 1] = new CardInfo(Suit.Copas, i); res[index + 2] = new CardInfo(Suit.Espadas, i); res[index + 3] = new CardInfo(Suit.Oros, i); index += 4; } // Shuffle return(res.OrderBy((c) => Randomic.Rand()).ToArray()); }
public void State() { // PtBr Randomic.SetLanguage(Language.PtBr); var ptBr = Randomic.Address.State(); Assert.AreEqual("Espírito Santo", ptBr.Name); Assert.AreEqual("ES", ptBr.Abbreviation); Assert.AreEqual("Vitória", ptBr.Capital); Assert.AreEqual(ptBr.Name, ptBr.ToString()); // EnUs Randomic.SetLanguage(Language.EnUs); var enUs = Randomic.Address.State(); Assert.AreEqual("Illinois", enUs.Name); Assert.AreEqual("IL", enUs.Abbreviation); Assert.AreEqual("Springfield", enUs.Capital); Assert.AreEqual(enUs.Name, enUs.ToString()); }
public void Type() { // PtBr Randomic.SetLanguage(Language.PtBr); string ptBr = Randomic.Address.Type(); Assert.AreEqual("Bosque", ptBr); string ptBrAbbr = Randomic.Address.TypeAbbreviated(); Assert.AreEqual("Bq.", ptBrAbbr); // EnUs Randomic.SetLanguage(Language.EnUs); string enUs = Randomic.Address.Type(); Assert.AreEqual("Street", enUs); string enUsAbbr = Randomic.Address.TypeAbbreviated(); Assert.AreEqual("St.", enUsAbbr); }
/// <summary> /// Rotina o qual costroi a cadeia de monomeros /// </summary> /// <param name="lastValed">posição do último monomero válido</param> public static void CreateStruct(ref int lastValed) { while (GCPS.chain.r.Count < AppConfigClient.Param.dataToProcess.totalSitio) { BasicStructs.Point tempCoord = new BasicStructs.Point(); //Crio uma coordenada temporária lastValed = GCPS.chain.r.Count - 1; tempCoord.x = GCPS.chain.r[lastValed].x; //Copia o último ponto válido para a coordenada temporária tempCoord.y = GCPS.chain.r[lastValed].y; tempCoord.z = GCPS.chain.r[lastValed].z; tempCoord.deadEndPoints = string.Empty; tempCoord.deadEnd = 0; //Sorteira X,Y ou Z Randomic.Random(); if (Randomic.randu < Consts.rXYZ) //X { Randomic.Random(); tempCoord.x = Randomic.randu < 0.5 ? tempCoord.x - 1 : tempCoord.x + 1; //escolhe +/- 1 } else if (Randomic.randu < (Consts.rXYZ * 2)) //Y { Randomic.Random(); tempCoord.y = Randomic.randu < 0.5 ? tempCoord.y - 1 : tempCoord.y + 1; //escolhe +/- 1 } else { //Z Randomic.Random(); tempCoord.z = Randomic.randu < 0.5 ? tempCoord.z - 1 : tempCoord.z + 1; //escolhe +/- 1 } //aidiconar valor de enegia inicial tempCoord.e = new List <TypeE>(); //adiciona o novo ponto GCPS.chain.r.Add(tempCoord); } }
public void Phone() { // PtBr Randomic.SetLanguage(Language.PtBr); var ptBr = Randomic.Address.Phone(); Assert.AreEqual("+55", ptBr.CountryCode); Assert.AreEqual("32", ptBr.AreaCode); Assert.AreEqual("32587540", ptBr.Number); Assert.AreEqual("3258-7540", ptBr.FormatedNumber); Assert.AreEqual("+55 32 3258-7540", ptBr.ToString()); // EnUs Randomic.SetLanguage(Language.EnUs); var enUs = Randomic.Address.Phone(); Assert.AreEqual("+1", enUs.CountryCode); Assert.AreEqual("325", enUs.AreaCode); Assert.AreEqual("3258754", enUs.Number); Assert.AreEqual("325-8754", enUs.FormatedNumber); Assert.AreEqual("+1 325 325-8754", enUs.ToString()); }
/// <summary> /// Cria um Monometro /// </summary> /// <param name="tempCoord"></param> public static void CreateMono(ref BasicStructs.Point tempCoord) { tempCoord = GCPS.chain.r[GCPS.chain.r.Count - 1]; //Copia o último ponto válido para a coordenada temporária //Sorteira X,Y ou Z Randomic.Random(); if (Randomic.randu < Consts.rXYZ) //X { Randomic.Random(); tempCoord.x = Randomic.randu < 0.5 ? tempCoord.x - 1 : tempCoord.x + 1; //escolhe +/- 1 } else if (Randomic.randu < (Consts.rXYZ * 2)) //Y { Randomic.Random(); tempCoord.y = Randomic.randu < 0.5 ? tempCoord.y - 1 : tempCoord.y + 1; //escolhe +/- 1 } else { //Z Randomic.Random(); tempCoord.z = Randomic.randu < 0.5 ? tempCoord.z - 1 : tempCoord.z + 1; //escolhe +/- 1 } }
/// <summary> /// Sortei qual a posibilidade de moviment entre 1 e lenght /// </summary> /// <returns></returns> internal static int SortPossibilities(int lenght) { Randomic.Random(); int ret = (int)(Randomic.randu * lenght); //Caso ocorra algum erro no sorteio o algoritmo finaliza a execução if (ret < 0 || ret > lenght) { new GridProteinFolding.Middle.Helpers.LoggingHelpers.Log().ErroParseMoves(new Middle.Helpers.LoggingHelpers.User_Defined_Exceptions.ErroParseMovesException("SortCrankShaftMove"), Types.ErrorLevel.None); throw new System.Exception(); //CustomMessage customMessage = new CustomMessage(); //throw new CustomException(SeverityLevel.Critical, // LogLevel.Event, // new ErroParseMoves("SortCrankShaftMove Exception"), // customMessage.GetString("SortCrankShaftMove")); } else { return(ret); } }
//------------------------------------------------- #region Set Method's Region private void SetParams(StrongString _value) { StrongString[] myStrings = _value.Split(CharSeparator); if (myStrings.Length > INDEX_0) { LoginS_Index = myStrings[INDEX_0].ToInt32(); } else { LoginS_Index = Randomic.GetRandom(MIN_T, MAX_0); } if (myStrings.Length > INDEX_1) { PlayerInfoS_Index = myStrings[INDEX_1].ToInt32(); } else { PlayerInfoS_Index = Randomic.GetRandom(MIN_T, MAX_1); } if (myStrings.Length > INDEX_2) { MeS_Index = myStrings[INDEX_2].ToInt32(); } else { MeS_Index = Randomic.GetRandom(MIN_T, MAX_2); } if (myStrings.Length > INDEX_3) { PlayerS_Index = myStrings[INDEX_3].ToInt32(); } else { PlayerS_Index = Randomic.GetRandom(MIN_T, MAX_3); } if (myStrings.Length > INDEX_4) { TroopS_Index = myStrings[INDEX_4].ToInt32(); } else { TroopS_Index = Randomic.GetRandom(MIN_T, MAX_4); } if (myStrings.Length > INDEX_5) { MagicalTroopS_Index = myStrings[INDEX_5].ToInt32(); } else { MagicalTroopS_Index = Randomic.GetRandom(MIN_T, MAX_5); } if (myStrings.Length > INDEX_6) { ResourcesS_Index = myStrings[INDEX_6].ToInt32(); } else { ResourcesS_Index = Randomic.GetRandom(MIN_T, MAX_6); } if (myStrings.Length > INDEX_7) { PlayerHeroesS_Index = myStrings[INDEX_7].ToInt32(); } else { PlayerHeroesS_Index = Randomic.GetRandom(MIN_T, MAX_7); } if (myStrings.Length > INDEX_8) { SecuredMeS_Index = myStrings[INDEX_8].ToInt32(); } else { SecuredMeS_Index = Randomic.GetRandom(MIN_T, MAX_8); } if (myStrings.Length > INDEX_9) { PlayerItemsS_Index = myStrings[INDEX_9].ToInt32(); } else { PlayerItemsS_Index = Randomic.GetRandom(MIN_T, MAX_9); } }
public void Setup() { // Set the Seed to force always same results Randomic.SetSeed(1); }
/// <summary> /// Este Metodo executa o movimento de End. /// </summary> /// <returns>Return TRUE se o movimento ocorreu</returns> public bool Do() { Structs.BasicStructs.Point r1; Structs.BasicStructs.Point r2; if (GCPS.chain.selectNode == 0) { //r1 = Members.monomero.r[Members.monomero.selectNode]; //r2 = Members.monomero.r[Members.monomero.selectNode + 1]; //copia dos dados do monomero para movimento r1 = new Structs.BasicStructs.Point() { x = GCPS.chain.r[GCPS.chain.selectNode].x, y = GCPS.chain.r[GCPS.chain.selectNode].y, z = GCPS.chain.r[GCPS.chain.selectNode].z }; r1.e = new List <TypeE>(); r1.e.AddRange(GCPS.chain.r[GCPS.chain.selectNode].e); //copia dos dados do monomero para movimento r2 = new Structs.BasicStructs.Point() { x = GCPS.chain.r[GCPS.chain.selectNode + 1].x, y = GCPS.chain.r[GCPS.chain.selectNode + 1].y, z = GCPS.chain.r[GCPS.chain.selectNode + 1].z }; r2.e = new List <TypeE>(); r2.e.AddRange(GCPS.chain.r[GCPS.chain.selectNode + 1].e); } else { //r1 = Members.monomero.r[Members.monomero.selectNode]; //r2 = Members.monomero.r[Members.monomero.selectNode - 1]; //copia dos dados do monomero para movimento r1 = new Structs.BasicStructs.Point() { x = GCPS.chain.r[GCPS.chain.selectNode].x, y = GCPS.chain.r[GCPS.chain.selectNode].y, z = GCPS.chain.r[GCPS.chain.selectNode].z }; r1.e = new List <TypeE>(); r1.e.AddRange(GCPS.chain.r[GCPS.chain.selectNode].e); //copia dos dados do monomero para movimento r2 = new Structs.BasicStructs.Point() { x = GCPS.chain.r[GCPS.chain.selectNode - 1].x, y = GCPS.chain.r[GCPS.chain.selectNode - 1].y, z = GCPS.chain.r[GCPS.chain.selectNode - 1].z }; r2.e = new List <TypeE>(); r2.e.AddRange(GCPS.chain.r[GCPS.chain.selectNode - 1].e); } //Vetor p, como sendo a difereça entre os vetores posuicao do residuo "2" e do residuo "1", isto é: p=r1-r1 Structs.BasicStructs.Point p = new Structs.BasicStructs.Point() { x = r2.x - r1.x, y = r2.y - r1.y, z = r2.z - r1.z }; //Definicao dos dois vetores v e w Structs.BasicStructs.Point v; Structs.BasicStructs.Point w; //cria as 3 possibilidades para v e w if (p.x != 0) { v = new Structs.BasicStructs.Point() { x = 0, y = p.x, z = 0 }; w = new Structs.BasicStructs.Point() { x = 0, y = 0, z = p.x }; } else if (p.y != 0) { v = new Structs.BasicStructs.Point() { x = 0, y = 0, z = p.y }; w = new Structs.BasicStructs.Point() { x = p.y, y = 0, z = 0 }; } else //if (p.z != 0) { v = new Structs.BasicStructs.Point() { x = p.z, y = 0, z = 0 }; w = new Structs.BasicStructs.Point() { x = 0, y = p.z, z = 0 }; } //Sorteio do movimento para 4 possibilidades (de 0 à 3) Randomic.Random(); int i = (int)(Randomic.randu * 4); end type = end.none; switch (i) { case 0: //Primeira possibilidade: r1=r2+vi r1.x = r2.x + v.x; r1.y = r2.y + v.y; r1.z = r2.z + v.z; type = end.one; break; case 1: //Segunda possibilidade: r1=r2-vi r1.x = r2.x - v.x; r1.y = r2.y - v.y; r1.z = r2.z - v.z; type = end.two; break; case 2: //Terceira possibilidade: r1=r2+wi r1.x = r2.x + w.x; r1.y = r2.y + w.y; r1.z = r2.z + w.z; type = end.three; break; case 3: //Quarta possibilidade: r1=r2-wi r1.x = r2.x - w.x; r1.y = r2.y - w.y; r1.z = r2.z - w.z; type = end.four; break; default: new GridProteinFolding.Middle.Helpers.LoggingHelpers.Log().Exception(new System.Exception("Error ends.."), Types.ErrorLevel.Warning); break; } //GICO.WriteLine("{0} {1} {2}", r1.x, r1.y, r1.z); //Verifica a aceitação do movimento if (TryMove(ref r1)) // && TryMovePeerDPP(ref pointSorted, (Structs.Point)Members.monomero.r[neighborNode])) { GCPS.tempChain.r[GCPS.chain.selectNode] = r1; GCPS.tempChain.contMoves.endsAccept++; switch (type) { case end.one: GCPS.tempChain.contMoves.moveSetEnd.endAccept_1++; break; case end.two: GCPS.tempChain.contMoves.moveSetEnd.endAccept_2++; break; case end.three: GCPS.tempChain.contMoves.moveSetEnd.endAccept_3++; break; case end.four: GCPS.tempChain.contMoves.moveSetEnd.endAccept_4++; break; } GCPS.tempChain.typeOfLattice = BasicEnums.Lattices.End; return(true); } else { GCPS.chain.contMoves.endsReject++; switch (type) { case end.one: GCPS.chain.contMoves.moveSetEnd.endReject_1++; break; case end.two: GCPS.chain.contMoves.moveSetEnd.endReject_2++; break; case end.three: GCPS.chain.contMoves.moveSetEnd.endReject_3++; break; case end.four: GCPS.chain.contMoves.moveSetEnd.endReject_4++; break; } return(false); } }