Skip to main content

Fortran 90 Media Mobile


Introduzione al Fortran s intrinseca Functions. Read Capitolo 4, e l'esempio trig f Inizio Homework 4, causa 1 31.Long prima che ci fossero calcolatrici scientifiche, gli scienziati e gli ingegneri sono resi conto che avevano bisogno di semplici modi per ottenere i risultati di funzioni comuni come seno, coseno, logaritmo naturale, e molti altri Queste esigenze sono state considerate con ogni standard Fortran, con conseguente una lunga lista di funzioni integrate funzioni intrinseche per rendere la vita più facile non voglio coprire tutte le funzioni dell'attuale standard di Fortran 90, ma darà si alcuni tra quelli chiave in questo e in seguito discussions. The la sintassi per l'utilizzo di funzioni intrinseche può essere molto familiare a voi, perché appaiono anche in fogli di calcolo Se entro la grandezza di una velocità in scatola A1, e l'angolo tra la velocità e la asse x in radianti in scatola A2, allora posso calcolare la x-componente della velocità nella scatola A3 con la formula A1 cOS A2.In Fortran questo risultato potrebbe essere ottenuto con un'istruzione di assegnazione come vel as. velx cos angrad Prima di passare su abbiamo bisogno di un semplice definizione Nel precedente esempio angrad è un argomento della funzione cos. Some base intrinseche Functions. abs x - valore assoluto di x. iabs I - valore assoluto di un numero intero ho pre-90 Fortran abs didn t come numero intero arguments. sin x - Restituisce il seno di xx non è un integer. cos x - Restituisce il coseno di xx non è un integer. tan x - Restituisce la tangente di xx non è un integer. exp x - calcola e 2 7183 al x alimentazione x non è un integer. log x - calcola il logaritmo naturale di xx non è un intero e 0.log10 x - calcola logaritmo in base 10 di xx non è un intero e 0.asin x - Restituisce il seno arcoseno inverso di xx è real. acos x - restituisce il coseno arcocoseno inverso di xx è x real. atan - restituisce l'inversa della tangente arcotangente di XX è real. sqrt x - Restituisce la radice quadrata di xx non è un intero e 0.nint x - Restituisce il intero più vicino per il numero reale x. min x1, x2 - Restituisce il minimo di x1, x2 argomenti devono essere lo stesso x1 type. max, x2 - Restituisce il massimo di x1, x2 argomenti devono essere le funzioni stesse type. The max e min sono insolito in che prendono un numero qualsiasi di argomenti forme generiche min e max non erano una parte manditory dello standard Fortran 77, ma sono in Fortran 90 in molti Fortran 77 codici vedrete functions. amax1 x1, x2 - Restituisce il massimo di x1, x2 come un numero reale argomenti sono i1 real. amax0, i2 - Restituisce il massimo di i1, i2 come un numero reale argomenti sono i1 integer. max0, i2 - Restituisce il massimo di i1, i2 come un argomenti interi sono numeri interi. max1 x1, x2 - Restituisce il massimo di x1, x2 come un argomenti interi sono forme real. Similar apparso per min nel registro aggiunta e log10 erano forme opzionali in Fortran 77 programmi più vecchi usano spesso alog e alog10 per avviare il nome della funzione con una lettera caratteristica di una vera piuttosto che valore intero In generale Fortran 77 era più dipendente specificamente raccolta una appropriata funzione per i tipi di argomento e tipo di valore da returned. While sul tema della Fortran 90 funzioni intrinseche, vale la pena notare due che avete visto nell'esempio gamme F e una funzione correlata, che sono utili per i programmi in esecuzione su una serie di x machines. tiny - Restituisce il numero positivo più piccolo che può essere rappresentato sul computer corrente per argomento reale x. huge x - Returns il maggior numero positivo che può essere rappresentato sul computer corrente per argomento reale x. precision x - Restituisce l'una precisione decimale approssimativa disponibile sul computer corrente per il vero argomento x. Some Commenti Speed. You devono rendersi conto che trigonometriche, registro , e le funzioni intrinseche EXP sono relativamente costosi in termini di tempo di computer richiesti Se è necessario il valore del peccato 0 1 di frequente, utilizzare la funzione di una volta in un incarico like. sin0p1 peccato 0 1 quindi utilizzare il nuovo sin0p1 variabile ovunque sia necessario sin 0 1.Il costo elevato di exp e il registro si riflette anche nell'uso dell'operatore solito un'espressione come risultati xy nel compilatore inserimento codice equivalente a exp y log x Tuttavia, la maggior parte dei compilatori sono abbastanza intelligente per capire che se y è un numero intero, possono utilizzare uno o più moltiplicazioni x 2 xx, x 3 xxx, ecc tali compilatori contengono la logica per conoscere il punto di pareggio, in termini di dimensioni di y, tra i quali la moltiplicazione e la combinazione di exp e log è sempre più veloce per il programma x 2 x 2 di 0, quindi state attenti nella scelta dei tipi per exponents. Speed ​​è anche un fattore di esistenza della funzione intrinseca sqrt si tratta di uno speciale algoritmo per il calcolo della radice quadrata di un numero, che è sempre più veloce di aumentare il numero a 0 5 alimentazione Quando l'opzione esiste uso sqrt x piuttosto che x 0 5 Nella mia esperienza sqrt sqrt x è più veloce di x 0 25.While siamo in tema di velocità, dovremmo rivedere la velocità relativa di altre operazioni di aggiungere e sottrarre sono sempre il più veloce Moltiplica arriva secondo Divide è più lento di moltiplicare, ma significativamente più veloce di sqrt Se avete intenzione di dividere da una variabile x spesso più di 2 o 3 volte, è una buona idea per definire un'altra variabile dire rx con l'equazione RX 1 x, poi moltiplicare per rx dove si sarebbe diviso per programma di esempio xA utilizzando intrinseca Functions. Study campione programma di trig f per gli esempi di funzioni intrinseche, e come un inizio utile per il vostro ultimo compito per casa. Commenta Questions. Test la vostra conoscenza di questo materiale con qualche recensione questions. Up un livello Home. Posted il 10 maggio, 2016.fortran 90 spostando average. Before si compra Zyprexa Zydis, si deve informare il medico se si è affetti da malattie del fegato, malattie cardiache, diabete, problemi intestinali, glaucoma narrowangle, o un ingrossamento della prostata si dovrebbe anche lui informarla se avete una storia di pressione bassa o alta, bassa conta leucocitaria, hightriglycerides o colesterolo, infarto, ictus o insufficienza cardiaca, della mammella cancro, convulsioni o epilessia come Zyprexa Zydis ti fa girare la testa, youshould non guidare un veicolo o fare qualsiasi attività che richiede completa attenzione Il farmaco può portare a sintomi di astinenza, problemi di alimentazione, problemi respiratori, tremori, rigidità muscolare o zoppicare, e pignoleria in un nascituro, e di conseguenza, non è consigliabile per gravidanza women. New Trading sistemi e metodi di Perry J Kaufman Ebook Fortran 90 in movimento average. NOTE questa scheda è la sintesi non può coprire tutte le possibili informazioni Se avete domande su questo la medicina, si rivolga al medico, al farmacista, o il fornitore di assistenza sanitaria Fortran 90 commovente average. Manufactured da un MHRA UK approvato Manufacturer. Fortran Generico 90 media mobile - Leggi more. Description Fortran 90 in movimento average. If si dimentica una dose, prendere la compressa non appena è possibile, se è quasi tempo per la dose successiva, prendere solo una dose non assumere due o più doses. Withdrawal da 10 mg corpo dolori Zyprexa e ittero nome generico per Zyprexa Zydis fumo schiacciato a buon mercato con olanzapina Zydis ZYPREXA dosi iv ritiro olanzapina. Adults sono dati Zyprexa Zydis 5mg-10mg una volta al giorno, mentre gli adolescenti sono dati Zyprexa Zydis 2 5mg-5mg una volta al giorno al fine di trattare il disturbo bipolare, gli adulti sono date Zyprexa Zydis 5mg-15 mg una volta al giorno, non superiore a 20 mg I dosaggi può essere regolata a seconda dell'età del paziente s, condizioni di salute, e la risposta al trattamento, mentre l'assunzione della compressa, metterlo sulla lingua in modo che possa sciogliere nel giro di pochi secondi dopo di che, si può easilyswallow con o senza water. Product di Regno Unito Spedito da United Kingdomfortran 90 muovendo average. fortran 90 accesso dalla propria area in movimento è stato temporaneamente limitato per reasons. Generics di sicurezza sono meno costosi perché i produttori di generici don t devono investire grosse somme di denaro per inventare un farmaco quando il nome del marchio patentexpires, le aziende generiche in grado di produrre una copia del farmaco di marca e venderlo al sostanziale discounts. Watch Fortran 90 in movimento average. Overdosage Se si pensa di aver preso troppo di questo medicamento contatta un centro antiveleni o di pronto soccorso NOTA il farmaco isonly per non condividere questo farmaco con gli altri Fortran 90 media mobile make money. Manufactured da un MHRA UK approvato Generico Manufacturerfortran 90 spostando nota average. Please che il paese, il produttore e paese o spedizione può variare a seconda della disponibilità Tutti i marchi e marchi registrati arethe proprietà dei rispettivi owners. Do non prende il farmaco con uno qualsiasi dei seguenti farmaci antibiotici - certain come grepafloxacina e sparfloxacin clorpromazina phenothiazineslike - certain, mesoridazina, tioridazina - cisapride - clozapine - droperidol - halofantrine - levomethadyl - pimozide questo medicina mayalso interagire con i seguenti farmaci - carbamazepine - charcoal - fluvoxamine - levodopa e altri farmaci per il Parkinson s-malattia farmaci per il diabete - medicines per - medicines alta pressione sanguigna per la depressione mentale, ansia, altri disturbi dell'umore, o problemi-omeprazolo letto - rifampicina - ritonavir - Tabacco da cigarettes. The uniche differenze tra farmaci generici e le loro controparti di marca sono i farmaci generici sono meno costosi e possono sembrare forma o colore leggermente diverso, come le leggi sui marchi impediscono un generico da guardare esattamente come il farmaco di marca FORTRAN 90 media mobile make contenuti medici money. All è fornita da una società terza che è indipendente da questo sito, in quanto tale, questo sito non può garantire l'affidabilità, la precisione e l'efficacia o medico delle informazioni di fornire In ogni caso, si dovrebbe cercare il consiglio di un professionista sanitario di pertinenza todrug, il trattamento e la o consigli condizione medica nota che non tutti i prodotti sono spediti dal nostro contratto Farmacia canadese Questo sito web dispensari contractswith tutto il mondo che la spedizione dei prodotti ai nostri clienti Alcune delle giurisdizioni includono ma non sono limitati a Regno Unito, Europa, Turchia, India, Singapore, Canada, Vanuatu, Mauritius e USA gli elementi all'interno del vostro ordine possono essere spediti da uno qualsiasi di questi jurisdictionsdepending sulla disponibilità e costo dei prodotti al momento di effettuare l'ordine i prodotti sono provenienti da questi countires così asothers Tutti i marchi ei marchi registrati sono di proprietà delle rispettive funzioni owners. Intrinsic in Fortran 90.There è un gran numero di funzioni intrinseche e cinque subroutine intrinseche in Fortran 90 i trattare le routine numeriche e matematiche molto breve, in quanto non sono modificate da Fortran 77 e quindi dovrebbe essere ben known. This sezione si basa sulla sezione 13 della norma ISO 1991, che contiene un trattamento più formale seguiamo la disposizione delle diverse funzioni e subroutine nello standard , ma spiegare direttamente nella lista per una trattazione più dettagliata si fa riferimento a Metcalf e Reid 1990 1993.When un parametro di seguito è opzionale ma è dato in caratteri minuscoli Quando una lista di argomenti contiene diversi argomenti la funzione può essere richiamata sia da posizione legato argomenti o da una parola chiave parola chiave deve essere utilizzato se qualche argomento precedente non è inclusa le parole chiave sono normalmente i nomi che vengono dati below. We non hanno sempre dato tutti i limiti naturali per le variabili, per esempio, che il rango non è consentito di essere negative. The PRESENTE funzione a ritorna se l'argomento a è nella lista di chiamata, in un altro caso l'uso è illustrato nel programma di esempio nel capitolo 8 del text. The principale seguente sono disponibili da Fortran 77 ABS, AIMAG, AINT, ANINT, CMPLX, Conjg, DBLE, DIM, DPROD, INT, MAX, MIN, MOD, NINT, reali e oltre SIGN. In, soffitto, pavimento e MODULO sono stati aggiunti al Fortran 90 solo l'ultimo è difficile da spiegare, che è più facilmente fatto con gli esempi da ISO 1991 le seguenti funzioni da Fortran 77 possono utilizzare una sorta parametri come in AINT a, specie cioè AINT, ANINT, CMPLX, INT, NINT e REAL. A fatto storico è che le funzioni numeriche in Fortran 66 doveva avere specifici nomi diversi in diverse precisioni, e questi nomi espliciti sono ancora gli unici che possono essere utilizzati quando un nome di funzione viene passato come una tabella completa argument. A di tutte le funzioni numeriche seguono quei nomi che sono indicate con una stella non è consentito per essere utilizzati come argomenti alcune funzioni, come INT e IFIX hanno due nomi specifici, alcuni possono essere utilizzati D'altra parte, alcune funzioni non hanno alcun nome specifico seguito io uso C per i valori complessi a virgola mobile, D per valori in virgola mobile a doppia precisione, che per gli interi, e R per valori in virgola mobile a singola precisione di troncamento è verso lo zero, INT -3 7 diventa -3 ma arrotondamento è corretto, NINT -3 7 diventa -4 Le nuove funzioni e FLOOR SOFFITTO troncare verso meno e più infinito, la funzione respectively. The CMPLX può avere uno o due argomenti, se due argomenti sono presenti questi devono essere dello stesso tipo, ma non complex. The funzione MOD X, Y calcola X - INT XY Y. The segno di trasferimento funzione sEGNO X, Y prende il segno del secondo argomento e lo mette sul primo argomento, ABS X se Y 0 e - ABS X se Y differenza 0.Positive DIM è una funzione non ho mai usato, ma DIM X, Y dà XY se questo è positivo e zero nella altro DPROD prodotto case. Inner invece è una funzione molto utile che dà il prodotto di due numeri in singola precisione come numero di precisione doppia è sia veloce e accurate. the due funzioni MAX e MIN sono unici in quanto essi possono avere un numero arbitrario di argomenti, ma almeno due Gli argomenti devono essere dello stesso tipo, ma non sono autorizzati ad essere di tipo COMPLEX. Same come in Fortran 77 Tutti trigonometriche funzioni di lavoro in radianti di seguito sono disponibili ACOS, ASIN, ATAN, ATAN2, COS, COSH, EXP, LOG, LOG10, SIN, SINH, SQRT, TAN e TANH. A fatto storico è che le funzioni matematiche in Fortran 66 doveva avere specifiche diverse nomi in diverse precisioni, e questi nomi espliciti sono ancora gli unici che possono essere utilizzati quando un nome di funzione viene passato come una tabella completa argument. A di tutte le funzioni matematiche seguire Qui di seguito io uso C per i valori complessi a virgola mobile, D per il galleggiamento valori in punti in doppia precisione, che per gli interi, e R per valori in virgola mobile a singola precisione lo scopo della maggior parte di queste funzioni è evidente notare che essi sono tutti definiti solo per i numeri in virgola mobile, e non per gli interi È possibile, pertanto, non calcolare il radice quadrata di 4 come SQRT 4, ma invece è possibile utilizzare NINT SQRT rEAL 4 si prega di notare, inoltre, che tutte le funzioni complesse restituiscono il principale value. The radice quadrata dà un risultato reale per una vera e propria discussione in precisione singola o doppia, e un risultato complesso per un argomento complesso Così SQRT -1 0 dà un messaggio di errore di solito già in fase di compilazione, mentre è possibile ottenere la radice quadrata complessa utilizzando le seguenti istruzioni l'argomento per le solite logaritmi deve essere positivo, mentre l'argomento per CLOG deve essere diverso da zero. The modulo per l'argomento di ASIN e ACOS deve essere al massimo 1 il risultato sarà entro 2-pi, pi greco 2 e 0, pi, la funzione respectively. The ATAN restituirà un valore in-pi 2, Pi 2. la funzione ATAN2 Y, x arctan y, x restituirà un valore in-pi, PI Se Y è positivo il risultato sarà positivo se Y è pari a zero il risultato sarà pari a zero se x è positivo, e PI Se x è negativo se Y è negativo il risultato sarà negativo Se X è zero, il risultato sarà più o meno pi 2 sia X e Y non possono essere simultaneamente zero lo scopo della funzione è quella di evitare la divisione per zero. A limitazione naturale per le funzioni matematiche è la precisione limitato e la gamma, il che significa che, per esempio EXP può causare underflow o overflow valori piuttosto comuni dell'argomento le funzioni trigonometriche avranno molto bassa precisione per grandi argomenti Queste limitazioni sono a carico di attuazione, e dovrebbe essere data nella vendor s manual. The seguenti funzioni eseguono operazioni da e per stringhe di caratteri si prega di notare che achar funziona con il set di caratteri ASCII standard, mentre CHAR lavora con la rappresentazione del computer che si sta utilizzando la routine di cui sopra confrontare due stringhe utilizzando l'ordinamento in base a ASCII Se una stringa è più corta dell'altra, sbozzati vengono aggiunti alla fine della breve stringa Se una stringa contiene un carattere di fuori del set di caratteri ASCII, il risultato è attuazione-dependent. LEN STRING restituisce la lunghezza di una stringa di caratteri non deve essere assegnato un valore alla variabile STRING. The prima restituisce il tipo di argomento attuale, che può essere di tipo intero, reale, complesso, logico o CARATTERE l'argomento X non deve essere assegnato alcun valore il secondo restituisce un tipo intero con il numero richiesto di cifre, e la terza restituisce il tipo per i numeri in virgola mobile con precisione numerica almeno cifre P e la gamma esponente un decimale tra - R e R i parametri P e R devono essere interi scalari almeno uno di P e R deve essere frutto di given. The SELECTEDINTKIND è un numero intero da zero e verso l'alto, se il tipo desiderato non è disponibile si ottiene -1 Se diversi tipi implementati soddisfano la condizione, viene utilizzato quello con la gamma di almeno decimale Se ci sono ancora diversi tipi o tipi che soddisfano la condizione, quello con il numero più piccolo tipo saranno used. The risultato SELECTEDREALKIND è un numero intero da zero e verso l'alto se il tipo desiderato non è disponibile, allora viene restituito -1 se la precisione non è disponibile , -2 se la gamma esponente non è disponibile e -3 se nessuno dei requisiti sono disponibili Se diversi tipi implementati soddisfano la condizione, viene restituito quello con meno precisione decimale, e se ci sono molti di loro, quello con il numero minimo tipo è returned. Examples sono indicati nel capitolo 2 dei principali esempi di testo di tipo in pochi diverse implementazioni NAG e Cray sono riportate nell'appendice 6.LOGICAL L, converte tipo tra i diversi tipi di variabili logiche variabili logiche possono essere implementati in vari modi, ad esempio con una rappresentazione fisica che occupa un bit non raccomandato, un byte, una parola o forse anche una parola doppia Questa differenza è importante se COMUNE e l'equivalenza con le variabili logiche sono state abusato in un programma nel modo tradizionale di Fortran 66 programming.8 funzioni richiesta numerica functions. These lavorare con un certo modello di interi e in virgola mobile aritmetica, vedi ISO 1991 sezione 13 7 1 le funzioni di tornare proprietà dei numeri dello stesso tipo come la variabile X che può essere reale e in alcuni casi, le funzioni che restituiscono interi proprietà della attuale argomento X sono disponibili nella sezione 12 di seguito, in virgola mobile manipolazione functions. BITSIZE mi restituisce il numero di bit a seconda del modello di rappresentanza bit nella norma ISO 1991, la sezione 13 5 7 normalmente si ottiene il numero di bit in un modello word. The intero per la rappresentazione bit nel standard ISO 1991, la sezione 13 5 7 è used. TRANSFER SOURCE, STAMPO dimensione specifica che la rappresentazione fisica della prima sorgente argomento deve essere trattato come se avesse tipo e parametri come secondo STAMPO argomento, ma senza convertirlo lo scopo è quello di dare la possibilità di spostare una quantità di un certo tipo con una routine che non ha esattamente che i dati type.12 manipolazione virgola mobile functions. These funzioni operano in un certo modello di numeri interi e in virgola mobile, vedere la norma ISO 1991, la sezione 13 7 1 le funzioni restituiscono numeri relativi alla variabile reale X del tipo funzioni reali che restituiscono le proprietà per i numeri dello stesso tipo come la variabile X sono sotto la sezione 8 numerica richiesta functions. DOTPRODUCT VECTORA, VECTORB fa un prodotto scalare di due vettori, che devono avere lo stesso stesso numero di lunghezza elements. Please nota che se VECTORA è di tipo complesso il risultato è SOMMA Conjg VECTORA VECTORB. MATMUL matriceA, matriceB rende il prodotto di matrice di due matrici, che deve essere coerente, cioè avere le dimensioni come M, K e K, N usate nel capitolo 11 delle principali text.14 Array functions. ALL MASK, ritorna dim una logica valore che indica se tutti i rapporti in maschera sono lungo solo la dimensione desiderata se il secondo argomento è MASCHERA given. ANY, restituisce dim un valore logico che indica se qualche relazione in maschera è lungo solo la dimensione desiderata se il secondo argomento è given. COUNT mASK, dim restituisce un valore numerico che rappresenta il numero di rapporti in maschera che si trovano lungo solo la dimensione desiderata se il secondo argomento è ARRAY given. MAXVAL, fioca, maschera restituisce il valore più grande nella matrice gamma di quelli che obbediscono alla relazione in la terza maschera argomento se quella è dato, lungo solo la dimensione desiderata se il secondo argomento è dIM given. MINVAL ARRAY, fioca, maschera restituisce il valore più piccolo nella matrice gamma di quelli che obbediscono alla relazione nella terza maschera argomento se tale uno è data, solo lungo la dimensione desiderata se il secondo dIM argomento è given. PRODUCT ARRAY, dim, maschera restituisce il prodotto di tutti gli elementi della matrice matrice di quelli che obbediscono alla relazione del terzo mASK argomento se quella è dato , lungo solo la dimensione desiderata se il secondo dIM argomento è given. SUM ARRAY, dim, maschera restituisce la somma di tutti gli elementi della matrice matrice di quelli che obbediscono alla relazione del terzo mASK argomento se quella è data, solo lungo la dimensione desiderata se il secondo dIM argomento è dato un esempio è dato in appendice 3, punto 10.ALLOCATED ARRAY è una funzione logica che indica se l'array è allocated. LBOUND ARRAY, dim è una funzione che restituisce il limite inferiore per la dimensione array se DIM la dimensione non è dato come argomento, si ottiene un vettore intero, se DIM è incluso, si ottiene il valore intero con esattamente tale limite dimensione inferiore, per il quale si asked. SHAPE SOURCE è una funzione che restituisce la forma di una fonte array come un intero vector. SIZE ARRAY, dim è una funzione che restituisce il numero di elementi di un array array se dIM non è dato, e il numero di elementi nella dimensione rilevante se dIM è included. UBOUND ARRAY, dim è una funzione simile a LBOUND che restituisce la parte superiore dimensionale limits. MERGE TSource, FSOURCE, la maschera è una funzione che unisce due array dà gli elementi in TSource se la condizione in maschera è e FSOURCE se la condizione in maschera è i due campi TSource e FSOURCE devono essere dello stesso tipo e la stessa forma il risultato è anche di questo tipo e questo forma anche MASK deve avere lo stesso shape. I qui dare un esempio piuttosto completo dell'uso di MERGE che utilizza anche RESHAPE dalla sezione successiva al fine di costruire prova adeguato matrices. Note che le due subroutine WRITEARRAY e WRITELARRAY sono routine di test per scrivere matrici che nel primo caso sono di tipo REAL, nel secondo caso di un tipo logico il seguente output si ottiene PACCHETTO ARRAY, MASCHERA , vettore confezioni una matrice per un vettore con il controllo di mascherare la forma della maschera di matrice logico deve essere d'accordo con quello per array o maschera deve essere uno scalare Se vettore è incluso, deve essere un array di rango 1 IEA vettore con almeno tanti elementi come quelli che sono vere in MASK e hanno lo stesso tipo ARRAY Se MASK è uno scalare con il valore poi vECTOR invece deve avere lo stesso numero di elementi ARRAY. The risultato è un vettore con altrettanti elementi come quelli in ARRAY che obbediscono le condizioni se VECTOR non è incluso ossia tutti gli elementi se MASK è uno scalare con valore Nell'altro caso il numero di elementi del risultato sarà ben in VECTOR i valori saranno quelli approvati, ossia i valori che soddisfano la condizione, e sarà nell'ordine Fortran ordinaria Se VECTOR è incluso e il numero dei suoi elementi superi il numero di valori riconosciuti, i valori mancanti richiesti per il risultato sono tratti dalle posizioni corrispondenti in VECTOR. The seguente esempio si basa sulla modifica di quella per la FUSIONE ma do ora solo la fonte risultati SPREAD, DIM, nCopies restituisce un array dello stesso tipo come fonte argomento con il grado aumentato di un I parametri DIM e nCopies sono intero Se nCopies è negativo il valore zero viene usato invece se la sorgente è uno scalare, poi diffuso diventa un vettore con elementi nCopies che hanno tutti lo stesso valore come fonte parametro DIM indica che l'indice deve essere esteso deve essere compresa tra 1 e 1 rango di origine se Source è uno scalare poi DIM deve essere uno il parametro nCopies è il numero di elementi in nuove dimensioni aggiuntive discussione è dato nella soluzione di esercitare 11 1.UNPACK VECTOR, MASCHERA, ARRAY disperde un vettore ad un array sotto il controllo di mascherare la forma della maschera di matrice logico deve essere d'accordo con quello per ARRAY il VECTOR matrice deve avere il rango 1, cioè si tratta di un vettore con almeno altrettanti elementi come quelli che sono vere in maschera e ha anche a avere lo stesso tipo ARRAY Se ARRAY viene dato come uno scalare, allora è considerato un array con la stessa forma MASK e gli stessi elementi scalari everywhere. The risultato sarà un array con la stessa forma MASK e lo stesso tipo come vettore i valori saranno quelli da VETTORE che sono accettati cioè quelli che soddisfano la condizione in maschera, presa nel fine Fortran ordinaria, mentre nelle rimanenti posizioni in ordine i vecchi valori sono kept. RESHAPE SOURCE, forma, pad, costruisce un ordine array con una forma forma specifica a partire dagli elementi in una data sorgente array se PAD non è inclusa quindi la dimensione della sorgente deve essere almeno di forma del prodotto Se PAD è incluso deve avere lo stesso tipo SOURCE se l'ordine è incluso, deve essere un array intero con la stessa forma SHAPE ei valori deve essere una permutazione di 1,2,3 N, dove N è il numero di elementi in SHAPE deve essere inferiore o uguale a 7.The risultato ha ovviamente una forma di forma e gli elementi sono quelli in SOURCE possibilmente integrato con PAD le diverse dimensioni sono state permutato alla assegnazione degli elementi se l'ordine era inclusa, ma senza influenzare la forma dei result. A alcuni semplici esempi sono dati nel precedente e la sezione successiva e anche in appendice 3, punto 9 un esempio più complicato, illustrando anche gli argomenti opzionali, segue l'output del programma di cui sopra è come funzioni di spostamento follows. The restituiscono la forma di un array invariato, ma mossa gli elementi sono piuttosto difficili da spiegare quindi vi consiglio di studiare anche il cambiamento circolare ISO 1991.CSHIFT ARRAY, SHIFT, dim esegue standard con posizioni spostamento a sinistra se SHIFT è positivo ea destra se è negativo Se ARRAY è un vector lo spostamento viene fatto in modo naturale, se è un array di rango superiore allora il cambio è in tutte le sezioni lungo il DIM dimensione Se DIM è mancante viene considerato 1, in altri casi deve essere numero intero scalare compreso tra 1 e n dove n è uguale al rango di ARRAY il SHIFT argomento è un numero intero scalare o un array di interi di rango n-1 e la stessa forma del ARRAY tranne lungo la DIM dimensione che viene rimosso a causa del rango inferiore diverse sezioni possono quindi essere spostati in varie direzioni e con i vari numeri di positions. EOSHIFT ARRAY, SHIFT, confine, effettua dim spostano a sinistra se SHIFT è positivo ea destra se è negativa, invece degli elementi spostato fuori nuovi elementi sono preso da Boundary Se ARRAY è un vettore lo spostamento è stato fatto in modo naturale, se si tratta di un array di un rango più elevato, lo spostamento su tutte le sezioni è lungo il DIM dimensione Se DIM è mancante, si ritiene di essere 1, in altri casi deve avere un valore intero scalare tra 1 e n dove n è uguale al rango di ARRAY il SHIFT argomento è un numero intero scalare se ARRAY ha rango 1, nell'altro caso può essere un numero intero scalare o un array intero di rango n-1 e con la stessa forma della matrice ARRAY tranne lungo la DIM dimensione che viene rimosso a causa della bassa rank. The corrispondente applica al confine che deve avere lo stesso tipo come ARRAY Se il parametro boundary manca avete la scelta di valori zero, o essere vuoto utilizzato, a seconda del tipo di dati differenti sezioni possono quindi essere spostati in varie direzioni e con vari numeri di posizioni Un semplice esempio di queste due funzioni per il caso vettoriale segue, sia il programma e la uscita un semplice esempio di questi due funzioni nel caso di matrice segue ho qui utilizzato RESHAPE al fine di creare una matrice adatta per iniziare a lavorare con il programma non è qui riprodotto, solo le istruzioni principali TRANSPOSE MATRIX traspone una matrice, che è un array di rango 2 sostituisce le righe e le colonne nella matrice matrix. MAXLOC, maschera restituisce la posizione del più grande elemento dell'array array se mASK è incluso solo per coloro che soddisfano le condizioni in maschera il risultato è un vettore intero e ' utilizzato nella soluzione di esercizio 11 1.MINLOC ARRAY, maschera restituisce la posizione del più piccolo elemento dell'array array se mASK è incluso solo per coloro che soddisfano le condizioni in maschera il risultato è un numero intero vector. ASSOCIATED POINTER, bersaglio è logico funzione che indica se il puntatore puntatore è associato con alcuni bersaglio, e se un TARGET specifica è inclusa indica se è associato esattamente che porta Se entrambe pOINTER e TARGET sono puntatori, il risultato è solo se entrambi sono associati con la stessa destinazione rimando il lettore al capitolo 12 del testo principale, Pointers. A subroutine che restituisce la data, l'ora e il fuso orario almeno un argomento deve essere given. DATE deve essere una variabile stringa di caratteri scalare con almeno 8 caratteri e viene assegnato il CCYYMMDD valore secolo, anno, mese e giorno Tutti sono dato numerico, con spazi vuoti se il sistema non include l'date. TIME deve anche essere una variabile stringa di caratteri scalare con almeno 10 caratteri e viene assegnato un valore per il tempo in ore, minuti, secondi e millesimi di secondo Tutti sono dati numericamente con spazi vuoti se il sistema non include un clock. ZONE deve essere una variabile stringa di caratteri scalare con almeno 5 caratteri e viene assegnato il valore di hhmm per segno, il tempo in ore e minuti per la differenza di tempo locale con UTC che in precedenza era chiamata Greenwich Mean Time Tutti sono dati numericamente, con spazi vuoti se il sistema non include un orologio in Svezia abbiamo quindi otteniamo 0100 in inverno e 0200 in estate, a Novosibirsk otteniamo 0700.Le valori delle variabili è invece un vettore di interi con almeno 8 elementi, dà il modo più semplice di utilizzare i risultati DATEANDTIME ai calcoli in un programma Se il sistema non include la data o il tempo si ottiene il valore 0 - Enorme che è il numero intero più piccolo del modello, come uscita il vettore comprenderà i seguenti elementi anno, mese, giorno, differenza di tempo in minuti ore, minuti, secondi e millesimi di secondo subroutine che restituisce l'ora di sistema almeno un argomento deve essere data COUNT is a scalar integer which is increased by one for each cycle up to COUNTMAX where it starts once again If there is no system clock then - HUGE 0 is returned. COUNTRATE is a scalar integer that gives the number of cycles per second If there is no system clock the value zero is returned. COUNTMAX is a scalar integer which gives the maximum value that COUNT can reach If there is no system clock, zero is returned instead. A subroutine which copies the sequence of bits in position FROMPOS and has the length LEN to target TO starting in position TOPOS The remaining bits are not changed All quantities have to be integers and all except TO have to have INTENT IN while TO is supposed to have INTENT INOUT and be of the same kind type as FROM The same variable can be both FROM and TO Some natural restrictions apply to the values of LEN, FROMPOS and TOPOS and you also have to consider the value of BITSIZE. A sequence of pseudo random numbers can be generated from a starting value which is stored as an integer vector The subroutines offer a portable interface towards an implementation dependent random number sequence This subroutine returns in the floating-point number variable HARVEST one or several if HARVEST is an array random numbers between zero and 1 This subroutine resets, or gives information about, the random number generator No arguments have to be provided The output variable SIZE must be a scalar integer and gives the number of integers N the processor uses for the starting value The input variable PUT is an integer vector which puts the starting numbers provided by the user into the random number generator The output variable GET also an integer vector reads the present starting value Example A simple example on the use of these functions is now available.

Comments