T Gineste

M Belhaj

G Teyssedre

J Puech

N Balcon

Investigation of the electron emission properties of Silver: from technical Ag surface to ioncleaned Ag surface

INTRODUCTION

When a solid is hit by incident electrons, the energy transfer can result in the emission of secondary electrons (SE) and backscattered electrons (BSE). Electron emission (EE) is at the origin of Multipactor effect that can occur in several rf devices under vacuum. To improve the modelling of this effect and the estimation of its threshold, it is capital to know accurately some properties of the emitted electrons such as (i) the secondary electron emission yield (SEY), (ii) the electron backscattered yield (BSEY) and (iii) the energy distribution N(E). These properties are ordinarily extracted from measurements performed on materials of high purity evaporated [START_REF] Bronshtein | Vtorichnaya Elektronnaya Emissiya[END_REF] or ion cleaned [START_REF] Assa'd Et | Backscattering coefficients for low energy electrons[END_REF] under ultra-high vacuum conditions (UHV). However, the used materials in rf devices are technical and are usually exposed days and months to ambient atmosphere. Thus, their surface properties are extremely different from that of the bulk of pure metals. Since the emitted secondary electrons have a low energy (a few eV) and are generated along a few nanometers depth; obviously, the tabulated EE properties of pure materials are far from being representative of technical materials. For instance, the maximum of the electron emission yield (EEY) of pure aluminium is lower than 1 [START_REF] Bronshtein | Vtorichnaya Elektronnaya Emissiya[END_REF], while that of technical aluminium is higher than 2.8. The purpose of this paper is to study experimentally electron emission of technical silver and to establish the relation to the EE properties of pure technical silver. Technical Ag surface (exposed to atmosphere) is mainly composed by Ag 2 S and other deposited compounds, like water and carbon compounds. Indeed, Ag is widely used as coating material in waveguides. Measurements are performed in an UHV experimental facility named CELESTE and located at ONERA. A special experimental protocol was developed to extract relevant quantities. The electron emission yield EEY is investigated from very low incidence energy (few eV) to 2000eV. The energy distribution of the emitted electrons was monitored with means of an electron analyser. A step by step Ar ion "cleaning" was performed in situ. The surface composition is monitored by Auger electron spectroscopy (AES) during cleaning process and EEY as well as the energy distribution of the emitted electrons were measured at each step. The effect of incidence angle on the EEY was also investigated. An overall drop of the EEY was observed during the ion cleaning process. The maximum of the EEY decreases from 2.26 to 1.67 and the first crossover energy increases from 20 eV to 125 eV during the ion cleaning process. The effect of the ion-cleaning on the EEY tends to be supressed after venting of the vacuum chamber.

PRINCIPLE

The principle of the experimental protocol is represented in figure 1. EEY measurements, AES and electron emission spectra were performed before and after each erosion step. Similar protocol has been used by Contini et al [START_REF] Contini | Auger electron spectroscopy study of the interface between bulk aluminum and bulk aluminum oxide[END_REF]. All the measurements were performed in the CELESTE facility. This facility is entirely dedicated and designed to the study of electron emission. A dry turbo-molecular pump associated with an oil-free primary pump allows the system to be maintained at a vacuum level down to 5×10 -9 mbar. The tank is grounded. The sample holder allows the variation of the electron incidence angle from 0° (normal incidence angle) to 60°. An ELG-2 electron gun from Kimball Instrument was used. The electron beam was pulsed during EEY measurements to limit conditioning effect and was continuous during spectra acquisition. The Tectra ion gun used has an energy range of 50eV to 5000eV. The Omicron electron analyser can record spectra from 0 to 2000eV with an accuracy of 0.5meV. The sample was negatively biased to -9V during EEY and AES measurements.

RESULTS

Sample

The sample was Ag (Ag00470/31) of high purity (99.99%) provided by Goodfellow Company. It was exposed for more than 3 years to ambient atmosphere. It has a shape of a 0.5 mm thick square plaque (32×32 mm 2 ). Roughness measurements by Zygo interferometry performed on the sample prior to the experiments revealed an average roughness of 160 nm. The sample has been washed by ethanol before mounting in the measurement system, where it was outgassed in Ultra High Vacuum for 10 days before the first measurement.

Erosion parameters

The sample was sputtered with Argon ions in several steps. The same parameters (1 keV, normal incidence) for each erosion step were applied, only the erosion duration of each step was varied. The ion current, measured using a Faraday cup was adjusted to 3.5μA/cm². The results presented in this paper are focused on the technical sample (before erosion), (b) the sample at an intermediate state corresponding to an erosion time of 62.5 min and (c) the sample considered as pure after 132 min of erosion (final state). The final state is considered reached when both the AES spectra of contaminants and EEY have reached a steady state.

Surface composition

The AES microanalysis technique was used to monitor the surface and near surface chemical composition (few nanometres in depth). After each erosion step, several AES peaks (as Ag, C, O, S) were recorded under 2 keV electron excitation. The evolution of Ag, C and O peaks at 3 main steps (a, b and c) are represented in figures 2, 3 and 4. On the 'as received' sample, the silver peak (figure 2) is weak in comparison with the intermediate and final states (b and c). This feature implies that the mean contamination layer thickness is comparable to the mean AES escape depth (few nm). This is supported by the large carbon contamination peak observed on the silver surface exposed to air. It should be noted that this peak is broadened to the higher energy range at the intermediate state. This broadening implies that a chemical valance shift occurred during the cleaning process. Indeed, the carbon compounds were most probably fragmented by ion bombardment resulting in a statically increase of the number of different chemical bounding for carbon. Oxygen was also observed on the as received Ag surface. The intensity of oxygen peak is weaker than that of carbon and decreases quickly. There is no more oxygen from the 3rd cleaning step, corresponding to 1.5 min of erosion. This oxygen was probably contained in deposited water layer on the sample, and probably not significantly in the carbon compounds since the carbon peak is still important after oxygen peak has disappeared during erosion. The Ag AES peak increases during the cleaning process. The ion etching removes the contamination layer resulting in a progressive increase of the Ag MNN AES transition. A peak shift was not observed in the case of Ag. Carbon is still detected even after the final state was reached (c). Possible reasons for that is important surface roughness that prevents evacuation of contamination stuck in asperities or carbon diffusion within silver.

Energy distributions

Electron emission spectra of Ag measured under 20 eV electron irradiation are represented on figure 5 at three previously described states (a, b and c). The elastic backscattered peaks of the three spectra are very close in intensity. For clarity, the three spectra were normalized with respect to their elastic peak. Two major qualitative variations must be highlighted.

-The secondary electron peak decreases as a function of the erosion time. This trend is in good agreement with the EEY evolution presented in figures 6 and 7.

-The inelastic backscattered electrons quantity increases. Note that a characteristic backscattered peak corresponding to plasmon loss appears on pure Ag. This difference of Backscattered Electron Yield (BSEY) between pure and technical silver had already been observed for Ag in [START_REF] Gineste | A novel experimental setup for the measurement electron backscattering yield[END_REF] in the energy range 100 to 2000 eV. The increase of the inelastic BSE contribution can be explained by the fact that contaminant layer has lower mean atomic number (carbon) than that of the bulk (silver). Indeed, the BSEY increases as the mean atomic number of the target increases.

Total electron emission yields

The experimental method used for EEY measurements is described in [START_REF] Assa'd Et | Backscattering coefficients for low energy electrons[END_REF]. The EEY is plotted in figure 6 as a function of the incidence angle for air exposed Ag sample. The energy of first crossover (E 1 ), the energy at EEY maximum (E max ) and the EEY max for 'as received' and 'cleaned' sample are given in Table 1.

Fig. 6. EEY of Ag for several incidence angles. In order to provide an overview of cleaning protocol effects on EEY, figure 8 shows the evolution of EEY (also called TEEY for total electron emission yield) at 2 particular incident energies; 300 and 1200eV. The figure is divided in 3 parts.

i. In the first one, the sample is contaminated. After each erosion step, the TEEY decreases below the previous value. Thereafter, between two steps (of erosion), the EEY increases again. This implies that despite the fact that the sample was under UHV, some contamination quickly redeposit on the surface. In figure 9 a simplistic chemical composition profile of the sample is represented based on the Auger spectra. The silver sample is probably covered by a carbon compounds layer and a thin water layer. In the same figure an estimation of eroded depth calculated on the basis of erosion rate of Ag tabulated in [START_REF] Behrisch | Sputtering by Particle Bombardment: Experiments and Computer Calculations from Threshold to MeV Energies[END_REF] and the experimentally measured ion current. It should be noted that the erosion rate of contaminant is certainly different from that of silver, which is not taken into account in our calculation. ii. In the second one, the TEEY at 1200 eV becomes higher than that at 300eV. This is in agreement with the shift of TEEY max to high energies for pure silver (see table 1). Thereafter the TEEY becomes stable in spite of two successive erosion steps (at 500h and at 615h). This feature implies that a steady state is reached, the sample being considered as "pure". iii. In the third part, the sample have been exposed to air for 15 min, and then evacuated to UHV. Two measurements have been performed (at 760h and 810h). A crossover between the TEEY at 300 and 1200eV is observed. The last measurements (1130h) were performed after an additional exposure of the sample to air for 24h. The TEEY converges to initial values due to the deposition of a new contamination layer.

