Update of /cvsroot/fudaa/fudaa_devel/dodico/src/org/fudaa/dodico/h2d
In directory sc8-pr-cvs1:/tmp/cvs-serv5355/h2d
Modified Files:
H2dBord.java H2dBordMutable.java H2dConditionLimite.java
H2dElement.java H2dMaillage.java H2dMaillageMutable.java
H2dParametres.java
Added Files:
H2dFileFormatMaillageVersion.java H2dMaillageFrontiere.java
Removed Files:
H2dConditionLimiteReflux.java
H2dConditionLimiteRefluxMutable.java
H2dConditionLimiteTelemac.java
H2dConditionLimiteTelemacMutable.java
H2dParametresCalculReflux.java H2dParametresReflux.java
H2dRefluxDicoModel.java
Log Message:
Creation des dossiers h2d/reflux et h2d/telemac et deplacement des
fichiers concerne.
Gestion des cl et des bords ( a refaire ..)
Amelioration des gestions des versions de fichiers
--- NEW FILE: H2dFileFormatMaillageVersion.java ---
(This appears to be a binary file; contents omitted.)
--- NEW FILE: H2dMaillageFrontiere.java ---
/*
* @file H2dMaillageBord.java
* @creation 30 juin 2003
* @modification $Date: 2003/08/22 15:51:12 $
* @license GNU General Public License 2
* @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 Compiegne
* @mail de...@fu...
*/
package org.fudaa.dodico.h2d;
import gnu.trove.TIntArrayList;
import java.util.Arrays;
import java.util.List;
import org.fudaa.dodico.commun.DodicoLib;
/**
* @author deniger
* @version $Id: H2dMaillageFrontiere.java,v 1.1 2003/08/22 15:51:12 deniger Exp $
*/
public class H2dMaillageFrontiere {
protected int[][] bords_;
/**
*
*/
public H2dMaillageFrontiere(List _l) {
int n= _l.size();
if (n > 0) {
bords_= new int[n][];
_l.toArray(bords_);
} else
bords_= new int[0][];
}
public int[] getPlacement(int _ptIdx){
for(int i=0;i<bords_.length;i++){
int n=bords_[i].length;
for(int j=0;j<n;j++){
if(bords_[i][j]==_ptIdx) return new int[]{i,j};
}
}
return null;
}
/**
* Permet de verifier si les indices de bords
* sont dans le meme ordre que celui donne
* par _ipobo.
*/
public boolean isSame(int[] _ipobo) {
if (_ipobo == null)
return false;
int nBI= bords_.length;
int indexIpobo= 0;
int nbFI;
for (int i= 0; i < nBI; i++) {
nbFI= bords_[i].length;
for (int j= 0; j < nbFI; j++) {
if (_ipobo[indexIpobo + j] != bords_[i][j]) {
System.out.println("echec interne");
return false;
}
}
indexIpobo += nbFI;
}
return true;
}
/**
* Renvoie les bords sous forme d'un tableau ( conforme tableau ipobo
* de telemac/serafin).
*/
public int[] getArray() {
TIntArrayList list= new TIntArrayList();
int nb= bords_.length;
list.ensureCapacity(bords_[0].length + (nb - 1) * (bords_[0].length / 2));
for (int i= 0; i < nb; i++) {
list.add(bords_[i]);
}
return list.toNativeArray();
}
/**
* Renvoie une chaine de caractere decrivant les indices
* du bord principal
* @see org.fudaa.dodico.commun.DodicoLib#_printObject(Object, boolean)
*/
public String getDescBordPrinc() {
return DodicoLib._printObject(bords_[0], true);
}
/**
* Renvoie une chaine de caractere decrivant les indices
* du bord interne d'indice _id
* @see org.fudaa.dodico.commun.DodicoLib#_printObject(Object, boolean)
*/
public String getDescBordInterne(int _id) {
return DodicoLib._printObject(bords_[_id + 1], true);
}
public String toString() {
return "H2dMaillageBord bordExt["
+ bords_[0].length
+ "] bord interne ["
+ getBordInternNb()
+ "]";
}
public H2dPoint[] getMinMax(H2dMaillage _mail, int _bordIdx) {
int[] bordIdx= bords_[_bordIdx ];
int i0= bordIdx[0];
H2dPoint pt= _mail.pts_[i0];
H2dPointMutable pMin= new H2dPointMutable(pt);
H2dPointMutable pMax= new H2dPointMutable(pt);
int nb= bordIdx.length - 1;
for (int i= nb; i >= 1; i--) {
pt= _mail.pts_[bordIdx[i]];
if (pt.x_ < pMin.x_)
pMin.x_= pt.x_;
if (pt.y_ < pMin.y_)
pMin.y_= pt.y_;
if (pt.z_ < pMin.z_)
pMin.z_= pt.z_;
if (pt.x_ > pMax.x_)
pMax.x_= pt.x_;
if (pt.y_ > pMax.y_)
pMax.y_= pt.y_;
if (pt.z_ > pMax.z_)
pMax.z_= pt.z_;
}
return new H2dPoint[] { pMin, pMax };
}
public int getBordInternNb() {
return bords_.length - 1;
}
// public int[] getBord(int _i)
// {
// return _i==0?bordPrinc_:bordInter_[_i-1];
// }
//
// public int[] getBordPrinc()
// {
// return bordPrinc_;
// }
public int getBordNb() {
return bords_.length;
}
public int getBordPrincPointIdx(int _idx) {
return bords_[0][_idx];
}
public int getPtIdxForBord(int _bordIdx, int _ptIdx) {
return bords_[_bordIdx][_ptIdx];
}
// public int[] getBordIntern(int _i)
// {
// return bordInter_[_i];
// }
// public int getBordInternIdx(int _indexBordInterne, int _indexPoint) {
// return bordInter_[_indexBordInterne][_indexPoint];
// }
public int getPtNbForBord(int _bordIdx) {
return bords_[_bordIdx].length;
}
}
Index: H2dBord.java
===================================================================
RCS file: /cvsroot/fudaa/fudaa_devel/dodico/src/org/fudaa/dodico/h2d/H2dBord.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** H2dBord.java 18 Aug 2003 11:05:19 -0000 1.2
--- H2dBord.java 22 Aug 2003 15:51:12 -0000 1.3
***************
*** 12,57 ****
/**
- * TODO : Les bords contiennent des conditions limites !
* @author deniger
* @version $Id$
*/
! public class H2dBord
! {
!
H2dBordType type_;
! int[] elems_;
/**
*
*/
! public H2dBord(int[] _elem)
! {
! elems_=_elem;
! }
/**
*
*/
! public H2dBordType getType()
! {
return type_;
}
!
! public int getPtsNb()
! {
! return elems_.length;
}
!
/**
! * Renvoie les indices des points concernés ATTENTION: ne pas modifier ce tableau directement.
*/
! public int[] getPtsIndex()
! {
! return elems_;
}
!
! public int getPtIndice(int _offset)
! {
! return elems_[_offset];
}
--- 12,72 ----
/**
* @author deniger
* @version $Id$
*/
! public class H2dBord {
!
H2dBordType type_;
! int idxDeb_;
! int idxFin_;
!
! /**
! * La frontiere concerne par ce bord (0 =frontiere externe)
! */
! int IdxmaillageFrontiere_;
/**
*
*/
! public H2dBord() {}
/**
*
*/
! public H2dBordType getType() {
return type_;
}
!
! public String toString() {
! return "H2DBord frontiere n°"
! + IdxmaillageFrontiere_
! + " ["
! + idxDeb_
! + ","
! + idxFin_
! + "] type "
! + type_;
}
!
/**
! *
*/
! public int getIdxDeb() {
! return idxDeb_;
}
!
! /**
! * Bord unique si l'index de debut=index de fin.
! */
! public boolean isUnique() {
! return idxDeb_ == idxFin_;
! }
!
! public boolean containsIdx(int _idx) {
! return idxDeb_ == idxFin_
! ? true
! : ((idxDeb_ < idxFin_)
! ? ((_idx >= idxDeb_) && (_idx <= idxFin_))
! : ((_idx >= 0) && (_idx <= idxFin_) && (_idx >= idxDeb_)));
}
***************
*** 59,65 ****
*
*/
! protected void setType(H2dBordType _type)
! {
! type_ = _type;
}
--- 74,86 ----
*
*/
! public int getIdxFin() {
! return idxFin_;
! }
!
! /**
! * Renvoie l'index de la frontiere concernee par ce bord.
! */
! public int getIdxFrontiere() {
! return IdxmaillageFrontiere_;
}
Index: H2dBordMutable.java
===================================================================
RCS file: /cvsroot/fudaa/fudaa_devel/dodico/src/org/fudaa/dodico/h2d/H2dBordMutable.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** H2dBordMutable.java 4 Jul 2003 13:07:25 -0000 1.1
--- H2dBordMutable.java 22 Aug 2003 15:51:12 -0000 1.2
***************
*** 1,5 ****
/*
* @file H2dBordMutable.java
! * @creation 27 juin 2003
* @modification $Date$
* @license GNU General Public License 2
--- 1,5 ----
/*
* @file H2dBordMutable.java
! * @creation 20 août 2003
* @modification $Date$
* @license GNU General Public License 2
***************
*** 15,27 ****
* @version $Id$
*/
! public class H2dBordMutable extends H2dBord
! {
/**
*
*/
! public H2dBordMutable(int[] _elems)
! {
! super(_elems);
}
--- 15,32 ----
* @version $Id$
*/
! public class H2dBordMutable extends H2dBord{
/**
*
*/
! public H2dBordMutable() {
! super();
! }
!
! /**
! *
! */
! public void setIdxDeb(int _i) {
! idxDeb_= _i;
}
***************
*** 29,36 ****
*
*/
public void setType(H2dBordType _type)
{
! super.setType(_type);
}
}
--- 34,55 ----
*
*/
+ public void setIdxFin(int _i) {
+ idxFin_= _i;
+ }
+
+ /**
+ *
+ */
+ public void setIdxmaillageFrontiere(int _i) {
+ IdxmaillageFrontiere_= _i;
+ }
+ /**
+ *
+ */
public void setType(H2dBordType _type)
{
! type_ = _type;
}
+
}
Index: H2dConditionLimite.java
===================================================================
RCS file: /cvsroot/fudaa/fudaa_devel/dodico/src/org/fudaa/dodico/h2d/H2dConditionLimite.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** H2dConditionLimite.java 4 Jul 2003 13:07:25 -0000 1.1
--- H2dConditionLimite.java 22 Aug 2003 15:51:12 -0000 1.2
***************
*** 9,12 ****
--- 9,14 ----
package org.fudaa.dodico.h2d;
+ import java.util.Comparator;
+
import org.fudaa.dodico.h2d.type.H2dBordType;
import org.fudaa.dodico.h2d.type.H2dClType;
***************
*** 16,52 ****
* @version $Id$
*/
! public class H2dConditionLimite
! {
!
! H2dBordType bordType_;
! H2dClType uType_;
! H2dClType vType_;
! H2dClType hType_;
! double u_,v_,h_;
!
! int indexPt_;
!
/**
*
*/
! public H2dConditionLimite()
! {
super();
}
- /**
- *
- */
- public H2dBordType getBordType()
- {
- return bordType_;
}
/**
*
*/
! public double getH()
! {
return h_;
}
--- 18,63 ----
* @version $Id$
*/
! public class H2dConditionLimite {
!
!
! protected H2dClType uType_;
! protected H2dClType vType_;
! protected H2dClType hType_;
! protected double u_, v_, h_;
!
! protected int indexPt_;
/**
*
*/
! public H2dConditionLimite() {
super();
}
+
+ public static H2dConditionLimite getCLFast(int _ptIdx,H2dConditionLimite[] _l) {
+ int lowIndex= 0;
+ int highIndex= _l.length- 1;
+ int temp, tempMid;
+
+ while (lowIndex <= highIndex) {
+ tempMid= (lowIndex + highIndex) >> 1;
+ temp= _l[tempMid].getIndexPt() - _ptIdx;
+ if (temp < 0)
+ lowIndex= tempMid + 1;
+ else if (temp > 0)
+ highIndex= tempMid - 1;
+ else
+ return _l[tempMid];
+ }
+ return null;
}
+
+
/**
*
*/
! public double getH() {
return h_;
}
***************
*** 55,60 ****
*
*/
! public H2dClType getHType()
! {
return hType_;
}
--- 66,70 ----
*
*/
! public H2dClType getHType() {
return hType_;
}
***************
*** 63,68 ****
*
*/
! public int getIndexPt()
! {
return indexPt_;
}
--- 73,78 ----
*
*/
! public final int getIndexPt() {
! //System.out.println(indexPt_);
return indexPt_;
}
***************
*** 71,76 ****
*
*/
! public double getU()
! {
return u_;
}
--- 81,85 ----
*
*/
! public double getU() {
return u_;
}
***************
*** 79,84 ****
*
*/
! public H2dClType getUType()
! {
return uType_;
}
--- 88,92 ----
*
*/
! public H2dClType getUType() {
return uType_;
}
***************
*** 87,92 ****
*
*/
! public double getV()
! {
return v_;
}
--- 95,99 ----
*
*/
! public double getV() {
return v_;
}
***************
*** 95,101 ****
*
*/
! public H2dClType getVType()
! {
return vType_;
}
--- 102,120 ----
*
*/
! public H2dClType getVType() {
return vType_;
+ }
+
+ public static class ComparatorIdxPt implements Comparator {
+
+ public int compare(Object o1, Object o2) {
+ if (!(o1 instanceof H2dConditionLimite))
+ throw new IllegalArgumentException("o1 doit etre de type H2dConditionLimite");
+ if (!(o2 instanceof H2dConditionLimite))
+ throw new IllegalArgumentException("o2 doit etre de type H2dConditionLimite");
+ return ((H2dConditionLimite)o1).indexPt_
+ - ((H2dConditionLimite)o2).indexPt_;
+ }
+
}
Index: H2dElement.java
===================================================================
RCS file: /cvsroot/fudaa/fudaa_devel/dodico/src/org/fudaa/dodico/h2d/H2dElement.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** H2dElement.java 18 Aug 2003 11:05:19 -0000 1.2
--- H2dElement.java 22 Aug 2003 15:51:12 -0000 1.3
***************
*** 16,19 ****
--- 16,20 ----
import org.fudaa.dodico.commun.DodicoLib;
+ import org.fudaa.dodico.h2d.type.H2dElementType;
/**
***************
*** 23,36 ****
*/
public class H2dElement {
- public static final int UNKNOWN= 0;
- public static final int T3= 1;
- public static final int T6= 3;
- public static final int Q4= 4;
- public static final int Q8= 5;
- /**
- * Element de type mixte
- */
- public static final int MIXTE= 10;
int[] ptIndex_;
--- 24,28 ----
***************
*** 48,54 ****
}
! public int getDefaultType() {
return getDefaultType(ptIndex_.length);
}
/**
--- 40,54 ----
}
! public H2dElementType getDefaultType() {
return getDefaultType(ptIndex_.length);
}
+
+ public static H2dElement ShiftLeftElementIndex(H2dElement _el){
+ int[] elIdx=_el.ptIndex_;
+ int[] n=new int[elIdx.length];
+ System.arraycopy(elIdx, 1, n, 0, elIdx.length-1);
+ n[elIdx.length-1]=elIdx[0];
+ return new H2dElement(n);
+ }
/**
***************
*** 432,436 ****
}
! public static int getCommunType(H2dElement[] _elts) {
int n= _elts.length - 2;
H2dElement element;
--- 432,436 ----
}
! public static H2dElementType getCommunType(H2dElement[] _elts) {
int n= _elts.length - 2;
H2dElement element;
***************
*** 439,443 ****
element= _elts[i];
if (element.getPtNb() != r) {
! return MIXTE;
}
}
--- 439,443 ----
element= _elts[i];
if (element.getPtNb() != r) {
! return null;
}
}
***************
*** 476,491 ****
}
! public static int getDefaultType(int _nbPoint) {
! switch (_nbPoint) {
! case 3 :
! return T3;
! case 4 :
! return Q4;
! case 6 :
! return T6;
! case 8 :
! return Q8;
! }
! return UNKNOWN;
}
--- 476,481 ----
}
! public static H2dElementType getDefaultType(int _nbPoint) {
! return H2dElementType.getCommunType(_nbPoint);
}
Index: H2dMaillage.java
===================================================================
RCS file: /cvsroot/fudaa/fudaa_devel/dodico/src/org/fudaa/dodico/h2d/H2dMaillage.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** H2dMaillage.java 18 Aug 2003 11:05:19 -0000 1.3
--- H2dMaillage.java 22 Aug 2003 15:51:12 -0000 1.4
***************
*** 20,23 ****
--- 20,24 ----
import org.fudaa.dodico.commun.DodicoLib;
import org.fudaa.dodico.commun.ProgressionInterface;
+ import org.fudaa.dodico.h2d.type.H2dElementType;
/**
***************
*** 30,37 ****
public class H2dMaillage {
! int typeElt_;
H2dPoint[] pts_;
H2dElement[] elts_;
! H2dMaillageBord ptsFrontiere_;
H2dPoint ptMin_;
--- 31,38 ----
public class H2dMaillage {
! H2dElementType typeElt_;
H2dPoint[] pts_;
H2dElement[] elts_;
! H2dMaillageFrontiere ptsFrontiere_;
H2dPoint ptMin_;
***************
*** 78,88 ****
*/
public H2dMaillage(H2dPoint[] _pts, H2dElement[] _elts) {
- typeElt_= -1;
pts_= _pts;
elts_= _elts;
}
! public int getEltType() {
! if (typeElt_ < 0) {
typeElt_= H2dElement.getCommunType(elts_);
}
--- 79,88 ----
*/
public H2dMaillage(H2dPoint[] _pts, H2dElement[] _elts) {
pts_= _pts;
elts_= _elts;
}
! public H2dElementType getEltType() {
! if (typeElt_ ==null) {
typeElt_= H2dElement.getCommunType(elts_);
}
***************
*** 132,136 ****
*
*/
! public H2dMaillageBord getPtsFrontiere() {
return ptsFrontiere_;
}
--- 132,136 ----
*
*/
! public H2dMaillageFrontiere getPtsFrontiere() {
return ptsFrontiere_;
}
***************
*** 298,431 ****
*/
public void computeBord(ProgressionInterface _inter) {
- //les pts frontieres existent, on sort.
- if (ptsFrontiere_ != null)
- return;
-
- int n= elts_.length;
- //maj avancement
- if (_inter != null) {
- _inter.setProgression(0);
- _inter.setDesc("Recherche des aretes de contours");
- }
- //listIndex stocke les indices des aretes unique tel que
- //listIndex(2n) point 1 arete
- //listIndex(2n+1) point 2 arete
- TIntArrayList listIndex= new TIntArrayList(n);
-
- //on parcourt les elements pour remplir listIndex
- for (int i= n - 1; i >= 0; i--) {
- elts_[i].addSingleSegment(this, listIndex, i);
- }
-
- //on recupere le point so du maillage ( compris forcement dans les index
- //de bords)
- int debIndex= getSOPointIndex(listIndex);
-
- //variable temporaire
- int indexTemp;
-
- //a1 indice p1 de l'arete
- //a2 indice p2 de l'arete
- int a1, a2;
-
- //bord : la liste des bord. On parit pour 20 bord max...
- ArrayList bord= new ArrayList(20);
-
- //vecteur tempo stockant les indices du bord en cours.
- TIntArrayList l= new TIntArrayList(n * 6);
- // on part du point SO. on l'ajoute..
- a1= debIndex;
- l.add(a1);
-
- //maj avancement
- if (_inter != null) {
- _inter.setProgression(50);
- _inter.setDesc("Tri des aretes de contours");
- }
-
- //on parcourt toutes les aretes uniques et on recupere les aretes chaines
- while (listIndex.size() > 0) {
- //un index du point a1 : pour recuperer le point a2.
- indexTemp= listIndex.indexOf(a1);
- //pas d'index prob !!!
- if (indexTemp < 0)
- System.out.println("probleme " + a1);
-
- //on recupere a2 et on enleve les entrees dans listIndex
- if (indexTemp % 2 == 0) {
- a2= listIndex.get(indexTemp + 1);
- listIndex.remove(indexTemp + 1);
- listIndex.remove(indexTemp);
- } else {
- a2= listIndex.get(indexTemp - 1);
- listIndex.remove(indexTemp);
- listIndex.remove(indexTemp - 1);
-
- }
- //si a2 ne correspond pas a l'indice de debut, on continue le tour
- //du bord. Sinon, on ajoute le bord et on recommence (s'il y a encore des
- //points) par le point SO.
- if (a2 != debIndex) {
- l.add(a2);
- a1= a2;
- } else {
- bord.add(l.toNativeArray());
- l.clear();
- if (listIndex.size() != 0) {
- //on reinitialise les valeurs necessaires.
- debIndex= getSOPointIndex(listIndex);
- a1= debIndex;
- l.add(a1);
- }
- }
- }
- //petite verif inutile....
- if (l.size() != 0)
- System.out.println("prob des points restent dans l");
-
- if (_inter != null) {
- _inter.setProgression(90);
- _inter.setDesc("Orientation des bords");
- }
- n= bord.size();
- int[] a1a2, element;
- int finIndex, premElement;
- for (int i= 0; i < n; i++) {
- a1a2= (int[])bord.get(i);
- //pour le premier pt du bord on cherche un element
- //ayant 2 point de bord
- debIndex= a1a2[0];
- finIndex= a1a2[1];
- element= getEltIdxContainsPtIdx(debIndex);
- //l'element contenant les points 0 et 1 du bord.
- premElement= getElementIdxContainingPtIdx(finIndex, element);
-
- //l'orientation de l'element.
- a1= this.isElementTrigoOriente(premElement);
- a2= elts_[premElement].isSegmentInEltOrient(debIndex, finIndex);
- if (a2 == 0)
- System.out.println("prob les elements n'appartiennent au segment");
- //l'orientation reelle du premier segment de bord.
- a1= a1 * a2;
- if (a1 == 0)
- new Throwable().printStackTrace();
- //Si le point est dans le sens horaire on inverse.
- //le bord externe doit etre dans le sens trigo
- //et les bord interne dans le sens horaire.
- if (a1 < 0) {
- DodicoLib.invert(a1a2, 1);
- }
- }
-
- //on affecte les points frontieres.
- ptsFrontiere_= new H2dMaillageBord(bord);
- }
-
- public void computeBordV2(ProgressionInterface _inter) {
if (ptsFrontiere_ != null)
return;
! if (getEltType() == H2dElement.T6) {
! computeBordV2T6(_inter);
return;
}
--- 298,306 ----
*/
public void computeBord(ProgressionInterface _inter) {
if (ptsFrontiere_ != null)
return;
! if (getEltType() == H2dElementType.T6) {
! computeBordT6(_inter);
return;
}
***************
*** 555,566 ****
}
}
! ptsFrontiere_= new H2dMaillageBord(bordFinal);
}
! public void computeBordV2T6(ProgressionInterface _inter) {
if (ptsFrontiere_ != null)
return;
-
int n= elts_.length;
if (_inter != null) {
--- 430,440 ----
}
}
! ptsFrontiere_= new H2dMaillageFrontiere(bordFinal);
}
! public void computeBordT6(ProgressionInterface _inter) {
if (ptsFrontiere_ != null)
return;
int n= elts_.length;
if (_inter != null) {
***************
*** 691,695 ****
}
}
! ptsFrontiere_= new H2dMaillageBord(bordFinal);
}
--- 565,569 ----
}
}
! ptsFrontiere_= new H2dMaillageFrontiere(bordFinal);
}
***************
*** 709,713 ****
ProgressionInterface _progress,
TObjectIntHashMap _segmentPtAjouteIdx) {
! if (getEltType() != H2dElement.T3)
return null;
int nelem= elts_.length;
--- 583,587 ----
ProgressionInterface _progress,
TObjectIntHashMap _segmentPtAjouteIdx) {
! if (getEltType() != H2dElementType.T3)
return null;
int nelem= elts_.length;
***************
*** 835,839 ****
ProgressionInterface _progress,
TIntIntHashMap _ptT6IdxPtT3Idx) {
! if (getEltType() != H2dElement.T6)
return null;
int nelemT6= elts_.length;
--- 709,713 ----
ProgressionInterface _progress,
TIntIntHashMap _ptT6IdxPtT3Idx) {
! if (getEltType() != H2dElementType.T6)
return null;
int nelemT6= elts_.length;
***************
*** 917,921 ****
public H2dMaillage maillageT6en4T3(ProgressionInterface _progress) {
! if (getEltType() != H2dElement.T6)
return null;
int nptsT6= pts_.length;
--- 791,795 ----
public H2dMaillage maillageT6en4T3(ProgressionInterface _progress) {
! if (getEltType() != H2dElementType.T6)
return null;
int nptsT6= pts_.length;
***************
*** 1049,1053 ****
if (_pr != null)
_pr.setProgression(90);
! _mail.ptsFrontiere_=new H2dMaillageBord(l);
}
--- 923,927 ----
if (_pr != null)
_pr.setProgression(90);
! _mail.ptsFrontiere_=new H2dMaillageFrontiere(l);
}
Index: H2dMaillageMutable.java
===================================================================
RCS file: /cvsroot/fudaa/fudaa_devel/dodico/src/org/fudaa/dodico/h2d/H2dMaillageMutable.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** H2dMaillageMutable.java 18 Aug 2003 11:05:19 -0000 1.2
--- H2dMaillageMutable.java 22 Aug 2003 15:51:12 -0000 1.3
***************
*** 9,12 ****
--- 9,13 ----
package org.fudaa.dodico.h2d;
+ import org.fudaa.dodico.h2d.type.H2dElementType;
import org.fudaa.dodico.telemac.io.SerafinInterface;
***************
*** 30,33 ****
--- 31,38 ----
elts_= _elements;
}
+
+ public void setElt(H2dElement _element,int _id){
+ elts_[_id]=_element;
+ }
/**
***************
*** 41,45 ****
*
*/
! public void setPtsFrontiere(H2dMaillageBord _is) {
ptsFrontiere_= _is;
}
--- 46,50 ----
*
*/
! public void setPtsFrontiere(H2dMaillageFrontiere _is) {
ptsFrontiere_= _is;
}
***************
*** 48,52 ****
*
*/
! public void setTypeElt(int _i) {
typeElt_= _i;
}
--- 53,57 ----
*
*/
! public void setTypeElt(H2dElementType _i) {
typeElt_= _i;
}
Index: H2dParametres.java
===================================================================
RCS file: /cvsroot/fudaa/fudaa_devel/dodico/src/org/fudaa/dodico/h2d/H2dParametres.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** H2dParametres.java 19 Aug 2003 07:44:22 -0000 1.3
--- H2dParametres.java 22 Aug 2003 15:51:12 -0000 1.4
***************
*** 9,13 ****
package org.fudaa.dodico.h2d;
-
/**
*
--- 9,12 ----
***************
*** 15,23 ****
* @version $Id$
*/
! public interface H2dParametres
! {
!
! public H2dMaillage getMaillage();
}
--- 14,42 ----
* @version $Id$
*/
! public abstract class H2dParametres {
! protected H2dMaillage maillage_;
!
! protected H2dParametres(H2dMaillage _m) {
! maillage_= _m;
! }
!
! public final H2dMaillage getMaillage() {
! return maillage_;
! }
+ public int getNPointInBord(H2dBord _b) {
+ int deb= _b.getIdxDeb();
+ int fin= _b.getIdxFin();
+ if (fin > deb)
+ return fin - deb + 1;
+ else {
+ return fin
+ + 1
+ + maillage_.getPtsFrontiere().getPtNbForBord(
+ _b.getIdxFrontiere())
+ - deb;
+ }
+
+ }
}
--- H2dConditionLimiteReflux.java DELETED ---
--- H2dConditionLimiteRefluxMutable.java DELETED ---
--- H2dConditionLimiteTelemac.java DELETED ---
--- H2dConditionLimiteTelemacMutable.java DELETED ---
--- H2dParametresCalculReflux.java DELETED ---
--- H2dParametresReflux.java DELETED ---
--- H2dRefluxDicoModel.java DELETED ---
|