DISCUSSION

We have investigated in details the step by step evolution of the EE properties from as received silver sample (technical sample) to sample considered as pure Ag. Important evolutions of TEEY spectrum shape are observed during cleaning process. An overall decrease of the yield was observed and in particular the first crossover energy shifts from 20 eV (technical sample) to 125 eV (pure sample). The measured energy distributions show that the cleaning process leads to an increase of the inelastic BSE yield. The electron energy loss spectra (EELS), not presented here, clearly reveal an important increase of the characteristic energy loss frequency (surface and volume plasmon losses) when the sample was cleaned. This observation may explain the increase of the inelastic BSE yield. When the sample is exposed to ambient atmosphere after the cleaning process, the sample recovers progressively its initial state properties, in a relatively short time. This last observation may explain the fact that the EEY measured by us on many technical silver or silver plate samples over more than 5 years are extremely stable. The contamination layer built within a few days after sample processing plays the role of stable "passivation layer" whose properties replace those of the silver.

The presented results highlight the fact that the use of tabulated electron emission data measured or modelled very often on pure and clean materials for fundamental investigations purpose, must be used with great caution in context of applications (rf devices exposed to atmosphere).

Fig. 1 .

 1 Fig.1.Schematic representation of experimental setup CELESTE

Fig. 2 .

 2 Fig.2. Auger peak of Ag (biased-9V)

Fig. 3 .

 3 Fig.3. Auger peak of carbon on Ag (biased -9V).

Fig. 4 .

 4 Fig.4. Auger peak of oxygen on Ag (biased -9V).

Fig. 5 .

 5 Fig.5.Electron emission spectra of Ag. E incident =20.4eV

E 1

 1 at normal incidence increases from 20eV for the as-received sample as technical Ag (a) to 125eV at the state (c) (cleaned sample). The shape of the EEY curve also changes with a huge shift of the EEY max from 250eV for 'as received' sample to 700eV for 'pure' Ag. EEY measurements are compared to that of literature for pure Ag (evaporated under UHV) at normal incidence from Bruining et al.[START_REF] Bruining | Secondary electron emission: Part I. Secondary electron emission of metals[END_REF] and Brönstein et al.[START_REF] Bronshtein | Vtorichnaya Elektronnaya Emissiya[END_REF]. Results are in very good agreement, particularly with those of Brönstein et al., even if there is a small divergence over 1500 eV. EEY values of Bruining et al. are lower but the trend is quite similar. This confirms that the contamination layer was well removed with the experimental protocol.

Fig. 7 .

 7 Fig.7. EEY on pure Ag

Fig. 8 .

 8 Fig.8. Evolution of TEEY at 300 and 1200eV as a function of time.

Fig. 9 .

 9 Fig.9. Theoretical eroded thickness and simplistic sample representation.

Table 1 .

 1 E 1 , E max and EEY max of 'as received' and 'cleaned' Ag

	Ag 60°A
	g 50°A
	g 40°A
	g 20°A
	g 0°B
	rönstein 1969
	Bruining 1938

Acknowledgment

The author is indebted to Pr D. C. Joy for compiling and providing for free to the scientific community a database of electron-solid interactions.


Farouk Mansouri

Sylvain Huet

Dominique Houzet

A visual programming model to implement coarse-grained DSP applications on parallel and heterogeneous clusters

The digital signal processing (DSP) applications are one of the biggest consumers of computing. They process a big data volume which is represented with a high accuracy. They use complex algorithms, and must satisfy a time constraints in most of cases. In the other hand, it's necessary today to use parallel and heterogeneous architectures in order to speedup the processing, where the best examples are the supercomputers "Tianhe-2" and "Titan" from the top500 ranking. These architectures could contain several connected nodes, where each node includes a number of generalist processor (multi-core) and a number of accelerators (many-core) to finally allows several levels of parallelism. However, for DSP programmers, it's still complicated to exploit all these parallelism levels to reach good performance for their applications. They have to design their implementation to take advantage of all heterogeneous computing units, taking into account the architecture specificities of each of them: communication model, memory management, data management, jobs scheduling and synchronization . . . etc. In the present work, we characterize DSP applications, and based on their distinctiveness, we propose a high level visual programming model and an execution model in order to drop down their implementations and in the same time make desirable performances.

Introduction

The DSP applications require a high computing power. They process increased data volume (data length) which reach ten or so of Go. Also, data units are represented more and more precisely (data floating point encoding), from single precision (32 digits) to quadruple precision (128 digits). They use complex algorithms (time complexity) in linear, quadratic or exponential time, and are usually constrained in execution time (latency or throughput).

To satisfy this need, it's possible today to get a Tera-flop computing power with a thousand dollars price by using parallel and heterogeneous hardware architectures, which include generalist multi-core processors (Intel Xeon or AMD Opteron), supported by many-core accelerators (GPU, Xeon phi, Cell) and structured in the form of a cluster of connected nodes with a high bandwidth network.

Certainly, these architectures can be the best response for computing power requirements of DSP applications. However, they present some difficulties of use. In fact, to produce performance with that last, the programmer has to deal with heterogeneous computing units using different languages or API. He has to manage synchronization, memory allocation, data transfer and the load balance between the processes. Consequently, programming models are necessary to hide all this hardware specifications, and produce easily and efficiently the desired performance.

In the present work, we propose a visual programming model based on data flow graph (DFG) model which allows to users to easily express their applications. It includes an execution model (Runtime) based on StarPU, and adapted for DSP implementing on heterogeneous platform (CPU, GPU, Cell) and dynamically scheduling of tasks on computational units. First, we present in section 2 the DSP applications and highlight their characteristics and distinctiveness. In the section 3, we give the features to efficiently implement them and discuss the existing programming models to do that. In the section 4, we describe our programming model and explain its conception parts. Finely, in the section 5, we present experimentations and results of applying our model of programming (MoP) on a real world application.

Distinctiveness of DSP applications

DSP applications are in form of repetitive (iterative) processing of data set of input digital signals, which produce an output signals or a results (Fig. 1). In the classic algorithmic aspect as shown in the example Algorithm 1, it represents the main loop which iteratively process all data units using several functions. Theses functions, also called operators or kernels, fire each data unit of input signal, where each of them represents an independent processing with some input and output arguments. So, in almost cases of DSP applications, it's possible to model them in form of DFG [START_REF] Lee | Static scheduling of synchronous data flow programs for digital signal processing[END_REF][START_REF] Bhattacharya | Parameterized dataflow modeling for dsp systems[END_REF], where nodes of the graph represent the kernels and the edges represent the data trading between operators as a flow. The figure (Fig. 2) illustrates this DFG model representing the given example in Algorithm 1. That model emphasizes the movement of data and models programs as a series of connections. Explicitly defined input and output arguments synchronize operations. Where an operation runs as soon as all of its inputs become valid. Thus, that model are inherently parallel and allows to user to easily express task parallelism on his application. In addition, in DSP applications, all input data units are processed using the same actors (kernels), for example in video Algorithm 1 Synthetic DSP application Input: Number of iterations (N br). Input data set (Datain). Output: Output data set (Dataout).

1: for each Dataunit in Datain do 2:

V ar1 ← P roducer()

3: V ar2 ← kernel1(V ar1) 4: V ar3 1 ← Kernel2(V ar2) 5: V ar3 2 ← Kernel3(V ar2) 6: V ar4 ← Kernel4(V ar3 1 , V ar3 2 ) 7:
V ar5 ← Kernel5(V ar4, V ar 4 ) 8:

V ar 4 ← V ar4 9:

Consumer(V ar5) 10: end for processing, each input image is processed in the same manner using the same algorithm. So, the idea is to overlap the execution of multiple DFG, where each DFG processes one date unit. Also, according to the data kind and the algorithm of each kernel, it's interesting in most of cases to offload the execution of certain of kernels on a massively parallel computation unit (accelerators) like GPU, Xeon Phi or Cell. Taking into account these characteristics, we set up some rules to apply in implementation and execution of DSP applications on parallel and heterogeneous architectures: First, express task parallelism using the DFG modeling. It allows to highlight the dependencies between the tasks and detect the tasks able to be executed in parallel. Second, optimize data parallelism. Identify the tasks according to their Flynn taxonomy [START_REF] Flynn | Some computer organizations and their effectiveness[END_REF]. The MISD (Memory bounds) tasks are oriented to generalist processors and the SIMD tasks (Compute bounds) towards the accelerators. Third, implement graph parallelism. In fact, in order to optimize the occupancy of computing units composing the cluster, deal with several graphs to process several input data unit in the same time.

In the next section (Section 3), based on extracted distinctiveness and the rules cited above, we focus on the implementation side of the DSP applications, and we discuss on which programming model is more suitable for programmers to easily and efficiently porting these applications on parallel and heterogeneous architectures.

Implementing DSP applications on clusters

As presented in the preceding section (Section 2), the DSP applications have some characteristics that programmers must exploit in order to take advantage of targeted heterogeneous and parallel architectures. First: To highlight the kernels able to be executed in parallel (task parallelism), they have to express their algorithm in the form of a set of tasks using threads or process technologies. They have to manage these threads for communicating between them or to be synchronized, according to the application's dependencies on the both shared and distributed memory architectures. In addition, to profit from the accelerator's capacity to speedup the SIMD processing (data parallelism), the user has to offload a part of their task towards these compute units. To do this, he has to deal with memory allocation on accelerators, copy-in the input data, launch the execution, copy-out the results and finally freedom the used memory zone. Also, the DSP applications are mostly iterative, so it's a good idea to unroll the main loop of the application and therefore process a number of data units in the same time (graph parallelism) in order to increase the occupancy of computing units. To do that, the code writers must duplicate the process (thread) in charge of executing the main loop taking care to guarantee the data coherence by restricting some variables or sharing others. All this implementation features are necessary for porting DSP applications on heterogeneous clusters but not enough to optimize productivity of the hardware. In fact, the programmer must cope with others difficulties like communication cost which must be masked by overlap it with the computation time, or the load balancing between the computational units which must be assumed by a good scheduling of tasks.

Applying all these implementation rules is very hard. The programmer has to combine the handling of some API, language or extension of language which are low level for certain or restricted to specific hardware for others. For example, the programmer has to use Pthread , TBB [START_REF] Reinders | Intel threading building blocks -outfitting C++ for multi-core processor parallelism[END_REF] or OpenMP [START_REF] Chandra | Parallel Programming in OpenMP[END_REF] to generate threads and express task parallelism on each node of the cluster (shared memory architecture), but also the MPI [START_REF] Pacheco | Parallel Programming with MPI[END_REF] or PGAS [START_REF] Chen | Optimizing Partitioned Global Address Space Programs for Cluster Architectures[END_REF] model to manage them by creating processes onto many nodes (distributed memory architectures). He has to use CUDA [START_REF] Sanders | CUDA by Example: An Introduction to General-Purpose GPU Programming[END_REF] or OpenCL [START_REF] Munshi | OpenCL Programming Guide[END_REF] to address accelerators like the GPU, Cell or Xeon-Phi and offload a part of a SIMD work on it. In the other case, the higher level tools like OpenACC [START_REF] Kirk | Programming Massively Parallel Processors: A Handson Approach[END_REF], OmpSS [START_REF] Bueno | Productive cluster programming with ompss[END_REF] or StarPU [START_REF] Augonnet | StarPU: a Runtime System for Scheduling Tasks over Accelerator-Based Multicore Machines[END_REF] which are based on the low level tools, must be the solution. They offer more abstraction of the hardware and can target the complete cluster. But some of them are restricted to a particular MoP, for example OpenAcc express only the data parallelism. Others of them like OmpSS are rather oriented to decorating an existing sequential code by inserting some PRAGMA directive and transforming it at compilation time into a parallel code. The rest, based on API like StarPU is, in our opinion, the most adapted programming models to implement high level applications on heterogeneous cluster. It offers an interface based on a large routines and structures which the programmers can use to design their applications, and in addition proposes a runtime which manages the tasks, their dependencies and dynamically schedule their executions on the architecture. However, it's not adapted (specified) to DSP applications as characterized in the section 2 with their iterative and repetitive form, and also it's still complicated to handle because of the number of routines and data structures proposed to the user as interface to implement their applications. Because of these reasons, we propose in the next section, a programming model based on a DFG model to make easier the application modelling and automatize the generation of the directional acyclic graph (DAG) of tasks in order to adapt StarPU to the implementing of DSP applications on heterogeneous cluster.

Proposed programming model

We propose, in this section, a visual programming model as an extension of StarPU programming model [START_REF] Augonnet | StarPU: a Runtime System for Scheduling Tasks over Accelerator-Based Multicore Machines[END_REF] which we enrich by giving some functionalities specified to DSP applications, in order to allow for programmers to implement easily and efficiently their programs on parallel and heterogeneous clusters. Our MoP is a high level abstraction concept. The programmers don't have to worry about several architecture specificities, like memory management, task creation and synchronization, load balancing etc. . . They can implicitly express task, data and graph parallelisms in their implementations to optimally take advantage of hardware. Also, because it's based on StarPU, our MoP take in charge shared and distributed memory architectures, and deal with many-node cluster using the messages passing interface (MPI [START_REF] Pacheco | Parallel Programming with MPI[END_REF]). Bellow, we present our proposed MoP in form of 3 levels of processing as shown in the figure (Fig. 3). First, the user can easily express his application, by using an XML interface, in the form of DFG. Thus, he is saved to manipulate the StarPU's API for creating tasks, for managing the buffers between each couple of tasks, or for submitting jobs onto the corresponding computation unit. Second, the implementation of application is designed by using some functionalities like: graphs unfolding techniques [START_REF] Parhi | Static rate-optimal scheduling of iterative data-flow programs via optimum unfolding[END_REF], pipelining of tasks, buffers re-use, initialization saving . . . etc. The aim is to produce a DAG of independent tasks. Also here, the user doesn't have to deal with the API to unroll the main loop or to manage necessary memory buffers for that.Finally, in the third level, the StarPU runtime is used to physically manage the set of tasks and execute it on the cluster according to a dynamic scheduling to balance the load and favour the locality.

Next, we describe all these steps of our proposed MoP with more details through a synthetic example of DSP application:

Level 1: SignalPU DFG-XML interface

In this step, programmer has to express his application using the DFG-XML interface. First, he has to describe each kernel (operator) of his algorithm in the form of a node (vertex) using an XML structure. He has to put the name of functions which will be called in the code, the number of input and output arguments of these functions, and the architecture kind corresponding to each of them (CPU, GPU, Cell, Xeon Phi . . . ). Second, he has to describe in the same manner all data flows in the form of graph edges with a structure including information about type and size of data which is traded between kernels. After that, a DFG of application is produced as exemplified in the figure Fig. 4, which represents DFG-XML modelling of Algorithm 1.

Level 2: SignalPU implementation design

In this step, illustrated in the figure Fig. 5, a DAG of tasks is iteratively produced from the result of the previous processing level (the DFG-XML interface) using some functionalities adapted to DSP applications. This DAG represents a set of independent tasks linked by several kinds of data dependencies (Forkjoin, producer-consumer, inter-graph producer-consumer), witch are ready to be concurrently executed on the cluster. The aim of this step is to design the execution in order to optimally take advantage of all levels of parallelism (task, data, graph parallelism) by overcoming overheads due to the execution management, like memory management (Allocation, affectation and free of buffers), data management (Copy-in, copy-out), tasks management (Creation, dependencies management, scheduling, status updating, destruction) . . . etc. Next, we describe used functionalities to do that:

First, from the DFG-XML model of application, we create a set of "codlet" which is a StarPU structure and represents a mould of tasks. So, for each node in Fig. 5. The creation process of DAG of tasks of synthetic DSP application the DFG we match a "codlet" which contains all informations about the corresponding kernel (Number of input arguments, the number of output arguments, function identifiers, architecture kinds . . . ), which will characterise his tasks children. After that, based on unfolding techniques [START_REF] Parhi | Static rate-optimal scheduling of iterative data-flow programs via optimum unfolding[END_REF] which allow to unroll the main loop of the application to unravel hidden concurrency, we iteratively create tasks corresponding to all codlets, and progressively we connect them according to the dependency informations contained in the DFG-XML structure (Data type, data size, input argument, output argument, input node, output node). Also, during that process, we affect in turn to tasks the corresponding buffers according to a "First available-First affected" rule. So a buffer is affected to a new task, if and only if it's not still used by the old "sister" task. So, by using that technique named "Buffers re-use", we reduce the overhead due to memory management by the allocation and the freeing. In addition, in order to reduce overhead due to tasks management, we limit the number of submitted tasks by using pipelining functionality. So, at runtime, only a fixed levels of task is managed (Dependencies, scheduling, task status updating, . . . etc), where each pipeline level corresponds to a graph level in the DAG. Finally, we use a functionality which we call "Initialisation saving" to preserve the initialisation part of each task. So, each task leaves his initialisation data to his sister task on each device. Thus, the production or the copy of that initialisation data is made only one time per kernel per device.

Level 3: SignalPU runtime (StarPU)

In this step, the submitted DAG of tasks generated in the previous level is physically processed by StarPU runtime. So, he manages tasks by creating the submitted one, he updates their status according to data dependencies synchronization, he schedules them thanks to different algorithms like the work stealing (ws) or the heterogeneous earliest finish time (heft) [START_REF] Augonnet | StarPU: a Runtime System for Scheduling Tasks over Accelerator-Based Multicore Machines[END_REF] in order to balance the load and to highlight the locality, and finally, he executes them on the corresponding devices. The figure Fig. 6 illustrates that process made by the StarPU runtime.

Fig. 6. StarPU runtime's levels Thus, according to these three steps of our proposed MoP, the programmer can easily implement his DSP applications in high abstraction level, and efficiently take advantage of the optimizations: Task parallelism (TP) by extracting tasks in the DFG which are able to be executed in the same time. Data parallelism (DP) by off-loading some tasks on (SIMD) accelerators. Graph parallelism (GP) by overlapping the processing of some graphs. And the optimally scheduling tanks to load balance versus data locality using StarPU runtime.

Validation

In this section we present a real world experimentation in order to validate our approach and demonstrate the interest of its usage. We use the saliency application to process a set of images on the heterogeneous CPU-GPU architecture. First, we describe the saliency application and give its algorithm. Then, we explain its implementation using our programming model. And finally, we give the results and discuss their impacts.

The saliency application

Based on the primate's retina, the visual saliency model is used to locate regions of interest, i.e. the capability of human vision to focus on particular places in a visual scene. The implementation that we use is the one proposed by [START_REF] Itti | A model of saliency-based visual attention for rapid scene analysis[END_REF]. His algorithm (Algorithm 2) is: First, the input image (r-im) is filtered by a Hanning function to reduce intensity at the edges. In the frequency domain,(cff im) is processed with a 2-D Gabor filter bank using six orientations and four frequency bands. The 24 partial maps (cf -maps[i; j]) are moved in the spatial domain (c-maps[i; j]). Short interactions inhibit or excite the pixels, depending on the orientation and frequency band of partial maps. The resulting values are normalized between a dynamic range before applying Itti's method for normalization, and suppressing values lower than a certain threshold. Finally, all the partial maps are accumulated into a single map that is the saliency map of the static pathway.

Algorithm 2 Static pathway of visual model

Input: An image r im of size w • l Output: The saliency map 1: r f im ← Hanningf ilter(r im) 2: cf f im ← F F T (r f im) 3: for i ← 1 to orientations do 4: for j ← 1 to frequencies do 5:

cf maps[i, j] ← GaborF ilter(cf f im, i, j) 6:

c maps[i, j] ← IF F T (cf maps[i, j]) 7:

r maps[i, j] ← Interactions(c maps[i, j]) 8:

r normaps[i, j] ← N ormalizations(r maps[i, j]) 9:

end for 10: end for 11: saliency map ← Summation(r normaps[i, j])

The SignalPU implementation

To implement the application with our programming model, the first step is to model its algorithm (Algorithm 2) given before in the form of DFG-XML using the SignalPU interface. For this, we represent each of all functions (Hanningf ilter(), F F T (), GaborF ilter(), IF F T (), Interactions(), N ormalizations(), Summation()) with a node in the graph including the characteristics of each of them (architecture kind, input arguments, output arguments). Then, we represent the data flow between each twice kernels with an edge in the graph including its characteristics (data type, data size). In the figure (Fig. 7) we present the DFG result of this step.

At runtime, the DFG-XML description of the saliency application is analyzed and DAG of independent tasks is iteratively generated, where each task represents the execution of each kernel's code (function's code) for each image on the corresponding computation unit (CPU,GPU). Thus, we haven't to use the StarPU's API for describing the application's tasks. Also, we have not to manage the buffer's allocating and freeing. We haven't written the main loop which processes the set of input images, and don't have to unroll it. The StarPU's API is almost entirely masked.

The results

In this subsection, we present the results of experimentations where we show the performance provided by the implementation based on our programming model using the proposed optimizations (Graph unfolding, Dynamic scheduling, Buffers reuse, Tasks pipelining, Initialization saving). The aim is to highlight the performance gain by using these optimizations to take advantage of parallelism and heterogeneity of clusters. The architecture used for the experimentations is a CPU-GPU node composed of a 4 cores CPU (intel-i7 core) and 3 GPU (NVIDIA Quadro 400, NVIDIA Quadro 400, NVIDIA GeForce GTX TITAN).

In the figure Fig. 8, we present the total time necessary to process 1000 images (512x512 pixels) of 3 executions using different processing units. This total time is composed of the effective execution time on the processing units, plus the sleeping time which represents the time went without doing anything on the device, plus the overhead time which represents additional time consumed by managing the work (Tasks management, Scheduling, Buffer management, . . . ). For the first execution, we use 1 CPU core and 1 GPU (Quadro) to process images. In the GPU bar chart, we can show that execution time is higher compared to overhead time and sleeping time thanks to graph unfolding optimization which reduce waiting time. In the CPU bar chart, execution time is lower because the application is more GPU need. In the second experimentation, we use 1 CPU core and 2 GPU (Quadro). Here, we can show that total time necessary decreases compared to the first execution, so we note a speedup equal to 1.7 x. Also, thanks to dynamic scheduling, we can see the result of load balance between the 2 GPUs processing unit, thus the execution time is the same in the both GPU bar chart. In the third execution, we use 1 CPU core and 3 GPUs to enhance performance. And, we obtain a speedup equal to 2.2x compared to the first execution. Also here, we can note the advantage of using dynamic scheduling to reduce execution time and balance the load, and the graph unfolding to reduce sleeping time. But also the advantage of using the buffers reuse technique,

Conclusion

In this paper we presented our proposed programming model used to implement DSP applications, allowing a high level abstraction from the hardware specificities thanks to its visual data-flow programming capabilities, and in the same time, producing a good performance of application's implementation through exploiting task parallelism, data parallelism, graph parallelism (graph unfolding), and dynamic scheduling. First, we described DSP applications and specified their characteristics in order to implement them in an optimal way. Then, we proposed an XML interface to easily describe DSP applications in the form of a DFG model. In addition, we proposed an execution model based on StarPU runtime and exploiting some techniques. We used unfolding techniques to construct DAG of independent tasks, which we submit in pipeline mode and configured to reuse a static buffers and to save the initializations data on devices in order to reduce overhead time, after that we dynamically schedule and process them on heterogeneous and parallel architecture. Finally, we experimented our MoP on the real-world saliency application and shown that's easier to use our programming model to design it, but at the same time, it's possible to efficiently take advantage of architecture's power to speed up the execution.

Fig. 1 .

 1 Fig. 1. Illustration of DSP applications

Fig. 2 .

 2 Fig. 2. Data flow graph (DFG) model of DSP application (the example)

Fig. 3 .

 3 Fig. 3. SignalPU design: Three levels of processing

Fig. 4 .

 4 Fig. 4. The DFG-XML of the synthetic DSP application

Fig. 7 .

 7 Fig. 7. The DFG-XML model of the visual saliency application

Fig. 8 .

 8 Fig. 8. Processing time of 1000 images using different processing units


Etienne Burdet
email: etienne.burdet@eivp-paris.fr

Morgane Colombert

Denis Morand

Youssef Diab

Integrated canopy, building energy and radiosity model for 3D urban design

Keywords: Canopy, RC equivalent, Radiosity, Urban design, Urban morphology

come   L'archive ouverte pluridisciplinaire

Introduction

From narrow courtyards and passages in medina quarters or small compact plots in Japanes cities, to large avenues in Paris and terraced band housing in northern Europe, one can only be fascinated by the number and complexity of solutions that traditional urban fabrics present in terms of adaptation to the climate (see for example [START_REF] Firley | The urban housing handbook[END_REF] for a broad picture of this morphological diversity). All such urban fabrics have in common a very intricate -and rarely intuitive -relationship between indoor and outdoor spaces, to find subtle compromises between access to the sun, compactness and air circulation. With the current world energy situation and the ever growing importance of rapid urbanization, it would be only natural for urban planners and architects to try to design such complex solutions to make urban developments more energy efficient. The critical point in so doing is to go beyond the simple sum of building consumption at an early stage. An urban designer needs to take into account the interactions between buildings and open spaces by considering sun obstruction and the urban heat island effect. Oke [START_REF] Oke | The energetic basis of the urban heat island[END_REF] developed the concept of the canyon to explain how streets trap solar radiations and collect anthropogenic heat released by buildings, resulting in much higher temperatures in urban areas than in their rural counterparts. The canyon concept was later settled into a more physically sound model [START_REF] Masson | A physically-based scheme for the urban energy budget in atmospheric models[END_REF], followed by multiple models adding more detailled geometries [START_REF] Rasheed | Representing complex urban geometries in mesoscale modeling[END_REF], turbulent transfers [START_REF] Martilli | An urban surface exchange parameterisation for mesoscale models[END_REF][START_REF] Hamdi | Inclusion of a Drag Approach in the Town Energy Balance (TEB) Scheme: Offline 1D Evaluation in a Street Canyon[END_REF] and Building Energy Models (BEM) [7,[START_REF] Salamanca | A new Building Energy Model coupled with an Urban Canopy Parameterization for urban climate simulationspart II. Validation with one dimension off-line simulations[END_REF][START_REF] Tomohiko | Changes in year-round air temperature and annual energy consumption in office building areas by urban heat-island countermeasures and energy-saving measures[END_REF]. The need for BEMs in urban canopy models reveals that building energy and the urban micro-climate are in fact a joint problem. However, up to the best of our current knowledge all urban canopy models1 reason on simplified geometries -either canyon or regular arrays [START_REF] Grimmond | Initial results from Phase 2 of the international urban energy balance model comparison[END_REF]. Simplified geometries can prove limited in terms of solar radiation modeling. Three-dimensional morphology can produce complex and counter intuitive irradiation patterns, in consequence greatly impacting building energy demand [START_REF] Robinson | Urban morphology and indicators of radiation availability[END_REF][START_REF] Ratti | Building form and environmental performance: archetypes, analysis and an arid climate[END_REF]. Moreover, an urban designer using a canopy model would then have to think about the real geometry for design but about a simplified one for physics, thus greatly reducing the potential of the model in terms of intuition and reasoning. Building on existing models of urban physics, we present an integrated model of urban canopy, BEM and radiative transfers, with a description of the urban morphology as close as possible to three dimensional urban design master plans, and then use it on simple morphological variations.

Model development

After a bibliographic review of indoor and outdoor thermal models responding to an urban or neighborhood scale, we selected a canopy, a BEM and a radiation model that were the closest to the desired level of detail. We then adapted the models so that they all shared the same representation of urban morphology and the same parameters. The parameters need to be as simple as possible and should not require details unknown to urban design stages (e.g. window positioning or internal zoning). To meet such requirements, we first relaxed the regular array hypothesis in the multilayer model of Kondo [START_REF] Kondo | Development of a Multi-Layer Urban Canopy Model for the Analysis of Energy Consumption in a Big City: Structure of the Urban Canopy Model and its Basic Performance[END_REF]. We next

Q a Internal loads [W.m -2 ] Q c Climatic heat flux [W.m -2 ] Q max c Climatic heat flux upper bound (algebraic) [W.m -2 ] Q min c Climatic heat flux lower bound (algebraic) [W.m -2 ] Q h Vertical turbulent heat flux [W.m -2 ]
q v Heat flux from venting and infiltration [W.m

T targ Target indoor temperature [W.m -2 ]
adapted a single zone 2RC BEM with simple parameters. We present a final workflow to couple the analytical model to the CitySim 2 software to compute the radiative net flux.

Canopy Model 2.1.1. Discrete layer model

The initial choice for the canopy model was the multilayer model of Kondo [START_REF] Kondo | Development of a Multi-Layer Urban Canopy Model for the Analysis of Energy Consumption in a Big City: Structure of the Urban Canopy Model and its Basic Performance[END_REF] because it has the most detailed description of urban morphology (regular arrays with height density probability) and can be coupled with a BEM [START_REF] Tomohiko | Changes in year-round air temperature and annual energy consumption in office building areas by urban heat-island countermeasures and energy-saving measures[END_REF]. Our goal in this section was to reformulate the model, but with general floor and wall areas defined storey by storey (or layer per layer), so that the parameters of the equations were actual design parameters. The core idea we used to relax the regular array hypothesis was to apply a spatial discretization corresponding to that of the BEM and radiosity models in the vertical direction.

Multilayer canopy models consider only the vertical diffusion of heat and average it over the horizontal plane. The vertical turbulent transport is derived from the potential temperature, using K-theory wθ c = -C p ρK h ∂θ c /∂t, giving the vertical heat flux for a vertical wind speed w [START_REF] Holtslag | Single Column Modeling of Atmospheric Boundary Layers and the Complex Interactions with the Land Surface[END_REF]. We note the resulting vertical surfacic heat flux Q h [W.m -2 ]. Such models hold the implicit hypothesis of an infinite extension of the city with the same morphology around the studied block so that all horizontal gradients are negligible, thus no horizontal diffusion is considered. 2 Developed at LESO-PB EPFL http://citysim.epfl.ch/ With this definition of the turbulent flux, we can express the energy budget of a layer of the canopy with an arbitrary shape of buildings. The buildings are described by their cumulative floor area S f and wall length l w (sum over all buildings in the layer), giving the free canopy surface in the horizontal plane S c . Roofs are assumed to be only at the intersection of two layers, with surface S r . Inside a layer the characteristics l w and S f are assumed to be constant (implying S c is constant too). We consider four energy fluxes for a layer: surfacic flux from the walls H w [W.m -2], surfacic flux from the roofs H r [W.m -2], volumic heat flux from the inside air (venting and infiltration) q v [W.m -3 ], incoming and outgoing turbulent heat fluxes (Fig. 1). The energy budget inside a layer is then written:

C p ρ ∂θ c ∂z = C p ρ ∂ ∂z K h ∂θ c ∂z + H w l w S c + q v S f S c (1)
The continuity between two layers at height z k , at the level of roofs, is written:

Q h (z + k )S c = Q h (z - k )(S c -S r ) + H r S r (2) θ c (z + k ) = θ c (z - k ) (3)
We did not expand the turbulent flux Q h in eq. 2 to avoid defining K h at the interface of two layers. Note that canopy area S c , floor area S f and roof area S r are not independant: between two layers the augmentation of S c is equal to S r and is also the reduction of floor area S f (∆S c = S r = -∆S f ).

After establishing the budget inside a layer (eq. 1,) we further simplified it with a spatial discretization, with one node per layer (i.e. one canopy temperature per layer, no continuous variation). This discretization facilitates coupling with the BEM (sec. 2.2), which uses only one outside temperature per layer. It also further simplifies the analytical formulation from one partial differential equation and two continuity conditions to one ordinary differential equation per layer.

The discretization point is the center of the considered layer. We further assume that heat fluxes H w and q v depend only on the building from which they originate, and are thus independant of z over the height of a layer (but vary from one layer to another). Integration of eq. 1 over a layer of height ∆z, delimited by heights z i and z i+1 , gives:

C p ρ ∂θ i c ∂z = (Q h (z + i ) -Q h (z - i+1 )) ∆z + H w l w S c + q v S f S c (4)
We discretize the turbulent flux using an upwind explicit scheme :

Q h (z i-) = C p ρ K i+1 h θ i+1 c + K i-1 h θ i-1 c -2K i h θ i c ∆z (5)
With K i h and θ i c respectively the diffusivity and temperature at the center of the layer (also being the average over the height of layer i).

Substituting Q h (z + i ) using eq. 2 and then expanding the turbulent flux using eq. 5, eq. 4 then gives:

C p ρ dθ i c dt =C p ρK i h θ i+1 c -θ i c ∆z 2 1 - S r S c + C p ρK i-1 h θ i c -θ i-1 c ∆z 2 (6)
+ H r S r S c ∆z + H w l w S c + q v S f S c
This scheme is pictured in Fig. 1. This discrete layer formulation makes it possible to have only one ordinary differential equation per layer. With the hypothesis of contsant morphological characteristics inside a layer, we were also able to simplify the porosity in the diffusion term. The heat fluxes of the buildings, H w , H r and q v depend on the indoor air temperatures and are determined with the BEM (eq. 9, 8). The turbulent diffusivity K h is then the last unknown.

Determination of eddy diffusivity

Once we had established the constitutive equation for the canopy (eq. 6), we needed to compute the eddy diffusivity K h (z) to solve this energy budget. We chose the linear-exponential approximation [START_REF] Jeričević | Improvement of Vertical Diffusion Analytic Schemes Under Stable Atmospheric Conditions[END_REF] for its ease of use and low computation requirements. We considered that a classical use of a planetary boundary layer scheme ( [START_REF] Bougeault | Parameterization of Orography-Induced Turbulence in a Mesobeta-Scale Model[END_REF] in [START_REF] Martilli | An urban surface exchange parameterisation for mesoscale models[END_REF] or [17] in [START_REF] Kondo | Development of a Multi-Layer Urban Canopy Model for the Analysis of Energy Consumption in a Big City: Structure of the Urban Canopy Model and its Basic Performance[END_REF]) was too computationally intensive for the design of a few urban blocks, with no intention of studying the full mesoscale feedback. The linear-exponential form is written: Input parameters K max and h max were determined with simulations or experimental databases (in this application we used values from [START_REF] Jeričević | Improvement of Vertical Diffusion Analytic Schemes Under Stable Atmospheric Conditions[END_REF]).

K h = (K max e 1/2 /h max )zexp(-0.5(z/h max ) 2 ) (7) zi+1 zi-1 zi ∆ 2 z ∆ 2 z ∆ 2 z ∆ 2 z . ∆z θc i+1 θc i-1 θc i i Ki Sc i Sr i lw i Sf i+1 Sr i+1 Sf i Hw i qv i Hr i-1 Sc Ki-1
Such an approach holds the implicit assumption that K h (z) is independant from design choices. While urban morphology and eddy diffusivity are linked from a physical point of view, to the best of our knowledge there is no way to explicitely link the two. This conventional approach is in our opinion the best suited to design uses as it allows easier comparisons with less moving parameters, although it is less precise than classical meteorological studies.

Building Energy Model (BEM)

In this section we develop a single zone BEM in order to compute the anthropogenic heat fluxes (H w , H r and q v ) as well as the heating and cooling demands of buildings. It is important that the model require minimal input data to ensure that it is usable in early stage design without making any hypotheses on further stages (architecture and system design mainly) as well as to reduce computation time at the urban scale. We chose a two-node electrical equivalent model, similar to [START_REF] Nielsen | Simple tool to evaluate energy demand and indoor environment in the early stages of building design[END_REF] as a starting base. Such models have been developed for early stage design purposes. They have been successfully used at the urban scale coupled to a full radiosity model [START_REF] Kämpf | A simplified thermal model to support analysis of urban resource flows[END_REF] and can be easily coupled to a canopy model [START_REF] Tomohiko | Changes in year-round air temperature and annual energy consumption in office building areas by urban heat-island countermeasures and energy-saving measures[END_REF][START_REF] Salamanca | A new Building Energy Model coupled with an Urban Canopy Parameterization for urban climate simulationspart II. Validation with one dimension off-line simulations[END_REF]7]. Two specific goals must be matched for our specific case:

• distinguishing wall and roof heat fluxes since they are realeased in different canopy layers,

• using no internal or external wall surfaces for the calculation of radiative flux, since they are not defined at such an early stage (the envelope is not yet real surfaces, just a virtual boundary).

Two-node models consider only one thermal mass node for heavy elements (mainly walls and floors) and one inside node (air, furnitures etc.). On the thermal mass node, of temperature T w and capacity C w , we consider: conduction and convection to the outdoor air through the walls with conductance K ext , conduction and convection to the outdoor air through the roofs with conductance K r , conduction and convection to the inside air with conductance K int and equivalent radiative flux on the thermal mass Φ w . Surface convection is embedded in global coefficients K ext , K r and K int and is not explicitly computed. On the inside air node, of temperature T a and capacity C a , we consider: conduction and convection to the thermal mass node with conductance K int , direct exchange with the outdoor air (venting, infiltration, windows conduction) with conductance K vent , climatic heat flux (heating or cooling, algebraic) Q c , indoor anthropogenic releases Q a and equivalent radiative flux heating the inside air Φ a . The full budget for the two nodes, for a zone in the kth canopy layer, is then written (Fig. 2):

K int K vent T w C W T a C i θc K r k+1 θc k K ext Φw Φa+ Qc + Qa
K int (T a -T w ) + K ext (θ k c -T w ) + K r (θ k+1 c -T w ) + Φ w = C w dT w dt (8)
K int (T w -T a ) + K vent (θ k c -T a ) + Q c + Q a + Φ a = C a dT a dt (9)
Those equations include canopy temperatures of layers k and k + 1, θ k c and θ k+1 c . It is thus required to solve eq. 6 at the same time as the above BEM's equations, as depicted in the workflow (sec. 2.4.

To compute the equivalent radiative flux on the internal air Φ a , we define the surfacic opening coefficient η such as Φ a = ηΦ, where Φ is the total net radiative flux. η includes the areas of both openings, their material charcteristics and various geometric effects (window frames, corners, etc.) at once, with no need to further specify such details. The equivalent radiative flux on the thermal mass is defined by

Φ w = Φ(1 -η)K ext /h conv 3 , with h conv the convection coefficient.
We use a simple constant-linear control scheme for the climatic flux Q c , because it is very simple. We make no assumption on the energetic system used but allow for inside air temperature fluctuation. The bounding powers Q max c (maximum heating) and Q min c (maximum cooling) are assumed to happen at ±2K around targ temperature T targ , viz. :

Q c = Q min c + (Q max c -Q min c )(T a -T targ -2)/4. All the equivalent characteristics (K ext , K int , K r , K vent , Φ w , Φ a )
allow us to work directly on urban scale parameters, without making hypotheses on smaller scales (e.g. wall composition, internal zoning). 3 This formula is easily deduced from the electric equivalent, considering a separate resistance for the convection.

Radiosity method

After establishing the energy budget for the canopy model (eq. 1) and the BEM (eqs. 8 and 9), we use a radiosity method to determine the net radiative flux Φ -the last unknown of the system. Radiosity methods make it possible to compute both longwaves and shortwaves ranges and to account for all reflexions, on all possible geometries. The output is then the total net radiative flux for all wave lengths, including effect of all obstructions and reflection on ground

We applied the radiosity method with the CitySim software (as opposed to an analytical formulation for the canopy model and BEM) because there was no practical interpretation of the analytical formula for design at the current time and we had no need to improve the analytical form. Moreover, radiosity methods require computing forms factors, a computationally intensive task which is sped up by the use of the simplified radiosity algorithm [START_REF] Robinson | A simplified radiosity algorithm for general urban radiation exchange[END_REF] in CitySim.

Inter-models workflow

Once all the submodels had been established, we assembled them into an integrated model so that all the feedbacks were modeled. We used one independant BEM for each storey of each building (as opposed to one equivalent building for all the scenes in most micro-climate studies). This enabled us to observe the effect of a full radiative budget on the real geometry, not only on heat demand, but also on the micro-climate feedback. The data are exchanged between the analytical models (canopy, BEM) and CitySim with an Xquerry script, since CitySim uses a hierchical XML description of the morphology very similar to the one we use for our canopy model and BEM. The final system has then two equations for each surface for the radiative scheme (longwaves and shortwaves), two equations for each storey of each building for the BEM and one equation for each layer of the canopy (Fig. 3).

Test : regular and irregular morphologies

With the previously established model (sec. 2), we tested four theoritical morphologies, in order to investigate the effect of 3D morphological varations on the feedback loops between outdoor air, indoor air and radiative budget.

Case descriptions

The four tested morphologies were: regular slabs, convex slabs, even open block (all buildings have the same height), uneven open block (Fig. 4). We used the regular slabs as a basis for relative comparisons which made it possible to study three morphological transformations: bending, division into several buildings and modification of the vertical density gradient (roof lines distribution).

All cases are of equal density, with 40.000m 2 of floor area, on a 100 * 200m 2 plot. The tallest buildings are always 10 storeys of 3m, placing the canopy line at 30m. Moreover, we maintain a width (smallest horizontal dimension) of 20m for all buildings in all cases, to make sure that the contribution of solar gains to the indoor temperature is affected only by the above mentioned transformations. Such width can be considered average, leading to a low, but not uncommon, passive volume ratio [START_REF] Ratti | Energy consumption and urban texture[END_REF]. It should a priori ensure that the effect on solar access and the direct effect of the outdoor temperature are both significant in the observed results.

We use thermal charactestics of standard buildings of the 2000', taken from [START_REF] Kämpf | A simplified thermal model to support analysis of urban resource flows[END_REF] under the Basel climate (also used in [START_REF] Robinson | Urban morphology and indicators of radiation availability[END_REF]). For the sake of simplicity, we use a constant internal loads throughout the day. Eddy diffusivity is taken from [START_REF] Jeričević | Improvement of Vertical Diffusion Analytic Schemes Under Stable Atmospheric Conditions[END_REF] (values summarized in Tab. 3.1). We use values from the literature in order to make comparisons as easy as possible and to focus on the effect of the morphology. We study a winter day (3rd of January), since it should demonstrate high sensitivity to differences between solar gains and heat demand. Multilayer canopy models can also simulate the winter temperature inversion [START_REF] Kanda | Temperature Profiles Within and Above an Urban Canopy[END_REF], a much less studied phenomena than its summer counterpart.

Conductance per unit of area

K ext K int K vent [W.K -1 .m -2 ] 0.15 0.15 0.3 Heat capacity per unit of area C w C int [J.K -1 .m -2 ] 3E5 1.4E3 Powers Q min Q max Q a [W.m -2 ]
-100 100 100 We ran simulations on a 3x3 grid, with the central cell containing the studied buildings and the surrounding cells being replica of studied morphology in order to create the obstructions from the surrounding city. The turbulent diffusion is simulated up to 60m -i.e double the canopy line -to compute the perturbation induced by the urban area above the canopy line, while keeping a reasonable height/width for the simulated column. We force the temperature to the undisturbed atmospheric temperature at 60m as a boundary condition.

Albedo α 0.2 Eddy Diffusivity K max h 2 [m 2 .s -1 ] 60 [m]

Results

We first studied the solar gains and surface dissipation (losses through walls and roofs) as both should increase with the surface envelope, leading to a compromise for heat demand. After those three components, we studied the canopy temperature distribution, both for its effect on heat demand and for the urban heat island effect.

We present the results in the form of total energy over the 24 hours, summed over all the building of a layer and then normalized by the floor area of the layer. This apporach makes it possible for us to focus specifically on the vertical design with a single value per layer, while still acounting for uneven floor area distribution (Fig. 5).

Solar access

For the solar gains, we choose to display only the shortwave net flux (including reflexions) on Fig. 5, as it best reflects sun and sky access, while the longwaves range also partly reflects surface dissipation and heat storage (longwaves are included in the calculation of heat demand nonetheless). On an average, solar radiations are 7 times higher on even and uneven open blocks than on regular slabs. Such a high factor is due mainly to the very low values for the regular slabs. Even and uneven open blocks display very similar results on average, with only a 4% difference, but can display up to 100% difference on specific layers due to roof surface variations. Convex slabs display a 40% increase over regular slabs due to improved sun access with the large opening of the pseudo-courtyard and to the reflexions on the convex angles. In terms of vertical distribution, the relative increase for even and uneven open blocks compared to both slab cases is higher in the lower levels. Overall, we can clearly distinguish two groups: morphologies with large envelope surfaces (open blocks) and high solar gains -especially in the lower levels -and morphologies with small envelope surfaces (slabs) and low solar gains.

Surface dissipation

We define the surface dissipation of a layer as the sum of H wreleased in the current layer -and H r -released in the next layer -from the buildings of the current layer. It represents energy losses from surfacic exchanges for buildings of a given story. It must not be confused with the anthropogenic heat released in the layer -H w from the current layer and H r from the previous layer, both released in the current layer. The surface dissipation is 11% higher for the convex slabs than for the straight slabs, despite the same envelope surface for both cases. This difference may be explained by a higher thermal mass temperature due to increased solar gains for the convex slabs, leading to a higher temperature gradient, but also by microclimatic effects. As expected, the even and uneven open blocks respectively display a 25% and 56% increase compared to the regular slabs because they have much larger dissipation surfaces. Layers with roofs display much larger dissipation, with a factor exceeding 400%. The effect is almost constant on the vertical axis for morphologies with even floor area distributions -except for the last layer due to the roof. However, the surface dissipation (per square meter of floor area in the considered layer) can vary by a factor of up to 4.5 between layers of the uneven block. As opposed to the other cases, the uneven block also displays variations of up to 60% between layers with no roofs (i.e. excluding layers 5,7 and 10). Overall, we can distinguish the same two groups for the surface losses as for the solar gains, although the effects are far from being perfectly symmetric.

Heat demand

We define heating and cooling demands as Q c in absolute values (Q c is negative for cooling). We expect this heat demand to be a balance between the increased solar gains and increased losses, for both even and uneven open blocks. Results show that overall the solar gains weigh more in the balance. 5%, 15% and 25% decreases in heating and cooling demands compared to straight slabs. The lower we go in the layers, the stronger the effect. The effect is not perfectly linear, with only a 7% difference between straight slabs and uneven open blocks in the 10th layer, but a 35% difference in the first. The open block with an uneven floor space distribution performs better in every single layer and achieves almost constant performance in every layer, with a maximum variation of only 10% between layers, as opposed to 35% for the straight slabs.

Microclimate

The effect of morphology on the canopy temperature during the night is almost null. At 5am (Fig. 6), we observe a regular gradient, almost identical for all morphologies, with a mean deviation between cases of less than 0.1%. The temperature is higher in the bottom layers and lower in the top layers, with a difference of 1.7K -respectively 3.6K -between the first layer -respectively the 10th layer (end of the urban canopy)-and the atmospheric temperature (undisturbed temperature). This temperature gradient corresponds to a constant upward turbulent flux, thus constant anthropogenic heat releases.

During the day we observe a reverted temperature gradient for all cases, with the highest temperatures in the top layer and the lowest in the bottom layer. As opposed to the night, the effect of morphology on the microclimate is significant at 3pm. The uneven open block displays an almost constant temperature gradient, i.e a constant turbulent flux, creating a high heat circulation. The regular slabs display an almost constant temperature underneath the urban canopy line, meaning heat is stacking in the lower layers. The different dynamics result in significant differences in all layers, with a maximum difference of 1K between cases in the 10th layer (top of the urban canopy) and a maximum difference of 2K between cases in the first layer. We observe a strict hierarchy between cases, with straight slabs always having higher canopy temperatures than convex slabs. Then come even open blocks and uneven open blocks. This hierarchy is exactly the same as the one for heat demand, i.e. the morphologies with the highest canopy temperatures are those with the highest energy input -an expected result.

Discussion on the model and the results of the test cases

We originally assumed that existing physics was sufficient to study energy flow in 3D urban fabrics, but needed to be restated around a common description of the urban morphology in order to be usable for design purposes. We were able to produce such a model, with new analytical developments and hypotheses. Since the core physic of the model is roughly the same as the one of the initial models, the results should present the same degree of confidence. However, the problem of numerical values in early stage design remains, as they are chosen on very rough estimate. The presented cases should then only be considered as theoretical.

The first of these hypotheses was to consider that the urban geometry is composed of layers of constant characteristics (both thermal and morphological) and only vertical and horizontal walls, i.e. the morphology is described story by story with shoe box elements. First, this hypothesis was taken from urban master plans, where shoe box representations are widely used. Second, given the vast array of possible morphologies to be described in this way, we are presently convinced that this hypothesis allows for greater generality and is suitable for most design applications.

The second hypothesis we had to make was the climatic forcing, in the form of a forced atmospheric temperature and a forced eddy diffusivity profile. Temperature forcing at the top of the studied domain is common practice in urban climate studies -commonly referred to as off-line simulation [START_REF] Lemonsu | Modeling the Surface Energy Balance of the Core of an Old Mediterranean City: Marseille[END_REF][START_REF] Hamdi | Inclusion of a Drag Approach in the Town Energy Balance (TEB) Scheme: Offline 1D Evaluation in a Street Canyon[END_REF] -especially for relative comparisons. However, by forcing a constant diffusivity profile we neglected all the time variations of the diffusivity (especially day-night variations) and the effects of morphology on diffusivity. The time variation could be compensated with better data, or even by coupling with a mesoscale model, although the latter method is too heavy for simple engineering needs in our opinion. To our knowledge, there are currently no methods explicitly linking eddy diffusivity to urban morphology. Given that we make only relative comparisons, and in view of the results, it is likely that this hypothesis does not invalidate the core logic of our results. We are of the opinion that linear-exponential profiles are a good simplification, especially for engineering and design applications, but will require more work to be fully usable on real cases. [START_REF] Ratti | Energy consumption and urban texture[END_REF] suggested that urban morphology can change energy demands by a factor of about two. We were indeed able to confirm this order of magnitude of two on heat demand. Studies at constant density and thermal characteristics, but varying morphologies, remain very rare, although studies like the present one prove they can be very insightful. One reason is that they require specific models. Our model can also simulate the winter temperature inversion as observed by [START_REF] Kanda | Temperature Profiles Within and Above an Urban Canopy[END_REF]. On the basis of our results, we are presently convinced that more studies on the winter urban micro-climate could lead to new innovative solutions. Once again, such a task requires a 3D model to simulate the vertical temperature gradient and the effect of obstructions. Indeed, most of our cases affect only obstruction parameters, but the net radiative fluxes then have significant effects on heat demand and the urban climate through feedback loops, stressing the need for fully coupled models.

Our last and main initial hypothesis, was that developing a design model would dramatically change its use and interpretation compared to the starting models -even if the core physics are almost the same. Due to the high number of feedback loops and the consequent non-linearity, one can hardly anticipate the effect of a specific parameter change. The core logic of our model is then case-based reasoning [START_REF] Gilboa | Economic Models as Analogies[END_REF]. The user builds a specific case, simulates it and uses it as an analogy that helps him reason, hints at design solutions or examples contrary to general rules or beliefs, but does not try to generalize the results into a hard rule. This design parameter approach can be considered the opposite of the morphological indicator where one tries to infer a general rule from a parameter supposed a priori, not necessarily related to a specific analytical formulation. It is our strong belief that the morphological indicator approach (e.g. [START_REF] Steemers | Energy and the city: density, buildings and transport[END_REF][START_REF] Robinson | Urban morphology and indicators of radiation availability[END_REF]), while good for evaluating existing urban fabrics, is not suited to design purposes. The indicator approach would force the designer into a reduced spectrum of solutions (e.g. a range of surface to volume ratio), excluding a priori some particular solutions. Our results show that some original solutions are worth considering and can be very challenging to both the intuition and hard rules: the case with the highest surface to volume ratio has the lowest heat demand but produces the strongest micro-climate distortion 4 . In the parameter approach, virtually every imaginable solution is potentially worth testing, especially the most original ones. The role of a model like the one presented in this study is then to test and back up the logic of the designer on new solutions. The model itself can even suggest ways of producing new solutions by testing new values for parameters. This change from a rulebased to a case-based use and interpretation represents a switch from an assessment goal to a design goal.

Conclusion

In the course of the present study we produced a new urban design energy model and an application on four urban morphologies. First, starting with existing models of urban physics, we were able to produce a design model of coupled urban canopy, BEM and radiosity for three dimensional urban forms in order to study coupled indoor and outdoor energy transfers during the urban design process. We built the parameters of the equations to be simple design parameters (floor or wall areas, global conductance, etc.) shared by all three sub-models and revolving around a description of the morphology as close as possible to urban design practice. One could say urban design and physics speak the same language in our model. As an example use of this model, we showed that three dimensional urban morphology design choices, such as convexity, number of buildings or height gradient, could reduce heat demand by a factor of two and make heat demand almost even between all levels, while a bad design choice lead to almost double the heat the demand for lower levels than for top levels. Those morphology choices can also amplify the winter temperature inversion effect, with a magnitude of about 2K. It is noteworthy that the case with the best sun access and the lowest heat demand also lead to higher climate distortion due to effect of the turbulent diffusion. In light of these results on very simple variations, we find every reason to believe that the study of more complex morphologies could unveil unknown effects and lead to creative design solutions to energy problems. It is our firm opinion that more research is needed on integrated tools that allow architects, engineers and physicists to think and communicate with a common language and shared objects so as to reach real interdisciplinary action on the critical problem of energy in urban planning.

Figure 1 :

 1 Figure 1: Budget over a layer in the discrete layer scheme. Floor, roof and wall areas, as well as fluxes from them, are cumulative over the horizontal surface of a layer.

Figure 2 :

 2 Figure 2: Electrical equivalent of the BEM.

Figure 3 :

 3 Figure 3: Inter-model workflow.

Figure 4 :

 4 Figure 4: Studied morphologies description.

Figure 5 :

 5 Figure 5: Cumulative sums on all buildings of a layer and on 24 hours of solar irradiance, surface dissipation and heat demand, normalized by floor area in the layer.

Figure 6 :

 6 Figure 6: Vertical temperature profile, during night (5am) and day. First 30m are the urban canopy (under roof line), 30 to 60m is simulated above the canopy.

Table 1 :

 1 Thermal characteristics for the test cases.

We refer here to Urban Canopy Models as a specific category of models used to compute urban temperatures and turbulent transfers. Other methods may include CFD or zonal methods for example and are not restricted to simplified geometries Preprint submitted to Energy and Buildings December 9,

In the form of temperature inversion, not temperature increase

Acknowledgements

This research is part of the SERVEAU project, funded under the Single-Inter-Ministry fund. We sincerely thank Dr. J.Kmpf and the LESO-PB laboratory at EPFL (Switzerland) for the training on the CitySim software. We sincerely thank the reviewers for their voluntary help in making the document more clear.


Daniel R Thevenot

Robert Sternberg

Pierre R Coulet

Danièle C Gautheron

Daniele C Gautheron

245 -A highly sensitive glucose electrode using glucose oxidase collagen film

des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Industrially reconstituted collagen films have shown excellent prop erties for ~-D-glucose oxidase couplir g. Associated with a platinum anode for amperometric detection of hydrogen peroxide, these er zymatic films form a very simple and easy to handle glucose electrode; this device presents a very high sersitivity (ca. IO-' M) givirg resporses proportional to glucose concentration over 5 orders of magr.itude,

Inlroduction

The association of an erzyme in a soluble form with an electro chemical ser sor was first reported by CLARK and LYONS, in I9621 Since this date, the obtainment of carrier-bound enzymes has permitted the design of er zyme electrodes. In most cases, enzymes are trapped in gels surroundir.g the sensor-leading to systems which are difficult to handle.

In the present work, an er zymatic membrane was prepared from reconstituted calf skin collagen after acyl-azide activation and a couplirg process giving a surface bir-dir g of er zymes of different classes. '.' A glucose electrode usir g ~-D-glucose oxidase (GOD) membrar es was developed, usir g an amperometric method with a platir um electrode to detect hydrogen peroxide, which is a product of the er zymatic oxida tion of glucose according to the reaction: GOD ~-D-glucose + 0, ---+ gluconic acid + H,O,

• Discussed at the 4th International Symposium on Bicelectrochemistry, Woods Hole (Mass.). 2-8 October 1977.

• To whom all correspondance should be addressed.

5'19

The potential was fixed at +650 mV vs AgIAgCl, KCl 0,1 M and the anodic current was recorded. A stationary response was then obtained allowing the measurement of very low glucose concentrations. In a more sophisticated device, a second electrode involving a non-enzymatic membrane was used to compensate for the detection of other electroactive molecules and to enhance the selectivity of the glucose electrode.','

Experimental

Instrumentation

The glucose electrode consisted of a modified gas electrode in which the pH detector was replaced by a platinum disk and the usual teflon film by a collagen membrane. In a differential device, electrode I was mounted with a ~-D-glucose oxidase collagen membrane and electrode 2 with a nori-er-zymatic one.

Electronics were made by SOLEA TAcuSSEL: current outputs of both working electrodes were first subtracted (Deltapol) and then twice differenciated (Derivol) with a time-base of one second (GSTP) ; thus different current vs time curves were avaliable and usually recorded after a glucose pulse (SOLEA T.~CUSSEL EPL 2 with TV II GD plug-in unit, and three traces LINEAR 395 recorders).

Unless otherwise mentioned, the temperature of the solutions were carefully thermostated to 30.0 ±O.I oC (COLORA cryothermostat WK5 DS).

Solutions and reagents

Insoluble films of highly polymerized reconstituted collagen (20 em wide) were a gift of the Centre Technique du Cuir, Lyon (France); their thickness is about 0.1 mrn in a dry state and 0.3-0.5 mm when swollen. They do not need to be tanned and can be stored several years without damage. a-s

Unless otherwise mentioned, all chemicals were reagent grade. The stock solutions of 0.1 M glucose were allowed to mutarotate at room temperature at least 3 hours before using and were stored at 4°C. Both electrodes were filled with and dipped into 0.2 M acetate buffer, 0.1 M KCl solutions, pH 5.6.

Glucose oxidase binding on collagen membranes

The mild general acyl azide procedure for collagen membranes acti vation was useds followed by the enzyme coupling.

Carboxyls were first esterified by immersion of crude membranes in a methanoljo.z M hydrochloric acid solution for at least 72 hours, then treated overnight by I % hydrazine and soaked at 4°C for 3 mi nutes in 0.5 M NaNO,-0.3 M HCI mixture just before coupling. Thor ough washings were performed between each step and at the end of the activation process avoiding contact between reagents and enzyme so lutions.

Activated films of 2 X I.5 cm' were dipped (2 hours at 4°C) into I.5 cm' of borate buffer at pH 9 containing 2.5 mg ~-D-glucose oxydase (GOD, E.C. LI.3.4, BOEHRINGER Iyophilizate, grade I). Excess of soluble glucose oxidase was washed away for about 100 minutes in I M RCI and surface activity was in the range 30-60 nmol. min-' cm-'. Erzyme collagen membranes were stored in 0.2 1\1 acetate buffer, 0.1 1>1 RCI (pH 5.6).

Proced..re

Both electrodes were allowed to equilibrate in the buffer solution for IS to 30 minutes after stepping the potential of the platinum disks to +650 mV vs AgIAgCI, 0.1 M RCI. This potential corresponds to a diffusion-limited current for H 2 0 , oxidation. Calibrations were per formed by successive micro additions (10 to 50 mm") of stock solutions of 10-6 to 10-'111 glucose to 10 to 20 ern" of buffer. The stationary re sponse was the variation of the steady state values of 1,-1, when a sample of a glucose containing solution was added and the dynamic response was the height of the peak of the first derivative d(I,-I,) Jdt. When successive additions were performed in the same solution, a current offset was used.

Results and discussion

'When the enzyme electrode is immersed in a medium in which a pulse of glucose is added a steady state takes place after 2-3 minutes, as shown on Fig. I, and the value of the anodic current reaches a pla teau. The variation of intensity is directly dependent on the glucose concentration in the assay: this is the stationary response. On the other hand, the dynamic response is measured by the height of the peak ob tained after 30-50 s by recording the first derivative of this current.

The lowest glucose concentration detected under these conditions is less than 10-8 M (Fig. 2). For values higher than ro-' M, the responses become independent of the glucose concentration. The concentrations, which can be determined, range between ca. 10-6 and 10-2 M i.e. over 6 orders of magnitude and the linearity of the calibration curve is obtained between (3-5) X 10-8 and (3-5) X10-' M i.e. over 5 orders of magnitude (Fig. 2).

In a typical experiment, the calibration curves remained linear even after 40 hours operation at 30°C and 250 days storage at 4°C, allowing accurate repeated determinations for 160 micro-assays tested. However, a daily calibration was necessary, because of the slight de creasing of the calibration curve slope: ca. 20 % after 20 hours opera

P ,0

Calibration curves of the glucose elec trode, (~--) stationary response;

(---) dynamic response.

[Glucose] (M)

1~-6 1~-5 10'-4' 10'"-3

for 13 successive additior s of IO-' M glucose. the standard deviation from the mean is usually lower than 2 %.

Glucose oxidase itself is very selective for I3-D-glucose; thus en zymatic electrode I presents a high selectivity for glucose compared with usual sugars: selectivity ratios are higher than 2 000 / I for fructose, lactose and sucrose. As other species may diffuse through collagen mem branes and may be oxidized on platinum at +0.94 V (N.H.E.), the use of a compensating non enzymatic electrode 2 eliminates possible inter ferences of species such as ascorbate, urate, tyrosine or hydrogen peroxide; the selectivity ratio for hydrogen peroxide ranges between 80 /1 and 250 /1 depending upon experimental parameters (accuracy of the balance of both electrodes and GOD activity of the film).

The use of nou-enzymati« electrode 2 is specifically of greatest interest for blood glycemia determinatiors, I, usually reachirg ro-yo % of 1,-1,. Fig. 3 presents the typical analysis of blood plasma samples after induced glycemia: in this case, a glucose calibration is necessary for each set of 3-4 blood additions. The dotted line, representing the second derivative of the current 1,-1" has been successfully used for monitoring a printing device of the peak of the first derivative, i.e. the dynamic response." The glucose electrode may be used in a large temperature range, from IS to 40 DC. As both responses are very sensitive to temperature (about 4-5 % / DC at 30 dc) it is necessary to carefully thermostate the solutions in contact with both electrodes.

Conclusions

Industrially reconstituted collageu films were found suitable for glucose oxidase immobilization ; the enzymatic activity was maintained and its stability enhanced. A membrane loading of 50 to 100 mU per membrane (I em diameter) was sufficient to obtain a very sensitive glu cose electrode when associated with amperometric hydrogen peroxide detection. Stationary and dynamic responses of this glucose electrode was proportionnal to glucose concentration from 3 -5 X 10-8 to 3 -5 X 10-' M. Furthermore, this sensor was used for whole blood samples analysis in induced glycemia.

AclmowledgemenIs

This work was partially supported by the Delegation Generale it la Recherche Scientifique et Technique, grant nv 76.7.0920.

  tion (cumulated time of measurements) and 20-50 % after 40 hours, The accuracy of glucose determinations during a set of experiments was tested by successive additions of the same aliquot of glucose (Fig.

Fig

  Fig. 1.

  Fig. 3. Induced glycemia. (---) first and (---) second derivative of the current after injection of 50 mms (!ll) non deproteinized plasma sam ples. to 20cm 3 buffer (I) calibration of the electrode with a 10 !l.i'\I glucose pulse, (2-5) glncose determination in plasma samples taken after 0 (2), 30 (3), 60 (4) and 120 minutes (5) after induced glycemia. Corresponding glncose content were respectively r.r , 1.7. 1.1 and 1.0 gil.